Back to the home page about/ · the long version

I was ten years old

when I tried to build my first Minecraft mod. Nothing came of it, but I was not going to stop heading that way.

LurramAdventures

I spent my afternoons playing with friends and watching videos of mods other developers had made. I thought it was the coolest thing in the world. My favourite was OresPawn, and one day I decided I would make my own.

I put my gamer tag in the name, LurramAdventures, because I could already picture watching someone play it. It was far more complex than I imagined: everything had to be configured, from the functions to the textures to the behaviour. LurramAdventures came to nothing. The direction stayed.

I changed schools for a lab

I left the school I had been at since I was five because a new one had opened nearby, with robotics and programming on the timetable. I left all my friends behind to go after it.

In the first year I put a team together, won the regional championship and was picked for the school’s official squad, the one that represented the city from then on. It was a whole year locked in the robotics lab every afternoon until we reached the state finals, at FIRST LEGO LEAGUE 2019 in Salvador. I was the programmer: a Lego robot built to complete a complex course, and a lot of code tuned in detail so it would do exactly what it had to. We did not get past that round. It was worth every hour.

A robotics team is not only about the robot. The league scores Core Values alongside performance: how the team splits the work, how it settles disagreements, how it treats the opposition. That was the first place I learned that the hard part of building something as a group is almost never the technical part.

The pandemic was the best school I ever had

I used the standstill to go deep. I spent most of that period working through programming courses, one after another, and it was one of the most productive stretches of my life. That is when I started programming for real, learning actual languages and putting them to work, building useful things on the web. And that is when I decided this was what I wanted to do for the rest of my life.

Shortly after finishing secondary school I started a Software Engineering degree, graduating in 2027. University gave me the foundation and the vocabulary; the rest I went after on my own, at the same pace as the pandemic. The courses I took along the way:

  • Front-End
  • UX/UI Design
  • PostgreSQL
  • Generative AI for Developers
  • AI and Applications with LLMs
  • ChatGPT and Prompt Engineering for Developers

In 2026, the AI & Agent Engineering certification, from OpenAI, Anthropic, and CodePath, joined that list: Applied AI Foundations, Agents and Workflows, Claude Code, and AI Fluency for Builders.

AI in the hands of someone who knows what they are doing

When AI arrived, using LLMs in development became my favourite subject. Used properly, in the hands of a developer who knows what they are doing, AI is an enormously valuable ally. That is the direction I specialised in and where I feel strongest today. I also never stop chasing new technology to put to work day to day.

Leaving side-project mode

My first contact with the industry was a year-long software QA internship at TecnoTRENDS, on a team and with Scrum. That is where I left side-project mode and learned to work on code other people depended on. It is a shift in posture you cannot learn alone at home.

Scrum came with me, and not for the ceremony. It was two things: work sliced into pieces that fit a delivery, and a problem said out loud the day it appears. It sounds small, and it is what stops me, to this day, from spending three weeks building in the wrong direction before anyone looks.

The other half of the job: automation

At JVB Advocacia I found what became the other half of my work. I started with simple things: a weekly report, a news digest, an email roundup, case updates. As I learned, I was able to build things that were increasingly complex and increasingly useful.

JVB Kanban

Out of that came JVB Kanban, a case management system that ended up taking over the routine of the entire firm. Today it carries more than 300 cases and took some 10 hours of manual work a week off the team.

I was the only developer, but I was not the one deciding what to build. I know nothing about law, so every module came out of talking to the people who would use it: I brought the proposal, the team pointed at where it would not survive the real routine, and I rebuilt it. It is the kind of thing that only works if you accept that your first idea is probably wrong.

It runs on PostgreSQL on Railway and is integrated over MCP, so the AI itself checks case progress and assigns work inside the system. It is exactly the kind of thing I like to build. When the partnership ended I already had it validated and running in production, with my former boss's endorsement for anyone who wants to confirm it.

Today I work for myself

I build bespoke software. Five projects delivered so far, from law firms to a travel agency, two of them systems in production that I maintain and keep evolving. The larger one is a WhatsApp CRM that passes a thousand conversations a month, with the entire triage automated, so only the already-qualified lead reaches a human.

Someone who owes me nothing reading my code

Working for myself solved almost everything and created exactly one problem, one I took a while to see: it had been a long time since anyone read what I wrote. A client checks whether the flow solves their problem, and that is fair; it is not the client's job to review my choice of data structure. But code that only the author reads gets comfortable in a way that is not a good sign.

In August 2026 I started sending fixes to open source projects. Not for the resume: for the reviewer. In someone else's project the standard belongs to someone else, the case has to convince a person who has never heard of me, and the answer can be no. It was no once, on Apollo's GraphQL client, and I thought the reason was fair. I was right about the behaviour and he was right about the priority, and both things fit together.

What I learned there was the same thing the internship had taught me, without me knowing I still used it: writing as if someone else is going to open this tomorrow. A pull request to a stranger is that same discipline taken to its limit, because the stranger will not ask what you meant. They will just close it.

There is a whole page about it, with what got merged, what is still in the queue, and what got rejected.

I will never let go of design

Web and graphic design are not my focus right now, but they are something I will never stop loving. That site someone opens and reacts to before they even understand what it does. I hope this one made an impression.

I am always building new interfaces and testing layout ideas, and even when a project is entirely backend I end up pulling that care into it.

There is no such thing as free time

Any free time I have, my head starts on a new project, a new interface, what could be built. Sometimes it is purely for fun, like SUS, a web game I made in a week to play on a call with friends.

And I feel like I am only getting started

Just thinking about the technology still to come to help with development gets me excited about what is ahead.

If you read this far, you probably have something that needs building. Get in touch.

Get in touch ›