The most important things I learned in my first year of full stack web development

I'm coming up on my first-year anniversary with JetBlue and I wanted to share some of the things I've learned in the past year. Things like painful truths about how I program that I had to face, the new techniques I've learned, and some great experiences I've learned from along the way.

Me in front of a JetBlue backdrop

Returning to the pen

One thing that I'm finding that I miss about my school years is the occasional academic paper that I'd write; which is something I'd never thought I'd say... I used to loathe the nights before a major English class assignment was due because they would be my longest and most arduous nights I'd have in the semester. I never had those long nights with my Math and Science assignments as I was usually pretty responsible with those. My English papers though, they were put off until the last possible second.

I remember my fingers cramping from typing, my back aching from slouching, and my tired brain writing words on the page just fast enough to keep itself awake, and yada yada yada. Mind you, this was before we had generative AI like ChatGPT, Grok, Claude, Gemini, and others, so I wrote every sentence of those papers myself. But looking back, I realize those nights taught me discipline and the value of persistence. They forced me to organize my thoughts, articulate my ideas clearly, and refine my arguments. These are skills that I now find invaluable in my career as a developer. Writing code, much like writing essays, requires structure, clarity, and attention to detail. The process of debugging and refining code often feels like editing a paper—iterating until everything flows seamlessly.

Which is why I'm so excited about this website! This gives me a platform to continue writing and also at the same time share my thoughts, experiences, and lessons I've learned with a broader audience. It's comforting to know that my writing can reach others who might find value in my journey or relate to the challenges I've faced. This space allows me to connect, reflect, and grow, while also contributing to the community that has given me so much. For now, enough with the rambling and let's dive right into it.

Embracing the learning curve

Your first few couple of weeks on the job won't be very productive. In fact, in most workplaces the first 6 months are considered your onboarding period. So, I wouldn't stress about not being able to push any code up just yet. If this is your first programming job, you'll firstly have to familiarize yourself with the legacy codebase you've just inherited... These codebases can have a wide range in quality depending on the programmers working on the code and the peer-review system they have in place. So hopefully, your coworkers and previous coworkers were responsible developers and you don't have to deal with tons of technical debt.

Additionally, depending on the size of your company, you will also likely have to make multiples upon multiples of tickets with IT to get access to various company resources, which, can take a while. This is all to say that your first few weeks on the job will be a bit of a slog, but don't let that discourage you. It's all part of the process!

I remember my first week at JetBlue, I was overwhelmed by the sheer amount of information I had to absorb. From understanding the codebase to getting familiar with the tools and processes, it felt like I was drinking from a fire hose. But I quickly learned that this was normal. Everyone goes through this phase, and it’s essential to embrace it. Instead of getting frustrated, I focused on breaking down the learning process into manageable chunks. I set small goals for myself each day, whether it was understanding a specific part of the code or mastering a new tool.

With that, one of the most important lessons I learned was the value of asking questions. Early on, I hesitated to reach out for help, fearing that I might come across as inexperienced. But I soon discovered that my colleagues were more than willing to share their knowledge and guide me through difficult problems. This not only helped me learn faster but also strengthened my relationships with my team. It's a reminder that no one expects you to know everything right away and asking for help is a sign of strength, not weakness.

The importance of soft skills

While technical skills are crucial in software development, I’ve come to appreciate the importance of soft skills just as much. Communication, collaboration, and empathy play a huge role in the success of any project. Whether it’s discussing requirements with stakeholders, working through disagreements with teammates, or mentoring junior developers, these skills have been invaluable to me.

One specific example that stands out is a project where I had to collaborate with a designer and a product manager to deliver a feature on a tight deadline. Clear communication and active listening were key to ensuring that we stayed aligned and delivered a product that met everyone’s expectations. This experience taught me that being a good developer isn’t just about writing code—it’s about being a team player.

Continuous learning

The tech industry evolves at a rapid pace, and staying up-to-date is both a challenge and a necessity. Over the past year, I’ve made it a point to dedicate time to learning new technologies and improving my existing skills. Whether it’s through online courses, reading documentation, or experimenting with side projects, I’ve found that continuous learning keeps me motivated and sharp.

One of the most rewarding aspects of this journey has been sharing what I’ve learned with others. Writing blog posts, contributing to open-source projects, and mentoring newer developers have not only helped me solidify my knowledge but also allowed me to give back to the community.

Looking ahead

As I reflect on my first year as a full-stack developer, I’m filled with gratitude for the experiences and lessons that have shaped me. This journey has been far from easy, but it’s been incredibly rewarding. I’m excited to see what the future holds and to continue growing both personally and professionally.

To anyone just starting out in their development career, my advice is simple: embrace the challenges, stay curious, and never stop learning. The road ahead may be tough, but it’s also full of opportunities to grow and make a meaningful impact.