Q&A: About being a Software Engineer
When you have been engineering software for 6 years, there are quite a number of lessons that you are bound to have learnt over that period of time. Meet Tevin Otieno, a software engineer at the Safaricom Innovation Department. ADMI caught up with him to learn more about what it takes to be an excellent in your chosen field.
How did it all begin?
TO: While at a public high school in New York, I realized that one could write basic programs on graphic calculators that we used in class. I figured out that this was the easiest way to pass my exams. So instead of studying for my science classes, I spent that time learning how to code physics and chemistry formulas into the calculator. Eventually, I ended up making a business out of it, I would sell programs to my school mates even for subjects I wasn’t taking.
I then joined the computer science class and realized there are careers that exist in the programming field. Fortunately for me, that was the last cohort of computer science students that were enrolled into the program, it was scrapped that year.
Once done with high school, I joined Northeastern University and my second job was at a healthcare insurance company in Boston. I wrote this algorithm that helped the company to encrypt tax IDs (social security numbers) for testing. When testing, you need client data but you don’t want to use people’s real social security number.
Has your education background helped you in your career?
TO: My education background taught me the basics that enabled me to go out and build stuff.
What do you enjoy most about what you do?
TO: What I enjoy about engineering is the way it makes you think. You relate to computers in a different way than you relate to human beings but we are at that point in the world where that relationship is becoming too similar. You walk with your phone all day and most of your interactions and transactions happen over a bunch of wires. This involves a bunch programmers sitting somewhere writing algorithms and software and routing to make this happen. So in as much as it is just you and a screen, you are relating to human beings in a new, strange and oddly intimate way. That’s just exciting
What skills are a must-have?
TO: One, being able to learn and well learn. Two, knowing when to ask questions and when to figure out things for yourself.
How can someone become an expert in this field?
TO: Get at it. Everyone in Kenya has a side hustle and they are always looking for someone to build a website. Take up that job. For the first two weeks you will be frustrated but along the way you will learn what works. The hardest part is always starting. Once you can figure out your next step, it becomes easier to move ahead. Being good in your career is all dependent on doing it.
What are the programming languages that one should definitely know?
What people need to realize is that the language is merely a translation, a syntax, the concept already exists. Therefore, you first need to understand the basics and an idea of how to build programs. Once you know the basics, it is very easy to exploit the language.
If you want the shortest path; pick a popular language with a lot of documentation and resources available online like Python; pick a framework like React and learn how to build software and programs using them. However, don’t market yourself as a Java programmer or a Python programmer since this limits you in terms of employment and how you perceive yourself.
What do you constantly need to keep on doing to stay on top of your game?
TO: Coffee. Keep learning, keep reading. Don’t just read about computer science, read about art, read about literature, meet people, make enemies. Keep evolving. Comfort is dangerous.
How prepared is Kenya to fully exploit the software engineering industry?
TO: In terms of human resources, Kenya is prepared. Kenya has the talent and very smart people. What is missing is the opportunity for them to explore their talent. What can be done is linking people who can code with business people. In addition, we need to develop institutions where people can be linked up with jobs once they are done with school. The systems and infrastructure are letting people down. There are very few connections for people to explore.
Want to join Tevin Otieno in shaping the future of software engineering in Kenya?
Click below to find out more about ADMI's Mobile App & Game Development program and begin your journey in the software engineering industry.