Right off the bat, the simple answer to this question is: YES, software engineering is very marketable in Kenya, and even Africa at large.
In fact, in a recent conversation with James Ndiga, Lead Technical Recruiter at Microsoft, and Grace Kinyanjui, Senior Technical Recruiter at Azenia we uncovered that there’s not enough supply to meet the current and fast-rising demand for software engineers worldwide.
This might come as a shock to many graduates who are still jobless long after graduating with a software engineering or a related degree. So where is the discrepancy? And more importantly, how can we bridge the gap and ensure we create a market that can serve this rising demand for tech talent? Read on to find out what our two guest speakers had to say about this.
How has software engineering evolved in the past 10 years?
Before we attempt to change the narrative for software developers, let’s back up and first look at how the industry has developed. It will help us to better understand what the future holds.
Here are some notable changes:
1. Increased uptake and penetration of software
Nowadays, kids and adults alike are using some form of software in their lives. For example, in Kenya we’ve moved away from completely relying on movies shops to being able to stream movies on SaaS such as Netflix.
2. Exponential growth of open-source software
The growth of the software engineering industry has been propelled by a massive shift from self-proprietary software to the use of open-source software. In turn, this has allowed people to develop software in a more collaborative manner, which has helped to fast track the development of impactful software.
3. New career opportunities
As industry players continue to innovate, new problems have given rise to new issues and career opportunities for developers. For instance, we’ve witnessed the rise of a new department known as DevOps. Basically, DevOps allows developers and operations teams to collaboarte to automate workflows, infrastructure and continuously measure application performance.
4. New tech has come up or grown really fast
In terms of new tech, we’ve embraced cloud computing and it has, in turn, catalyzed the software development market. At the same time, APIs have also come in to really change the game.
Application Programming Interfaces (API) are software intermediaries that allow two different applications to talk to each other and achieve a certain function. A good example is when you use the option “log in using Facebook” or “log in using Google” to access your various applications.
Notably, with the exponential growth of artificial intelligence (AI) and machine learning, there’s a lot more to come in the realm of software engineering.
How has software engineering contributed to digital innovation?
Software engineering has made it easier for businesses to collect and synthesize valuable data that helps them to better understand their customers. In turn, companies are now able to quickly adapt and respond to market changes. Re-engineering and automation of processes is now a norm for businesses in various sectors.
The growth of on-demand services is a good evidence of this. For example, we now have chatbots that allow businesses to provide fast real-time responses to customer queries.
Ultimately, this narrative has created an infinite loop of constant digital innovation. The more data is being collected, the more the need for software engineers to help develop software that responds to various consumer insights and business needs.
What challenges do recruiters face in attracting software engineering talent?
Ironically, despite the market being flooded with software engineering graduates, recruiters still have a hard time attracting talent needed for various projects. Some of these include:
1. Finding the right fit for the job
Software engineers have varying levels of skills and expertise. Different projects require very specific skills which may not always be common in the market.
2. Competition from other companies seeking software engineers
Experienced software developers have become one of the most highly-coveted talent sought by companies. This has led to stiff competition within the industry as companies poach from each other or strive to sweeten their terms in a bid to attract top talent.
3. Limited supply of female engineers in the market
In the wake of increased diversity and gender equality at the workplace, more and more companies have become very intentional about attracting female tech talent. That leaves recruiters with the tough task of finding female software engineers in a male-dominated talent pool.
Fortunately, there are educational institutions such as JENGA School that are also working towards bridging that gap. In addition to being a female-led tech institution, JENGA School is committed to bringing 50,000 women into Africa’s booming tech industry by 2030.
4. Increased software engineer salaries
The rising demand for tech talent has also increased the compensation that engineers are asking for. This explains the non-stop poaching of tech talent. Unfortunately, smaller companies end up having a hard time affording these high rates and talent wars.
How has Covid changed in the way companies interview techies?
For starters, working from home has changed the way interviews are done. With the rise of virtual interviews, new challenges such as internet downtimes and power outages have come up to affect the process.
Still, this has not changed the technical and non-technical skills that companies look for in candidates. Some skills that might set you apart from the rest in this day and age include:
- Good communication skills — Now more than ever, you still need to collaborate with your team and effectively communicate the progress of a project despite not being in the same physical location as your team members.
- A learning mentality — Your learning agility needs to be top-notch since a lot of things are coming up in the software world ranging from machine learning and AI to new programming languages.
- Goog time management skills — Your time management skills need to be above average now that most people work from home with little to no supervision. You need to demonstrate that you can properly plan your work as well as sync with team members while being respectful about their time.
How do companies set software engineering salaries?
If you’ve shopped around for software developer jobs, you’ve realized that the compensation offered varies from one company to another. Here are some of the things businesses consider when setting salary ranges for various positions.
1. Industry benchmark
It’s common practice for companies to research what salaries other industry players are offering to their people. They can then use that information to determine their own salaries depending on how competitive they’d like to be and what their budget is.
2. Advanced/ Special certification
As with any field, advanced software engineers or those with special certifications tend to attract higher salaries in the event a company is in need of their unique and advanced skills.
3. The significance of the role in an organization
Businesses have a vast range of reasons why they hire software developers. Typically, the higher the significance of software engineering in the organization, the higher the salaries they’ll be willing to pay. This is why we see primarily tech companies such as Microsoft being able to afford better compensation for their techies.
4. The seniority of the role
It goes without saying that senior engineers will earn more than junior engineers within the same organization. However, compensation packages in the same seniority level may vary from one company to the other due to the other factors listed above.
How can graduates gear for success in the software engineering industry?
- Tap into communities e.g. hackathons, blogs and tech talks.
- Populate your profile well enough on LinkedIn, GitHub, Stackoverflow to show a recruiter what your skillset is. Think about how organizations are looking for you and how are you presenting yourself in the market.
- Sign-up for RSS feeds for job opportunities that are relevant to you.
- Reach out to recruiters and let them know you’re actively looking for opportunities.
- Connect with more people on LinkedIn and share content that tells recruiters you’re conversant with your field.
- Be ready to get rejected for various opportunities in the beginning before your find your footing in the industry. Don’t be disheartened; keep trying!
- Don’t try to be a jack of all trades. Polish up on the stack that you’re most conversant with. Know the latest technologies within that framework.
- Practice! Practice! Practice! Keep building and adding projects to your portfolio. You can also take on some freelance work before you land that dream job.
- Do a SWOT analysis of yourself and understand what are your selling points so that you can clearly articulate them in interviews.
Some reasons for rejection in job applications
- Applying for the wrong roles without understanding how your skills compare to the job being advertised. Read and understand the job descriptions and do a SWOT analysis to find out if you might be a good fit.
- Using a one-size-fits-all application to approach all organizations you’re interested in. You are better off customizing your applications to fit at least 10 of the organizations you’re most passionate about. It’s time consuming but worth it.
- Not spending enough time going through interview material once you get past the first round. Treat every interview round with a high level of seriousness.
- Failing to seek feedback from recruiters who reject you. You can always reach out to the recruiter and ask for feedback as to why you were rejected. It will help you to sharpen your skills as you prepare for the next opportunity.
To sum it all up, we’ve established that software engineering is in fact one of the most in-demand skills in the market, with salaries soaring higher by the day. However, a lot needs to be done to bridge the supply gap and generate top-class tech talent that can serve this demand.
If you’re a software engineering graduate or a tech professional looking to accelerate your career growth, then JENGA School is just the place for you!
Apply for our Software Engineering Professional Accelerator and start your journey towards becoming a tech innovation leader within your space.