# My Journey to Software Development

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](https://www.facebook.com/OfficialDUC/). 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](https://www.w3schools.com/) \[Interactive Learning Platform\]
    
* [Eloquent JavaScript](https://eloquentjavascript.net/) \[Book\]
    
* [Zero to Mastery](https://zerotomastery.io/courses/coding-bootcamp/) \[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](https://scienceclubofdaniacollege.github.io/) for our [Science Club at Dania College](https://www.facebook.com/ScienceClubofDaniaCollege/). Personally, I created a full-stack [mini banking system](https://github.com/nurulhudaapon/bank-management-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](https://www.dhakatribune.com/bangladesh/government-affairs/182419/joy-launches-nid-verification-gateway-server) 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](https://nurulhudaapon.github.io/nurulhudaapon/archives/legacy-portfolio/pages/resume.html). 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](https://en.wikipedia.org/wiki/Higher_Secondary_Certificate) was canceled. We were all given an automatic pass based on our [Junior School Exam](https://en.wikipedia.org/wiki/Junior_School_Certificate). 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](https://blog.nurulhudaapon.com/study-while-working-full-time).

### 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.
