A Reflection of My First Year as a Software Engineer
Tags: career, juniorengineer, codingbootcamp, beginners
Published: 2022-04-30 23:59:49

Twelve months ago, it was my first day as a Software Engineer at my very first tech job since graduating from a coding boot camp. Previously I was in hospitality for about eight years, so honestly, I still find myself in disbelief whenever this dawns on me. I didn’t really know what to expect. Everything was new, the work culture, my colleagues, and the work itself. I eagerly stepped into this new world with one thing certain on my mind, the best chance I could give myself is by doing the best that I could while staying genuine to who I am. In the short twelve months, I’ve gotten a taste of what it means to be enjoying the work that I do while living the life I’m working for. And packed in that one year were challenges, learnings, and a lot to be grateful for. I’m hoping to give insight to people who are looking into transitioning into the tech industry, who are just starting their technical careers, or to anyone who may find value in my experience. This is a reflection of my one year as a software engineer. 

One of the biggest challenges I’ve faced was navigating adjustments. Working in hospitality, I was used to coming to work, doing the work, and doing it again the next day. It sounds like how a normal day should be in the kind of work that I do now but for some time it wasn’t. A major part of the labor in my old job was physical and now all of the work that I do now is in the mind. I went from 8+ hours of moving around to 8+ hours of sedentary work staring into space, constantly calculating and problem-solving. The big adjustment was finding a way to turn off my mind and separate work from my personal life. I find myself thinking all the time as if my mind has a mind of its own. Even at times when I shouldn’t be anymore, like sleeping. There were nights when I struggled to fall asleep because my mind was either still computing how to build a feature or retracing the steps of how a bug was produced. I’ve also made the mistake of trying to crank out a solution by staring at the same code for hours. I was unaware of the mental toll until it was happening. Maybe, I was also in denial that you could get tired of doing something you enjoy doing. Honestly, it took me some time to really understand this. I was excited, eager, and motivated, that I drove myself into burning out without even knowing it. It was one of those things I didn’t fully understand until it happened to me. I eventually came to a solution. I helped myself by aligning certain scenarios and spaces that send a message to my brain, it’s time to slow down. A couple of examples are hanging out with family, when I’m not around the perimeter of my workspace, or just watching Netflix. Although I made some strides, I’m aware it's still a work in progress. I see the importance of actually, mentally, taking a break. The value of mental health days became apparent.

The next challenge that stood out to me is the occasional uninvited visit from the imposter. It’s invigorating to be surrounded by smart people but sometimes I find myself unconsciously discounting my own value, especially on days when I felt like I didn’t produce anything. These days are either when I have hit a wall, trying to learn multiple technologies and their intricacies at cheetah-like speed, or have found myself in a rabbit hole, completely lost, unsure of what the next step should be. As much as I don’t like those days, those days were the key to me reaching out and asking questions inside and outside of my team. It led me to the door of collaboration. The time spent I thought was wasted by producing nothing was crucial in forming questions that indicate my own research and findings. The imposter likes to single me out as if the work that I do can only be done solely by me and if I don’t know how to do it then I don’t belong here. It also led me to communicate and allow myself to be vulnerable to my colleagues and my mentors. Through this, I was also able to form relationships and build trust. Lastly because of the imposter, I started writing my dev journal. They were my highs, my lows, and my evolving goals assessed from the highs and lows. It helped me see my progress and provided evidence to the imposter that it was time to depart. It can be difficult to see and think clearly when the visits happen, but each time, I just come out of it stronger and wiser. I accepted that the imposter doesn’t go away. I stopped trying to prevent it from coming in, instead, I embrace it with open arms, ready to learn something from the challenge.

Although these challenges I went through were my own, I must say that I didn’t go through them alone. I had a strong support system at home, but it was an even stronger impact when support was coming directly from work. One of my ways of staying genuine to who I am is being able to communicate transparently with my managers, Kevin and Aaron. I’m grateful that I’m able to be completely honest when asked “How are you doing?” without worrying that vulnerability will be judged and looked down upon. I don’t think my managers grasp the entirety of how helpful those 1:1s have been to my journey. I’m grateful for the collaborating nature of our whole organization, especially when asking other teams for help in terms of pair programming or debugging. The one hour they’ve taken out of their day has been impactful not only in problem-solving but also in dealing with the imposter. I’m grateful for the unlimited sick and mental health days I could take when I need to take a breath and take a break. I’m grateful for the work culture and work events which allowed me to get to know and make friends with colleagues who are outside my team. It's probably obvious that I am grateful to be working at Volley as my very first tech job. Maybe to some people, all these things are something every company should have by default, but all of these were new and unfamiliar to me. Throughout this year, I surpassed these challenges through a culmination of my work and my colleagues, but what kept me grounded and going above all else is gratitude. 
 
Every now and then when I need a boost of confidence, I go through my dev journal. It’s a testament to the steady growth that I sometimes fail to recognize. I absolute found joy in collaborating when I started off pair programming with my colleague, Micko, who became my work best friend. Shortly after, I started writing small features on my own. Over the next couple of months, I noticed I was building more complex features than the previous. And just recently we pushed a new voice user experience of our product, Backchannel, written in tandem by myself and my awesomely talented teammate, Will. I used to be intimidated creating pull requests (code changes), let alone reading the organization’s internal plugins’ codebase. In the past year, I’ve made upstream changes and I’ve contributed to 8 of them! I used to be quiet in our team meetings and now I’m confidently asking not just the “Hows” but also the “Whys”. I went from not knowing how and where to look for bugs to developing a system when debugging. I used to be afraid to deploy and now I’m deploying at least once a week. And lastly, just a couple of months ago I had the opportunity to contribute to our own apprentice program based on my own experience as a junior engineer. With that said, I also started mentoring a junior engineer who also did a career transition like me. I do get the occasional self-doubt of  “what ifs?” in my head, because I know there are a lot of things I still don’t know. However, every time that we pair program and I was able to teach my mentee something is validation on its own. Each of these tasks was once daunting but with time and practice that slowly faded away and has been absolutely validating and rewarding.

I am in awe. Looking back on the last twelve months, I can’t help but feel a sense of pride. I have learned so much mentally, emotionally, and technically. These paragraphs are not nearly enough to thoroughly describe the experience I went through. I realized that I touched more on the mental and emotional aspects of the job than the technical parts. The very core of the work that I do is having a clear and open mind. If my mind is occupied with these challenges, I won’t be able to do my job at my best. I learned the meaning and significance of work-life balance and know that work will always be there tomorrow. I learned to welcome the imposter because it has only made me persevere even more. I learned to be patient because adding skills to my tool belt naturally just takes time. The technologies I was trying to cram in the first couple of months, I steadily learned and implemented in the last twelve months. I have a better understanding of how the puzzle pieces fit together. Learning the tools and technologies we use is always challenging, but as long as I address the challenges along the way, it should not hinder me from continuously learning. My experience from the past year has made me the software engineer that I am today. I am genuinely happy that I pushed through the doubts and believed that I was more than what I thought I was capable of. I look forward to embracing the unknown in an environment of constant change because no matter the outcome, there’s always something to learn.