Really, don't we have acceptable engineering talent in Nigeria?
Let's hope any feathers this ruffles is taken in good faith.
I'll try not to mention companies by name, if you are in the know, then you know. And if you no know, then you no go know lailai. [Stolen from my JAMB lesson teacher].
Once, I had a brief sit down with a guy, just talking generally about the future of epayments & tech in Nigeria and at some point, the conversation touched on "the need to bring engineering talent to the tech companies in Nigeria".
Also, where I used to work, anytime someone from "the abroad" finds out that our engineering team was down the road on Oko Awo, they were always taken aback. "You mean you guys built all these stuff with Nigerians"?
This kind of conversation comes up quite often around me. Maybe it's just me?
And it always made my body hot. Arrrrrrrrrrgggghhhh!
Please note, the question is not whether there is "enough supply of engineers in Nigeria for the tech companies", it's whether "the engineers available are talented enough for the tech companies". Major difference. I think almost everyone agrees that there's not enough supply of ready engineers. This particular argument though, is for the latter.
Are the engineers available to Nigerian tech companies talented enough?
I think there is near-adequate engineering talent in Nigeria and I have two arguments to put forward.
Talent is not the same as experience
The Andela people say something along the lines of "no shortage of talent and energy, just a shortage of opportunity". I may add - and exposure
Arguably, the aggregate of our developers may not have the experience and exposure to operate at par with CS grads on the global scale, but the base requirements: ability to reason and glue logic together on a usable interface across some common platforms are in place. The talent required is there. It's the opportunities to learn and improve that are not many. And it seems only few of the companies who have some money are willing to risk the investment to turn that talent into experience. Also, maybe only few of our young people are willing to invest the time (possibly with low pay) to improve.
When I joined Interswitch (in my first coming), most of the engineers were at best a few years out of school. Many joined even before their NYSC and right under my nose, I observed a transformation from "sharp guy" to "demi-god" over just a few years. One went on to become the CIO. Another (my direct boss at the time) now leads operations in Uganda. Yet another ran the Gambian business.
So, let's not mistake talent for experience and exposure. Find the young guy on the right path, take the risk to let them evolve with your team in the real world. Companies would do well to develop a pipeline for feeding their engineering teams with interns from schools around. Build a program around that and watch magic happen. To be fair, I've seen the not-so-heavily-funded set of tech companies do this.
We are not building spaceships (yet)
High level, we are not yet building any unique technological stuff. No high-tech algorithmic advances or filesystems or anything of the sort. At the base, most of what we are doing is just CRUD + API integrations to external systems. Maybe some infrastructure optimisations. Maybe some unique user experiences. But nothing ghen ghen. At a high level (before I'm chewed raw). Therefore, at this time, why do we need geniuses who have been taking apart the Linux kernel since 9?
At a minimum we have talent enough to execute on the "fairly regular" type of services we are shipping at the moment.
If this is the case, why do companies with a bit of funding (or newly minted cash) feel the need to have their core dev team resident abroad or ship down expats? In my opinion, this is overhead that can be avoided.
At the very most, we can create opportunities for interaction with experienced global-scale developers, drive participation of our team in groups, events, forums and exchange programs. Create opportunities for mentorship. And growth.
Of course, it may look like I'm advocating mediocrity. Please note that I'm not. I'm just saying: We need X, we have X-1. Take on X-1, it develops into X, and by the time you need Y, X will grow into Y. Better still, create an environment that drives X towards Y. Confusing? I apologize.
Once again, the position being put forward is that the engineers available to our current crop of tech companies are talented enough, and mostly need experience and exposure on the job, to meet the requirements of their employers. A tech company in Nigeria can do well without the overhead of an off-shore engineering team drawing off the limited funding they have.