My Journey to Software Development

Nurul Huda (Apon) / January 01, 2025
5 min read • 263 views

Hi, I'm Nurul. I'm currently an undergraduate student at Green University of Bangladesh, pursuing a bachelor's degree in Computer Science and Engineering, and working as a Staff Engineer.
My journey into Software Development began in January 2019 when I was a second-year student (12th grade) at Dania College. I already had some knowledge of HTML/CSS but had never coded because I was afraid of it. I was more interested in graphic design and animation, but unfortunately, my computer at the time couldn't run the programs needed for animation. Determined to do something, I decided to learn JavaScript as my first programming language.
Learning Phase
I researched different programming languages and chose JavaScript. I started learning it using various resources, and these were the most helpful:
-
W3Schools [Interactive Learning Platform]
-
Eloquent JavaScript [Book]
-
Zero to Mastery [Video Tutorial]
I studied and practiced on W3Schools while at home and printed the book to take to college for practice during class breaks. I also worked on practice projects late at night. Five months into my journey, I learned and built various real-world projects. One of my instincts was to never rebuild the same project shown in a tutorial but to use the knowledge for other interesting and useful projects. For example, a classmate and I built a website for our Science Club at Dania College. Personally, I created a full-stack mini banking system for one of my initiatives, where I set up a mini bank for kids to help them learn about banking and saving small amounts.
Landing Job
While working on the project, I came across this news post and thought about building an app where people could scan and verify their own or others' NID. I searched for the API documentation and built the app, but while working with the sandbox API, I encountered many issues in the documentation and the API itself. I contacted them via the email provided on the website to report the issues and also shared a corrected version of the documentation. After much communication, I completed the project, but when I requested production access, I realized it was only available for government organizations, not developers. They appreciated my initiative and asked for my CV for future opportunities. Initially, I declined because I was still a student and couldn't take a job. However, I shared this portfolio site. A month later, they asked me to help with load testing some APIs they provided, so I assisted with that. They liked my work and referred me to a US company as a QA Engineer, working remotely. I researched what a remote job was and figured I could replace my current home tutoring work with it. After some thought, I accepted the offer, and in mid-September 2019, I joined. Initially, everything at the job was overwhelming, but I didn't give up and gave it my all, spending almost all my available time on the job. When I received my first salary of around 35K BDT (~400 USD), I couldn't believe it.
Growth at Job
Getting a job can be tough, but for me, it seemed easy. However, staying in the job was not as simple. Everything I encountered was new, but instead of losing hope, I took the time to learn. I didn't take weekends or time off for the first two years. Fortunately, the COVID-19 shutdown allowed me to dedicate even more time to work, spending 15-20 hours a day working and learning. I started taking on more responsibilities than I was assigned, which helped me grow and become a team player, leading to not just survival but also promotions! This approach of taking on more responsibilities has brought me to where I am today.
Job and Study
Until 2022, I didn't worry about my studies because, due to the COVID shutdown, there were no classes, and our High School Exam was canceled. We were all given an automatic pass based on our Junior School Exam. However, in late 2021, I had to choose between my job and my studies. I was unsure if it was possible to pursue both at the same time, so I did a lot of research and asked my colleagues and others I knew. If I did both, I would have to choose one as my main priority. I've always been focused on academics, but I didn't want to fall behind at work either. Initially, I decided to work part-time and focus more on my studies. But four years seemed like too long to invest in a degree, especially since I learned that a computer science degree might not offer much new knowledge. However, I didn't want to miss out on the university experience. So, I decided to stay full-time at my job and see if I could manage university at the same time. If not, I would switch to part-time work. The first two semesters were extremely challenging. To save time, I moved into the university hostel, even though I had never lived away from my family. I couldn't afford to spend 2-3 hours commuting. Imagine working late until 3 AM and then going to campus by 8 AM. It gradually became harder, but I started to adapt to this tough routine, hoping for a better future. Life is still hard, but instead of complaining, I just deal with it. I also wrote an article on how I manage both studying and a full-time job here.
Concluding
Reflecting on my journey into software development, it's clear that determination and adaptability have been crucial for me. From overcoming my initial fears of coding to getting a job and balancing work with studies, each step has been a learning experience. Embracing challenges and taking on responsibilities outside my comfort zone have helped me grow. As I continue to navigate the complexities of both my career and education, I stay committed to learning constantly.
Subscribe to receive updates from me!