About
I am Juan Pablo Castro, a software engineer and AI product engineer working with TypeScript, Node.js, AWS and AI-enabled products. Close to eight years building software, the last few across architecture, technical leadership and hands-on development.
I work from the problem through to production: product, architecture, code and infrastructure, without drifting away from development along the way. Currently independent, and building my own products.
01 — QUORSUM
Building software, sure. But to what end?
Before choosing technology I want to know what is worth building and what value it will leave behind. Every product rests on three things: the value it brings, the cost of existing and the time it will live.
02 — HOW I THINK
Working is not enough.
A solution can work today and still be a bad decision. I care about understanding what we are building, which compromises we are accepting and what the consequences will be when the system grows, changes or reaches production.
03 — ENGINEERING
Simplicity takes work.
Simple solutions almost never show up first time. Getting to them demands understanding the system deeply: first comes what works and, with persistence, later what reads at a glance.
04 — JUDGMENT
Coding is rarely the hardest part.
The important decisions happen before the code: what to build, what not to build and which consequences we are willing to accept. Code by itself tends to be worth zero; what holds a system up is having understood why it is the way it is.
05 — RESPONSIBILITY
The work does not end at the merge.
My responsibility does not stop when the code lands. I care what happens in production and how the system holds up with real users.
06 — PEOPLE
The best ideas survive the debate.
I do not protect my ideas. I explain them, argue them and change them when a better solution shows up. I expect the same from whoever works with me.
07 — CURIOSITY
I need to know how it works underneath.
I take apart whatever I use in my head until I understand enough to build something better. That habit is what keeps judgment steady when a new tool shows up.
08 — ORIGINS
I got into this by solving other people's problems.
With some creativity and plenty of optimism. Helping whoever is next to me is still part of the job, not an extra.
09 — EXPERIENCE
Tools change. Judgment accumulates.
When producing code is cheap, the difference is in what you decide to build and which consequences you accept. Eight years leave few certainties and a good number of useful scars.
10 — DISCIPLINE
I do the work nobody looks at properly.
Tests, logs, documentation and the boring detail decide whether the system still holds six months later. Results come from accumulation.
11 — CRAFT
I look after the small things like the big ones.
Whoever cares when there is little also cares when there is a lot. The level of care does not depend on the size of the project.
12 — VENTURES
My first project was a charitable one.
Yodono: crowdfunding to pay for medical treatments, through donations and merchandising. It made clear to me that a product only exists because of the people it serves.
13 — COMMUNICATION
Risks get raised early.
A problem visible today is far cheaper than a surprise three months from now. I say the uncomfortable thing in time, with the trade-off on the table.
14 — ARCHITECTURE
Architecture is earned in the code.
I do not separate designing from building: my hands stay in the repository. And I do not over-architect, because the complexity you add today is paid by the team for years.
15 — REQUIREMENTS
I do not run requirements blindly.
When I see a risk or a better alternative, I say so with arguments. Then I execute whatever decision is made, mine or not.