Retrospective: After One Year Working as a Frontend Engineer
Tags: webdev, beginners, programming, mentalhealth
Published: 2022-05-27 10:16:37

## Disclaimer
> Again this is based on my experience. This story may not be 100% and relate to some people. At least this story can be your reference for your career life.

## Introduction
The story began when I just graduated from college in June 2020. That was a challenging moment because the Covid-19 pandemic began to invade the whole world, including my country, Indonesia. Not only that, but my college friends also face the same issue. That was struggling to get a job. I even found several of my friends to work outside the IT (not linear with his degree) world to earn for living.

After several weeks, one by one of my friends get their first job and that made me very anxious about my future. I've tried my best to apply to many companies but the covid-19 pandemic also causes so many hiring freezes. Thank God, in September 2020, with several of my college friends and even juniors, we got a job at a software house company at Gading Serpong. It is just a small company and the office is not too big, but at that time we only think to earn to live because of the pandemic situation no matter the salary or environment.

At that time, I work as a frontend engineer but mainly used Ionic & Angular to develop a hybrid mobile app. That's [KAI Access](https://play.google.com/store/apps/details?id=com.kai.kaiticketing&hl=en_US). To be honest, I don't like this role. I actually prefer to work as a frontend engineer who focused on web development, but because of the situation at that time and I was still a fresh graduate, I still tried to be optimistic that this job may be the suitable one for me.

I was wrong. In June 2021, I got burned out with my job. It even influences my physical body, so I have to take a rest and do WFH even though the company has implemented WFO. I had to work in a job that I don't like for about a year and finally, I realized at that time, that I should find another job.

Luckily an old friend offer me a freelance project, so I joined him to make a warehouse system using React outside of working hours. That is the first time I learn React through a real case project. Since that, I started to like to craft something using React.

In August 2021, I continued to learn React (and Next.js) by myself. The first thing I made using Next.js is my personal web, [yehezgun.com](https://yehezgun.com). It's just a mainstream project actually. But, since I published it on my Linkedin and caused some recruiters to approach me. This made me encouraged and keep posting my other mini-projects or articles about twice a month.

Thank God, in November 2021 a recruiter from my current workplace approached me through Linkedin. I was offered a frontend engineer role, but this time for web development. I continue the recruitment process and finally, here I am now. So happy with my current role, because the environment is very supportive. My current manager also supports the employees if they have some activities outside primary work like joining the devs community or being a course instructor.

For about a year (almost 2 years exactly😂), I learned so many things from getting my first full-time job, going through burnout, and getting a better job. Like a retrospective session, I'll share 4 primary points related to my previous story.

## Fundamental is Crucial
I've written about this before in my previous article [Why Fundamental Matters?](https://yehezgun.com/articles/why-fundamental-matters). This made me realize that I should strengthen the fundamental things before going further.

Back in the old days when I learn frontend development prematurely, I directly jump into tools and frameworks like React, Angular, and Vue without learning the Javascript basics first. I got my first job and it uses Angular (Ionic) as the main tech stack. Struggled enough when I have to handle some issues that cannot be resolved with any help from the third-party library, so I had to create the logic by myself.

Another problem is when I joined my current workplace in January 2022. I have to relearn Javascript basics because I have to use React as my main tech stack. Not only that, I even have to understand the CSS basics because I work on a project that uses Tailwind CSS for styling purposes.

> If only I have a solid understanding of the basics and fundamental things, it's not a big problem when I have to use tools or frameworks. I just need to adapt to the syntax and don't need to re-learn everything.

## Focus on The Essential Things
I don't know if it is just me or if someone else who also feels the same thing that the more experience we got in the real industry work, the more we realized that we need to choose wisely what tools or frameworks can solve the problem.

For example, I've learned Angular for a long time since I was a college student until I worked in my first workplace at a software house. At first, I think that Angular is easy because with the CLI feature I can generate pages and components easily, and it's an imperative paradigm.

Everything changes when I've worked for around 6 months and realized that the community support for Angular is quite rare and it's hard to find the related or relevant solution when doing some troubleshooting. So because of that, I even made some logic by myself from scratch😵. Not only that but when I was searching for a new job the common market required React as the main tech stack skill.

I actually mentioned it in my previous article about [Frontend Fatigue](https://yehezgun.com/articles/frontend-fatigue). I should choose a framework that has proven, has huge community support and of course, it can help me to solve the problem that I want to solve.

> Focus on problem-solving. Choose the right and suitable tools that can help us to solve the problem, not make it heavier😂.

## What You Do Now Can Determine Your Future
I still remember when I started a habit to publish the article routinely at the beginning of 2021. At first, I post articles in Indonesian (Bahasa) at [diskusi.tech](https://diskusi.tech/yehezkielgunawan). Not a hard topic, I just share my experience and how to handle the problem that I've faced.

In the middle of 2021, I started to build my own personal website, [yehezgun. com](https://yehezgun.com). At that time, I started to expand my English writing skill and post some articles in English. Not only that, I also keep making and publishing some mini projects on my personal website.

It took about six months until I was finally approached by some recruiters and finally I can get my current job because of that habit. I've mentioned it in my previous article about [How To Get Hired Without Applying](https://yehezgun.com/articles/how-to-get-hired-without-applying).

Not only my personal portfolio, but I also joined as a volunteer (cloud advisor) at Bangkit Academy. That's beyond my expertise and experience actually, because I didn't have any cloud computing background but I have to guide my students to learn about cloud engineering🤯. But don't get me wrong, with this experience I learn twice. I learn for myself, then I learn to deliver the material to my student so they can understand what they learn. This affects my career so much and helps me to understand the cloud-related things in my current job even though I'm just a frontend engineer.

> Remember that the current version of yourself is built and developed by your previous version of yourself too.

## Environment Matters
At first, I think working at a software house can be fun because I can learn so many things through the projects that exist, but I was wrong. The project that I handled is based on the client's request and most of them "cannot be interrupted or adjusted". If the client says A, I have to deliver it as A, not B.

The other problem is there's no proper code pattern. A lot of projects but each of them has its own code style and doesn't have a standardized code. When I have to deal with a project that I don't usually work on, I need a longer time just to understand the flow and how the code works.

This made me realize, that I should work at an in-house company that has a dedicated product that usually has a standardized and proper development pattern. Finally, in November 2021, I resigned from my previous workplace and join my current workplace in January 2022.

Working on a dedicated product is like you're adding a new puzzle piece to the existing puzzle board. Of course, because of that, the codes that are produced must be standardized and have the proper pattern so the quality of the product still can be maintained. But in my case, I got a project that has to rewrite the whole landing page from Vue to Next.js😁, but because of it, I can learn while working on it, especially about Next.js which is my current favorite go-to framework.

The most interesting part is finally I have the seniors that can be my career mentor. This is the first time I can have a real mentor in my life. When I was stuck on my task, I can ask them for help with what approach I can use to solve the problem. Even though we work remotely, we can still communicate properly through G Meet or Slack Chat. For me, this is the best work culture that can help me to grow.

> Culture fit is real. It helps a person to grow and become better from time to time.

## Closing
So yeah, this is my story. Feels like a career retrospective right? I hope this can give you a new insight from the (not really😂) experienced frontend engineer perspective.