How I became a Software Engineer/Programmer
I’m Nana, just turned 27 living in Accra, Ghana, I’m a Software Developer trying to hack things one way or the other. I didn’t write code till I was 22. I used to spend my free time with my friends in a very small Chinese pizza shop in the very nice beach city of Dalian, China (Y’all should find the time and visit the place, its unbelievable). Oh and my writing skills have never been a thing, pardon my mistakes and poor writing skills, I suck at telling stories. I actually intend to get better by writing more.
The Genesis
It all began in 2013 after a series of mistakes and confusion found me back home in Ghana after spending 3 years studying Medicine in China. It was tough but then my elder brother who is also a Software Engineer had then heard about an HBO show “Silicon Valley”, he asked that I find the time and watch it mainly for the comedy. So I started watching because it was the only thing I had to do. Then came Richard Hendricks, weirdly smart, mostly awkward and to top it all never understood many of these cool people jokes. Then something struck me, hey ain’t you just like this dude? Smart, weird and awkward, say all the wrong things at the wrong time. After a few episodes man did I enjoy the show, I went to my elder brother to ask about coding. Joe (elder brother) also didn’t hesitate, opened his command prompt and wrote some weird stuff that changed something in his file system and BOOM!!! a decision was made. Now comes the hard part, convincing the chief (Dad) that I wasn’t going to study medicine again because I had found inner peace, LOL. The big guy was tough, had to fight him for a few months but then he gave in and gave my full support.
The hustle
I then started watching YouTube videos of Mark Zuckerberg and other guys saying coding wasn’t hard. I read several articles that recommended Codecademy, so I started with their JavaScript course and it was okay but I didn’t like it so much only because I like watching how stuff is done and doing it myself. Luckily enough, I found a YouTube ad of Treehouse that offered a 2 week trial period. I signed up and built my first webpage with HTML and CSS on their “Learn how to build a website” module. Loving what I had done I enrolled in a CS program.
On this CS program, I learned PHP the first semester, built a few projects and then I found a lot of buzz around Ruby. At this time my trial period at Treehouse had expired so I created another account with my other email and started a new 2-week trial. I then found the awesome Jason Siefer, RIP, he made me fall in love with Ruby as I was able to complete the Ruby track in like a week and then went on the Rails track, unfortunately, I wasn’t able to complete the track before the trial expired. So back in school, we did Java and C++ for more advanced CS modules which were cool but I still loved Ruby more because I hated Java for so many moving part and worst of all the syntax was just so much for me. Out of school, my free time went into trying out different ways of building things and clones of popular apps from online articles and YouTube videos. Mackenzie Child’s channel helped me explore Rails further by building 12 apps in 12 weeks challenge.
In school, I realized that if I was going to make it as a Software Engineer I had to put in a lot of effort so I did a lot of staying in and writing code and building more web apps. I enjoyed not going for many of my classes because, to be honest, some of my lecturers didn’t really show that they understood the concepts. I mean I spent most of my time and data watching MIT OpenCourseWare, Havard’s CS50 and I could tell the difference, LOL. So I went to ask my elder brother about a school is good if I had to do everything by myself. He said even at Carnegie Mellon where he studied, you had to do most by yourself. So I rushed through school making sure my grades were satisfying the Chief while making sure I was learning to meet industry standards. I ended up being the go-to guy for people when they needed help on their assignments and projects. This probably was the best way I learned so many things. Because mostly some problems required extra googling and stackoverflow’ing. Because you don’t learn how to code at school.
You learn how to code by writing programs in it. Most companies don’t care if you have a nice paper saying that you studied programming at college: people care that you can show that your coding skills are good and that you love to code. Lydia Hallie
Mistakes
Although I enjoyed coding through the past 5 years, along with the lines of studying and mastering my craft I made a few mistakes which turned out to hinder my progress. The most crucial of these mistakes was never getting an internship. You never know how good you really are when you’re working on your own and creating simple web apps. It is only when you work with people with different skill sets that you really learn and enjoy the trade of coding and programming. If I were to go back again I would probably take an internship every school holiday or vacation. Not only does it help you learn by giving you industry experience you also get to meet industry pros which give wonderful advice and show you a few tricks.
Challenges
Well, challenges were not so much, only huge challenge was convincing my parents especially my Mom who’s been a teacher for all my life that there’s a decent career in software development and engineering. I mean don’t get me wrong, over here, growing up, people don’t really want their kids to study computing. It’s even more serious when your grades are good, its either Law, Medicine, Accounting or one of these “cool and job safe” professions. So she would always call to ask if that was what I really wanted and what the career was all about. There was a time I was up at dawn writing code and watching an online course she came to sit with me for about an hour asking questions about what I was doing, LOL. There was a time I told my friend I had switched career paths from Medicine to Computing, he asked: “What is wrong with you?”. Hehe. In all, the folks are happy now. Another major major challenge is whether I have at least 3 years of coding experience or not. Do you think I have? Please let me know in the comments.
The fun
With all the challenges and mistakes I have learned a whole lot. I have built things, I have tried to build startups which didn’t even get off with 10 users, I have participated in a hackathon with awesome people, I have worked with amazing people from all over the world, I have sucked at an interview(yes, only one, the first one). I get people contact me so many times about gigs and roles. The hardest part about what I do is explaining to my Mom why I am not in the office on a workday. I am currently completing a contract as a Frontend Developer at a startup in Accra. Every day I am taking online courses and reading engineering books and articles and I have some time to take care of myself. I can also help more people learn how to code by sitting behind my ThinkPad and responding to Twitter messages and emails.
Conclusion
In the end, I hope to inspire some people to also get involved in Software development and Tech as a whole, and that it’s really as it has been portrayed to be. Trust me, it is very rewarding, sometimes I occasionally need to remind my 64-year-old Mom that I am not at work but I am working because yeah, my work allows me to work from anywhere at any time. And hell yeah, programming and coding aren’t only for the smart kids. This has been a very good experience for me writing this, it took a little over 30 mins to freestyle this, pardon my inexperience in writing.