DEV Community

Cover image for My Software Engineering Journey
Mathews Musukuma
Mathews Musukuma

Posted on

My Software Engineering Journey

I started my professional software engineering journey back in 2018 as a Software Developer Intern at ZPOS, a startup that is working hard to transform the way business is conducted by small-medium scale businesses in Zambia and Africa using software tools that help to run operations smoothly and easily. When I joined this small startup, the only experience I had was from teaching myself PHP and a bit of jQuery. The startup had a stack far different from what I knew, however. They used JavaScript, TypeScript, Ionic framework and CouchDB and being introduced to this stack was just something different.

I was introduced to mobile app development using TypeScript and Ionic framework and was given time and resources for me to learn the stack. I was at times tasked to develop plugins that could be used in the Ionic mobile app and that gave me a lot of challenges. I had to learn how to create a plugin that was going to be put in software that would be used by hundreds of businesses! It was quite nerve-wracking.

After working for close to six months, I got my first job offer as a full-time software developer and that was something I had always wanted to happen. I was excited that the company thought it was worth it to keep me. It truly showed that I had grown in my career as a software developer.

Along the way, I reconnected with my former college mate who is a Python engineer and he encouraged me to learn Python. This happened in September 2018 but I didn't start learning immediately. With everything going on in my life, I needed to adequately plan and set time for learning Python. Finally, in April 2019, I asked him to be my mentor and help me in my Python programming journey, which he thankfully did. He gave me the guidance I needed and told me what to learn, specifically the Django framework.

I did so and when I had a good (basic) understanding, I told him about the knowledge I gained. He then gave me a project to work on called Cataas app (Cat as a Service) which is quite an interesting REST API, you can check out their API here, and I did this project and submitted it to him for review and he told me, 'You are ready for an internship role'. He connected me to an American email marketing company called EM13 and they gave me an internship position on a part-time basis but I think I did it full-time. The commitment was so high that even though I joined in August 2019, by November I was already given a full-time position as a Python Django Engineer and that gave me the confidence to keep on learning.

Currently, I am still working as a remote Python Django Engineer at EM13 and I have seen a lot of growth in me. I love Python because of its readability and how easy it is to learn but like any other language, you have to think for it to work for you.

Programmers Journey

Conclusion
A mentor is very important in a developer's life. If you want to get better and become a great software engineer, then look for someone to mentor you, someone who is ahead of you (an experienced engineer). Learn from that person and follow what he/she tells you.

Thank you for reading this article.

Top comments (0)