Jumia recently got listed in the New York stock exchange market as the pioneer tech product from Africa to do so and discussions sprung up on various social media platforms debating whether Jumia is really an African startup with its headquarters in Dubai and developer team in Portugal.
The CEO, Sacha Poignonnec of Jumia further went ahead and made a statement in his interview with CNBC that there are no developers in Africa as a valid argument for their lack of hires from the continent, a statement that annoyed many developers including me which was a close motivation for this article.
Here is a short dive into the mistakes I feel Ugandans developers are currently making, if we work on them it might give us a better chance to compete with the market.
Failure to adopt Human Centered Design (HCD) thinking before building a solution
Many of our software developers start building a solution for a client without having an in-depth conversation to gather the necessary requirements for a much suitable solution. HCD principles dictate you have a meaningful interview with your potential client/users and have a clear observation to grasp a full picture of the solution they intend to have which when you implement fraction of it will have the highest impact and feasibility.
During the design process, developers begin to assume the needs of users will always lead to unnecessary features and results plus they miss on meaningful patterns, relationships and opportunities on which they can base their design strategy.
HCD gives you the opportunity to profile a potential user of your application before you even start the engineering process i.e coding process. Imagine building an App solution for a farmer who has never used a smartphone in his life before, these are challenges you can avoid at the very beginning of your design process.
Human-centered design focuses on people’s everyday thinking, emotions, and behavior. It is a creative approach to problem-solving that involves the end-user from the very beginning and places them at the center of the digital design process.
Unwillingness to learn and adopt new technologies
Tech is the only industry where you get comfortable with one skill set(programming language) and it doesn’t take long for you to become unproductive. New languages and framework comes every year and failure to adopt the common trending ones is a recipe for disaster.
If you stop to think about the buzz and hype around Adobe Dreamweaver for designing websites in the early days and notice the trend of web development recently, you should be able to compare and come to a conclusion that adoption of latest technologies is the only way you can stay afloat in this porous industry. Bootstrap and CMS are designers darling for myriads of reasons from convenience to community support.
Aspiring new developers should have a conversation with potential mentors and people who have take long in the industry to fully understand the most marketable frameworks or language to work with and optimize their chances of effective learning.
Neglecting the soft skills when communicating with potential clients and users
Programmers or Software developers are people ‘highly known to lack the basic social life and effective communication skills’. But keep in mind, human species have dwelled on clear communication as a mean of survival for thousand of years and failure to do puts you a disadvantage compare to others.
Ugandan developers should put in the necessary effort to further their soft skills in relating with people and using the right words to express their ideas and opinions to an average Joe to understand the life of a developer.
Failure to deliver results on time
A quick chat with someone who is not involved in the tech industry and they’ll tell you how unreliable our developers are. The problem common with most freelancers and beginners is they do not know the threshold of how many projects they can work in a given month and that tends to affect output greatly. They don’t know what they can reasonably achieve, so they bite off massive projects and then toil on them for long periods before realizing it’s an impossible amount of work.
Failure to work in teams and lack of collaboration
Most giant tech companies looks for a certain quality in developers before hiring them. And one of those qualities is the ability to effectively work in teams and deliver results. Our culture celebrates working alone and in bringing in finish results to the table which isn’t the case with established companies. Perhaps, having your work/code quick enough for people to give you feedback gives you the ability to learn quickly and cheaply without having to waste time and valuable resources.