Google Event Centre, MP7, Sunnyvale California during the Android Dev Summit 2019

My Journey in Tech, 3 years down the line - Part 1

I will be sharing how I started off my path as a Software Engineer, my learning experiences, achievements all the way to working for a Silicon Valley Tech giant.

One thing for sure, it will be a bit lengthy but i definitely hope to inspire someone out there.

A little background

Growing up, I was raised in a rural and remote part of Meru, Kenya. I am the first born with two sisters. I had always wanted to become an Engineer, a Mechanical Engineer. Unfortunately, I did not get the required grades in my exams to qualify to take the course.

This was not the end of the road for me, I always liked computers. My next idea was to try do a computer focused course in the University. In 2008, my mum bought me what was the first smartphone in the Kenyan market, the Huawei Ideos. The phone was powered by Android, and came with a tonne of cool apps, and the early version of the Android Playstore. I always wanted to know how the phone worked, especially the Google Maps App, which was able to show us our rural village. For a village boy, this was fascinating. At the back of my mind, I always wanted to know how this was done :)

University days and dropping out

I joined the University in May 2013 to do a Bridging course in Mathematics, as I had failed. Three months later, I was done. I wasn’t sure about my next move, I was 16 and uncertain of so many things, I went back home and stayed for a year.

In May 2014, I joined the University again to undertake a Bsc in Information Technology at JKUAT. Armed with my HP Envy 15 (core i7, 8gigs ram, 1TB hdd etc), I was ready to learn. I was an avid FIFA gamer, on joining campus, I made a few friends, some I knew of and others were new. We sort of became a gaming gang. This went of for the whole of first year, and my performance in school was negatively affected. One year later, I could not even write a single line of code!

I joined the second year, in 2015, and the same habit continued. After one of the lazy afternoon lectures, we were given a task to work on a Mobile App Project in groups of 5. At this time, I was in a confused state.

We had a few serious guys, who used to write code. I used to think of them like the Mark Zuckerburg’s of our time. I quickly made two friends, Ibrahim Muriithi and Alex Kariuki. Just a little context, Ibrahim was a web dev, and he had built a facebook like platform on php, and we had signed up and used to use! This was pretty good, especially for us at that time. He used to be the Ninja! Alex on the other hand was the expert in developing Windows Phone apps, during the era of Nokia Lumia and a few Huawei devices running on Windows.

One chat with them after the lecture, I expressed my interest to learn how to code. This was the beginning of my career :) Alex was quick to accept me to join their group under one condition, that I needed to participate in the design and the development of the app. We were building a train booking app, and I can remember the designs top of my head. With no time to waste, we went to his small room just outside school, and started working on it. I sat, like a baby waiting to be fed, staring in amazement as he fired up Visual Studio code and started writing code. We had some sketches that we had drawn on a paper, and they started coming up to life on his computer screen! The excitement was eating me up. When would I learn all these things?

I made up my mind to try and learn. I had a chat with both Alex and Ibrahim, and they advised me to learn Android. We had this simple idea, have a small team that could build apps for Android and Windows, the then common mobile platforms while Ibrahim working on the Web. On the same day, Alex dumped soo much learning resources on my laptop, and helped me download Android Studio, then in its early stages. Eclipse was the common IDE, but Google was phasing it out.

Long and sleepless nights started! I had soo much content with no idea where to start, and most of the resources were made for Eclipse. I remember spending a whole week trying to run the basic Hello World app in my phone, haha, learning how to enable developer options, figuring out the run button, the project structure. Everything looked like a total mess! Anyway, I managed to run my first app, and thats the day I could not contain my excitement! All developers have had this feeling 😆

For the next 6 months, I was learning and not sleeping mostly. I was learning soo many things, from books, e-pubs, youtube channels, basically anything I could lay my hands on. Things started making sense, slowly. As young devs, we had ideas to build the world, not mentioning the projects we had in mind. Slowly by slowly, we started building apps connected to the backend with web dashboards.

In 2016, we got our first gig, to build a solution for some company. This was through a referral from one of our friends in school. We were super excited as we started our first part time job as a team.

The three musketeers

We later quit for not getting paid, and continued learning. Around the same time, I sent my application to Muva Technologies, to join them for an internship and possibly a consultancy. I was called for an interview, and I did well. I was set to join them, for an internship agreement. I had flexible hours as I was a still a student. I met a small team of engineers who were better than me, and this challenged me greatly. I thought I was good, only to realize I wasn’t good enough. I continued to learn, and worked on a few projects, among them iCourtroom. This was the first commercial android app I had worked on, a real client app. This was exciting, I was learning a lot, and importantly, I was welcome here.

While consulting for Muva, I dropped out of school. I had hoped this gamble would pay off so I had no second thoughts. I was learning a lot on my own, more than school. I got the first huge paycheque from Muva. Now, I needed to work even harder.

ALC

We are now in 2017, and the first Andela Learning Community program was launched in Kenya. Applications were rolled out for both learners and facilitators. I had learnt to not to think I was good enough, so I applied to join as a learner. I joined the Android Track, as an intermediate learner.

ALC 2.0 email

To participate, I was required to work on a project. The challenge was to build a crypto app. I had some experience building apps, so this wasn’t much of a challenge to me. I worked on the app, documented it and submitted. The project is available on Github, on this link

Guess what! I was accepted!

After waiting, fingers crossed, I was among the successful candidates to join the first cohort of ALC 2.0 in Kenya! I was very excited about this.

I was off to learn Android with a group of noobs, and this was pretty exciting to me. We had mentors taking us through the program, and we had courses on Udemy, sponsored by Google. We had a slack group, where all learners were grouped into smaller chunks with mentors.

I was actively helping learners in the group throughout the period, as I had some experience in Android. I made friends from the program, in Kenya and Nigeria.

ALC came to an end, and we had to work on a project again. The top learners were supposed to get a paid for Android Associate Developer. This time round, we were building a Medical App. I worked on the app, documented it and submitted. The project is available on Github, on this link

I got the chance to sit for the Android Associate Developer exam, and I failed twice. Always determined and always willing to learn!

Communities and Blog

While at Muva, I started my own Personal Android Blog. I was actively writing android content, learning and always working on Github projects. I was learning soo many things, so fast.

So in 2017, I attended what was my first GDG Fest Nairobi, which was held at Strathmore University. There were many talks lined up, and I was only interested in Android focused talks. I was learning Kotlin at that time, and had written a few articles about it as well.

So, in the afternoon, I walked into An Introduction to Kotlin talk, by Frank Tamre and Seth Kigen. I sat at the back, and was enjoying the session. The session was interactive, and i was actively engaging the speakers by answering questions. At the end of the session, while talking to Seth, he asked me if I was interested in joining TwigaFoods. I said no, thinking this was a small company, and would not be able to pay me, this is a common thinking among developers. Seth was calm, and asked me to send him my Resume. I agreed to it, and we exchanged contacts as well. I had done a few things on Github, had some work experience, had a blog and had done the ALC program. My Resume was not bad, for a junior engineer in a tech company.

Less than a month later, I was invited for an interview. I went for the interview, where I met Jacob Chencha and Seth Kigen once more. It was an oral but technical interview. This was my first technical interview and I had answers for most of the technical questions, some I did not attempt. I went home disappointed knowing I had blown my chance to join them. However, I got an email later from Chencha, asking me to come and meet Caine Wanjau, the CTO at TwigaFoods. Fast forward, I got an offer to join TwigaFoods as an Android Engineer 👨‍💻

In the second part, I will talk about my experiences working and talking in tech communities, as well as some of the achievements I am proud of.

I am not where I want to be yet, and everyday is a learning experience for me!

--

--

--

Formerly @ Branch.co | @ dlight.com and @ twiga.ke

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Python Dictionary

Post-mortems gone meta

Highlighting snippets of text within a document

A Comprehensive Guide to Process Documentation

How to use Firebase Cloud Firestore with a Flutter app

Full-Stack vs Mean Stack — Which is best?

Why ‘Done’ Is Better Than ‘Perfect,’ Even For AI

it’s present, the code is pretty slow to run.

Discovery & Delivery — Understanding “why” in our backlogs

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Juma Allan

Juma Allan

Formerly @ Branch.co | @ dlight.com and @ twiga.ke

More from Medium

How to implement Voice change/Reverb/Virtual stereo in Android

cover

RecyclerView Sticky Headers based on item groupings

Get picked image actual path Android 11,12

Sign In With Google, from zero to hero