How I got a web developer job

30 Dec, 2018

Ever since I started working as a web developer, many people asked me why & how I became a developer. Here I take some time to reflect on my journey to become a web developer.

I have been working as a web developer since April 2018, and I have been thinking about writing about this since then. Although I studied EEE and graduated back in 2009, this is my first job that pays for doing it. If you are curious what I was doing after graduation: I was just making music assuming that I would be able to make a living out of it here in Bangladesh, which just didn’t happen and I wasn’t interested doing a typical job in my field of study that time.

Looking back

2000 - 2009 : Coding at school

I was always interested about coding & technology since I was a kid. So I had a basic coding experience since 2000. In high school: I coded in Quick Basic & Visual Basic for my computer science classes and I used to buy some Computer/Tech Magazines to keep myself updated. During that time I didn’t have a good Internet connection here in Dhaka and used Dial up Internet.

Later in University after 2005 while studying EEE I had to code in various languages: C/C++, Assembly, MATLAB for various courses like: Computer Programming, Networking, Microprocessor/Microcontrollers. When I graduated in 2009, I felt that I still didn’t quite understand how to code, I wasn’t confident in coding, I couldn’t express myself in coding. I was overwhelmed with all those terminology & many ways of doing the same thing.

2009 - 2015 : Music production in Linux & Blogging

During 2009 I was deeply interested into music production & computer/electronic music. I was using FL Studio, Reason, checking out Ubuntu Studio, AVLinux, experimenting with sound synthesis, effect processing, sound mixing & mastering. After producing some music (Instrumania) during 2014 I wanted to have a blog where I could write about the music making process, my thoughts behind various sound experiments so I opened a blog in Blogspot.

I wasn’t happy with the themes/design of all the provided free themes in Blogspot, although it had a nice web interface for customizing layout and other options but I always felt that I need to be able to fine tune it according to my taste. So the way I wanted- Images, embedded video/music content wasn’t properly getting styled. So I had to search and copy-paste various CSS snippets into the blog and It blowed my mind that how much you could do with a bit of HTML & CSS - It can drastically change the look & feel of the site! It is this time around when I started to hack HTML & CSS for my blog in Blogspot. Eventually I realized that I need to understand basic front-end web development deeply if I want to customize the appearance of my blog and maintain it myself.

Learning Web development

Codecademy

So around March 2015 after some online searching about how to learn web development for free, I enrolled in Codecademy. That year I did various interactive tutorials in Codecademy about: HTML, CSS, Bootstrap, JavaScript, jQuery, Python, PHP, Java, SQL, Git & Linux Command line. I learned a lot but I became frustrated with the information overload, I kept forgetting things that I learned a few weeks ago. So I thought if I really want to do web development for myself I have to minimize technological knowledge overload: languages, frameworks, libraries & tools. I have to come up with a way of doing things that is minimal yet powerful & flexible.

FreeCodeCamp

In August 2016, I was again searching for sites with similar interactive coding experience. And I found freeCodeCamp and Codewars. I started with freeCodeCamp with a joy & enthusiasm I haven’t found deep inside me for a while because I realized what freeCodeCamp(FCC) is teaching: Fullstack JavaScript is the way for me, it aligns with my personal goals, so I just jump started with FCC and also started doing little exercises in Codewars.

Blogging using jekyll & github pages

In December 2016 I took off all my contents from Blogspot and started a new blog on github pages using jekyll static site generator, as it gives a developer oriented workflow and you have complete control over the content & code and you even version control it! You can read more about that here.

Preparing for web development jobs

Catching up with the tech world

I started following many developers & tech channels on twitter and facebook, also used a RSS feed reader for reading many tech blogs.My motivation for learning web development was to be able to customize my blog the way I want it & anytime I want it. The thought of making money out it didn’t occur to me as I was just trying to save money by doing it myself!

But eventually I became aware that there is a quite noticeable demand for skilled developers in the market both locally & globally. As I was struggling financially myself while making music without any income source and I was staying at my parents house while most of my friends moved out and started their own families. So my motivation for learning web development got tremendously boosted as it could become a potential income source.

Applying for jobs & going to interviews

I was spending most of my time in house and learning & practicing web development, coding, watching tech tutorials, conferences. Whatever I learned I kept note on a journal by hand writing in pen & paper. I was in a state of full immersion since I started learning in FCC in August 2016. Around this time I started applying for some front-end web developer position locally here in Dhaka and to my surprise got invited for interviews. After each interview, I started to get more perspective on what skills is required for that job & I would adjust my learning according to that.

Dhaka React Meetup 2017

Around the end of November 2017, I went to a local tech meetup about React hosted by a company called Monstar Lab at Banani, Dhaka. The room was full with hundreds of developers and learners. I went early, was sitting in the first row and watching & listening to these professional developers talking about React & the tech scene of Dhaka, Bangladesh gave me another boost for start learning React & Redux. I realized if I want to get a job and break into the scene as fast as possible I have to learn React.

Learning React

React felt really difficult, as I couldn’t understand modern JavaScript, I have been coding in an old version( ES5) so all tutorial/official documentation couldn’t help me to get started and I felt a huge barrier to entry for learning React. Although after getting myself familiar with Modern JavaScript I started to get some ideas of React but still I was reluctant to commit. So I kept doing freeCodeCamp front end projects trying out jQuery, angularJS and VueJS. I found VueJS a perfect fit for me, I felt a lower barrier to entry for VueJS.

But once again I wanted to get a job as soon as possible, in January 2018 I decided no matter how hard React is, I have to learn it. So I started with FCC’s React, Redux tutorials- In that time FCC’s React-Redux tutorials was in alpha and it was hosted outside of their site for evaluation. I went there and started on: 20th January, finished the whole React-Redux tutorial on: 7th February, so it took me total around 3 weeks. I was shocked at my own speed, didn't expect to do it within a month. In the next few months:(February, March) I did three FCC projects in core React and one in React/Redux. All these projects was hosted on Codepen and some of it was linked in my Resume.

Getting my first web developer job

In the first week of March 2018, In an online local job search I found a company who was looking for both front-end developer & React Developer and I applied for both Job positions and I got invited for interview. After the interview & a brief online coding test, I got selected.

I started working there as an apprentice from April 2018 using React from day one and using Redux few weeks later in the very first month. My task was to port their front end of a Wordpress blog site called HiFi Public hosted on AWS EC2 to React, which was previously in Angular, while keeping the existing design(by importing old CSS/SASS) & functionality the same(by writing new React code) by accessing all data via REST API. I hope to write a blog post later about the whole process.

I was the only developer actively working on that project. After the first three months of apprenticeship position, I was given a software engineer position.

Conclusion

It's all about persistence & hardwork

If you ask me what I learned in the whole process that I have talked from the beginning of this post, I would like to say: To get a web developer job, you have to make sure first if there is a demand, for the technology you are interested, in the market where you want to get the job. Then everything is pretty straight forward: You have to believe in yourself that you can do it. You have to let go of the fear of failure. Each time you fail at something, be curious about why you failed not ashamed. And finally there is just no magic, you do have to go through the hard work and keep doing it for long period of time. There may be some luck involved (random events may help or prevent you that you may have no control over) for how fast you can get there but there is no magic.

(Last updated: 13 Aug, 2019)