My journey from QA to Frontend Development
Tags: javascript, webdev, react, testing
Published: 2021-12-17 05:25:56

Hello folks,

I am very much excited to share my career journey, on how I moved to development after **six** years of testing experience. Also, I will cover my preparation strategy, in brief, to motivate & inspire those who are on this similar path.

<br>
**Campus placement** (A little bit about my background)

I did my **B**achelor of **E**ngineering in Electronics & Communication from a college that most refer to as *TIER 3* college. I did not even attempt for any of the core companies in my final year. Like the most, I appeared for the mass recruiting companies and fortunately got an opportunity at Infosys Ltd. After the completion of my education, I had to wait for eight months to be onboarded at Infosys as they postponed the joining dates by a few months. Mine was among the first few batches to whom online training was introduced by Infosys. 

I started my career journey with Infosys, Mysore as a trainee engineer in the second month of 2013. I was trained in Java, SQL & a few more computer science topics. These helped me to understand the basics of the software development life cycle.

<br>
**Career as a QA**

After completing training, I started working at Infosys, Mangalore as a *Test engineer* (Quality assurance engineer). The project was in the apple account, and we were working in an offshore development center (ODC) at Infosys. My work expectations were to understand the requirements, write the test cases, execute them, raise the bugs, & so on. It continued for a few more years in different domains (retail, manufacturing, etc.), which offered me some knowledge of these domains too.

By the time I understood what was going on, it was already mid of *2016*. With such an experience, my typing and excel skills had improved a lot. As these skills were nowhere in demand, I decided to move to Silicon Valley of India, Bengaluru. I got the opportunity to work at the client location *Huawei* from Infosys. Here I got some exposure to coding on automation testing (Java + Selenium). At the end of 2017, I decided to make at least some progress in my career.

I joined *Sears Holdings* as a senior test engineer. The company faced an unexpected challenge within a few weeks of my joining. They decided to lay off employees. Being the recent joiner, I was at the top of the list. My 2nd company did not even add two months to my resume.

As I was jobless, many companies were strategically trying to hire me at discounts. Fortunately, I got an offer from TEKSystems to work for Schneider Electric. I started working as a test engineer on core authentication and authorization integration software product.

<br>
**What made me change my mind !!!**

I started exploring different tools and technologies in the testing domain; Performance testing, Automation testing, API testing, Robotic Process Automation. Also, I evaluated my long-term career possibilities in the domain which was either Test Manager or Test Architect. Scrum Master is another option that I was not interested in. As I was not convinced with the options I have, I decided to move out of the testing domain. (personal choice, no offense intended)

I talked to many developers and took their suggestions regarding the same. But many were skeptical about the chances of getting a decent development opportunity after five-plus years of testing experience. After spending a month evaluating all the possibilities, I decided to start my studies to become a developer. (Better late than never)

Now the question remaining was about the tech stack. I picked frontend development. The reasons for choosing frontend were
- Frontend development was booming with frameworks such as React, Angular during 2018
- We can quickly see the results of what we code
- Entry barrier is lower compared to backend dev, machine learning
- Good number of books and materials to study from
- JavaScript is everywhere (backend, frontend, mobile, ML, AI, ...)

> However, there are fewer materials for intermediate and advanced levels (frontend system design, architecture, WASM, ...)

<br>
**Frontend preparation 👨‍💻**

As I already had some exposure to HTML, CSS, and JavaScript, web development was not something alien to me. I created a **roadmap** for myself for the next four months. It included 80% of JavaScript and 20% of HTML & CSS. I chose [You don't know JS](https://github.com/getify/You-Dont-Know-JS) for JavaScript and [Maximilian](https://www.udemy.com/user/maximilian-schwarzmuller/) courses from Udemy for the rest.

> A roadmap is a step-by-step guide that helps us to plan our learning. It is very important to create a roadmap for our needs and goals. It also helps us to be focused on our goals and track our progress.

Regularly, I spent 3 hours studying JavaScript after my office hours. I was mainly reliant on the book and a few video courses (Udemy, Youtube) for additional information. On weekends I used to spend 12 to 16 hours. Was it easy? Of course not. It was damn hard for me. I was frequently getting demotivated; I wasn't able to complete even a single topic in a whole day sometimes; sometimes I did not even feel like opening the laptop and practicing; I had to push myself in the evening after the hectic day 😦. However, the studies continued for about three months. The next one month I spent on HTML and CSS. 

Now it was time for *frameworks*. Yeaaaa 🕺!!! The most awaited one. Considering the market demands, I had to choose either React or Angular. I started with AngularJS 1.7, building a project. Neither video tutorials nor books; created a project with only its documentation. WoW moment for me. I was able to build and host the project on my own. Now it was the time for React 😎. I converted the same project into React. 

As AngularJS was outdated, I had to learn Angular.  I knew AngularJS was outdated, and it was international to practice it first before moving to Angular. I figured out a practical challenge that our testing team was facing in the daily work. Solving it using a web application would both make the life of testers simple and also give me a real-time frontend project experience. I built a small frontend project in a few weeks, using Angular. My teammates loved it as it reduced the manual effort by 90%. Now I had one good frontend project to showcase in my resume.

<br>
**Frontend interviews**

As it was already five months from the day I started learning frontend development, I was in a position to start giving the interviews. It was the 1st month of 2019. I updated my resume with the relevant frontend details & projects and activated my job search through *Naukri* and *Linkedin*.

I was overwhelmed with the number of interview calls I got. It was not because of my knowledge but purely due to the demand. Few interviews were scheduled for the same weekends after the initial telephonic round. I cleared all the interview rounds at Trelleborg and got my first offer as a frontend developer 🎊 🎉 🎆. I was ecstatic. I was satisfied with the *UI developer* role at Trelleborg and happily accepted the offer immediately. Also, I could clear the interviews at Tredence and Pearson. My job search ended successfully in a short span of 4-5 days which I had never imagined.

<br>
**Frontend journey till today**

*Trelleborg* helped me to get a lot of frontend experience as a beginner and gave me exposure to different frameworks. I worked on legacy codebase as well as modern codebases. I developed projects from scratch as well as handled maintenance projects. I added enhancements to the products as well as architected the projects. From building applications with complex logic to pixel-perfect user interfaces, I was involved.

After 1 year at Trelleborg, due to covid most of us started working from home. I tried to utilize this time to enhance my core skills. I focused more on HTML & CSS part this time as I was not proficient enough. I also strengthened my problem-solving skills by practicing data structures and algorithms. I started building multiple [personal projects](https://github.com/sadanandpai) and started sharing my knowledge over Github. I became an active member in various frontend communities. Also, I started actively attending and giving sessions on frontend-related topics. During this time, I connected well with an open frontend community called [TeamDevkode](https://t.me/teamdevkode) which helped me to grow in the frontend world and gave me the required exposure.

By then it was 2021. To try out newer challenges, to grow faster 🚀🚀🚀 in my career, I decided to explore the opportunities in the frontend domain. I moved to CoinDCX as a frontend developer in the 1st week of April 2021. 

> To read more about my interview experience at CoinDCX, [click here](https://frontendpro.hashnode.dev/frontend-interview-experience-at-coindcx).

<br>
**Conclusion**

When I see my career transition journey, it makes me feel happy. Now I enjoy being a frontend developer that I aspired to be in my past. It makes me feel like an achiever (though not huge). It helps me to empathize with the feelings of those, who are striving hard for the same. At the same time, it also makes me realize that I am still a beginner and, there is a long way to go.

*I did not do it alone*. l am grateful to all those who guided, helped, and morally supported me. I hardly spent money on resources as most of the high-quality resources were available online for free. Thanks to open-source materials, projects, tools, and free youtube channels.

However, one question was bugging me a lot during my preparation phase. "What if I fail?" The worst thing that can happen is, I gain a good amount of knowledge on something. It is better to try and fail than never to try at all.

> An investment in knowledge pays the best interest - Franklin

I hope my journey motivates you and ignites that fire 🔥 to excel at the things you are wishing.