Roles
Same engineer, different job to be done. Each page opens with a scenario from that role's actual week, not a puzzle, and shows the order I would work in.
None of these pages contain a skills list or a proficiency bar. A requirement is answered by the system where I met it, or it is not answered.
Why one engineer has seven role pages
Because the same six years read differently depending on what you are hiring for. A platform team wants to know about tenant isolation and migrations across many databases. A product team wants to know whether I will argue with a designer productively. A team hiring a lead wants to know how I make a call when the room disagrees. Those are genuinely different questions and one general page answers none of them well.
The work behind every page is identical. The selection, the ordering and the scenario are not.
What each page contains
A scenario from that role's actual week, not a puzzle. A background job failing quietly for eleven days on the Node page. A number that four systems disagree about on the backend page. Then the order I would work in, which is usually the part that separates candidates, because most people can eventually fix the thing and fewer people stop the bleeding without destroying the evidence first.
Then the requirements, each answered by the specific system where I met it and linked to the page that describes it. No proficiency bars, no years-per-technology table. A claim with nothing behind it is not on these pages.
Senior Node.js engineer, six years, all of it in production
A background job has been failing quietly for eleven days. It retries, so nothing alerted. Some records are duplicated and some are missing, and nobody knows which. That is the week this role is actually for.
Backend engineer, for the parts that have to be correct
Finance says the reported figure is wrong. Engineering says the query is correct. Both are right, which means the disagreement is not about the query at all, it is about which definition is the real one.
Full stack engineer who owns the feature, not a layer
A feature has been in progress for three weeks. The API is done, the interface is done, and it does not work, because the two were built against different assumptions and neither person was wrong.
Product engineer, for software people use all day
Support says the system is slow. The traces say every request is fast. Both are true, and the gap between them is where the actual product problem lives.
Platform engineer for multi-tenant SaaS
A customer opens a ticket saying they can see a record that is not theirs. Everything else stops, because that sentence is the worst one a multi-tenant system can produce.
Technical lead, for a team that needs decisions made
Two engineers disagree about an approach. Both arguments are good. The team has been circling it for two weeks and the cost of the delay now exceeds the difference between the options.
Remote engineer on East Africa Time, and why that overlap works
Timezone is usually the first thing a distributed team checks and the last thing a candidate explains properly. So here is the arithmetic, and what I actually do with the hours.
Where to start
- The closest match to most postings
- Six years of Node in production, currently as the only engineer on a multi-tenant platform.
- If the role owns decisions
- How I decide when the room disagrees, and what I do when I turn out to have been wrong.
- If the team is distributed
- Nairobi overlaps a full European working day and most of a US morning. The page shows the actual hours rather than claiming flexibility.
Common questions
- Which of these are you actually applying for?
- Senior backend and full stack, remote and permanent, with a preference for owning a system rather than a layer of one. The other pages exist because the same evidence answers those briefs too, not because I am equally suited to all seven.
- What if my stack is not Node?
- Then the framework list is not what you are buying. Six years of production Node is evidence that I can operate something under load, and the loop for an unfamiliar system is the same in any language: read the output rather than the source, reproduce before theorising, change one thing, prove it end to end. That loop is what transfers.
- Are you available now?
- Yes, and the notice period and timezone overlap are stated plainly on the contact page rather than left to a conversation. If the fit is wrong I would rather find that out in the first message than the third interview.
The condensed version of all of it is on the CV .