Software that holds up
in the real world,
on a real Tuesday.
Software que aguenta
o mundo real,
numa terça qualquer.
I'm a full stack developer building the systems organisations actually run on — records, workflows, and integrations with software that predates the browser. PHP, SQL Server and JavaScript, in production, every day.
Sou desenvolvedor full stack e construo os sistemas em que as organizações realmente se apoiam — registos, fluxos de trabalho e integrações com software anterior ao browser. PHP, SQL Server e JavaScript, em produção, todos os dias.
How I get from a vague request to something in production.
Como saio de um pedido vago para algo em produção.
Ask until it's actually clear
Perguntar até ficar mesmo claro
Years of interviewing people for a living taught me that the first version of a requirement is never the real one. I sit with the people doing the work before I open the editor.
Anos a entrevistar pessoas ensinaram-me que a primeira versão de um requisito nunca é a verdadeira. Sento-me com quem faz o trabalho antes de abrir o editor.
Build the smallest honest version
Construir a menor versão honesta
Ship something narrow that genuinely works, watch it meet reality, then widen it. AI-assisted tooling speeds up the typing — it doesn't replace reading the diff.
Entregar algo estreito que funcione de verdade, ver como se comporta na realidade, e só depois alargar. As ferramentas com IA aceleram a escrita — não substituem ler o diff.
Respect the boring parts
Respeitar as partes chatas
Data integrity, legacy edge cases, handovers that don't break at 8am. In systems people depend on, the unglamorous details are the whole job.
Integridade de dados, casos-limite do legado, passagens de turno que não rebentam às 8 da manhã. Em sistemas de que as pessoas dependem, os detalhes sem glamour são o trabalho todo.
What I use daily, and what I reach for.
O que uso todos os dias, e o que trago quando é preciso.
Not every tool deserves the same weight on a page. These four carry the work.
Nem toda a ferramenta merece o mesmo peso numa página. Estas quatro carregam o trabalho.
I came to code from journalism. It shows.
Cheguei ao código vindo do jornalismo. E isso nota-se.
For years my job was to understand something complicated and explain it to people who didn't have time for the complicated version. Now I do the same thing with business workflows — except the explanation ships.
Durante anos o meu trabalho foi perceber algo complicado e explicá-lo a quem não tinha tempo para a versão complicada. Hoje faço o mesmo com fluxos de negócio — só que a explicação entra em produção.
Based in Portugal, working inside a European product team and on my own projects in parallel. The visual side — motion, video, interface — comes from the same training, and it still ends up in the work.
Sediado em Portugal, a trabalhar dentro de uma equipa de produto europeia e nos meus projetos em paralelo. O lado visual — motion, vídeo, interface — vem da mesma formação, e continua a aparecer no trabalho.
Domain over tooling
Domínio acima da ferramenta
Whatever the sector, the software rewards whoever understands the operation behind it. I spend as much time in the workflow as in the codebase.
Seja qual for o setor, o software recompensa quem percebe a operação por trás dele. Passo tanto tempo no fluxo de trabalho como no código.
Comfortable with what nobody wants
À vontade com o que ninguém quer
Legacy desktop systems, undocumented schemas, data that has to migrate without losing a single record. That's usually where I'm called in.
Sistemas desktop legados, esquemas sem documentação, dados que têm de migrar sem perder um único registo. É normalmente aí que me chamam.
Working languages
Idiomas de trabalho
Portuguese as a native speaker. Spanish at C1 — comfortable in a meeting. English at B2 — I work, read and write in it every day; for dense negotiation I prefer to have it in writing.
Português como língua materna. Espanhol em C1 — à vontade numa reunião. Inglês em B2 — trabalho, leio e escrevo nele todos os dias; para negociação densa prefiro ter tudo por escrito.
Tell me what's breaking.
Diga-me o que está a falhar.
A system that needs rescuing, an integration nobody wants to touch, or a product that has outgrown the way it was built.
Um sistema que precisa de ser salvo, uma integração em que ninguém quer tocar, ou um produto que já não cabe na forma como foi construído.