The Invisible Engineer
During that early period, something started happening consistently, and it has never stopped. It follows me into every application, every interview, every email, every introduction.
People didn't believe what I was doing.
Because I was young. Because I was self-taught. Because I came from a place not associated with technological innovation in the global imagination, a place the world thinks of for safaris and athletes and poverty, not for engineers building AI systems and cybersecurity platforms before they can legally drink. There was always an assumption that I didn't really understand it. That I was copying code. That I was assembling tutorials. That I was playing with surfaces while pretending to grasp depths. "That's impressive for someone your age" became a phrase I learned to hear for what it actually was, a ceiling disguised as encouragement, a pat on the head that meant stay in your lane, little genius, and don't get too comfortable with the adults.
The subtext was always: for someone your age, not for a developer. The praise was always qualified, always comparative, never absolute. No one ever just said "this is good work." They said "this is good work for someone so young." They said "this is impressive considering where you're from." They said "wow, you really taught yourself all this?" with the emphasis on taught yourself, as if self-teaching was a novelty rather than a necessity.
But internally, I wasn't learning superficially. I was building understanding from broken systems upward. Reconstructing how things worked from failure rather than instruction. That method, breaking, fixing, understanding, produces a different kind of knowledge. It's not clean. It doesn't follow a syllabus. But it's real, and it stays, and it gives you something that tutorials can't: the ability to face something broken and know, from deep experience, that you can make it whole.
The gap between what I knew and what people assumed I knew became a constant companion. I learned to live inside that gap. To build while being underestimated. To explain while being doubted. To submit code while knowing the reviewer was already suspicious before reading a single line. It's a particular kind of exhaustion that doesn't come from the work itself, but from the constant burden of proving you're allowed to be doing it at all.
And this is where I need to talk about something bigger than me. This is not just my story. It is the story of countless African tech workers, those grinding from home countries with unstable electricity and expensive data, those working remotely for foreign companies that pay them fractions of what they pay their local employees, those who have migrated abroad only to find that their passport follows them into every salary negotiation. The pattern is documented, researched, repeated across continents: African developers are paid thirty to seventy percent less than their Western counterparts for identical work. Identical. Same code. Same quality. Same deadlines. Different pay. Different respect. Different assumptions about what the work is worth depending on whose hands it comes from.
This is not a market fluctuation. It is a structured discount where geography, not skill, determines rate. Companies practice what they politely call "geo-arbitrage", a corporate euphemism for "we'll pay you less because of where you were born, and we'll frame it as a business strategy so we don't have to feel bad about it." Remote work platforms normalize this by allowing employers to set rates by region. The message embedded in the system is clear: your code is worth less if it comes from a Kenyan IP address. Your thinking is valued differently depending on which side of a border it originates from. You can be a genius and still be cheap, because cheap is all they're looking for when they see your location.
Then there is the competence tax, the extra burden of proof that African tech workers must carry into every room, every interview, every code review. It manifests as additional technical screenings that your white counterparts never face. Interviews that shift tone when video turns on and your face appears on screen. Code scrutinized more harshly than identical work from Western developers. Surprise, genuine, unguarded surprise, when the work is sophisticated. And the exhausting, repetitive pattern of being underestimated before a single line of code is seen. You don't get the benefit of the doubt. You earn it, and then you earn it again, and then you earn it a third time just to be safe, and then someone still asks if you had help.
There is also the structural isolation. Access routes to global tech ecosystems, accelerators, venture funding, senior positions, conference speaking slots, the invisible network of "people who know people" that actually runs the industry, are not merit-neutral pipelines. They rely on networks built through physical proximity. Cultural familiarity. The ability to work unpaid while building reputation in expensive cities. When you are supporting family back home or surviving in an expensive city abroad on a fraction of what your colleagues make, the advice to "just build your network" becomes not just unhelpful but actively cruel. Build it with what? Build it where? Build it while working how many hours to make rent?
I didn't have the language for all of this when I was fifteen, sixteen, seventeen. I just knew something was wrong with how I was being seen, or not seen. I knew the work was real and the recognition wasn't. I knew the code worked and the assumptions didn't. The analysis would come later. First came the living through it.