When the clock hit midnight at the end of 2019, I had a lot of expectations for the year to come. I had recently started a new job, I was working on a project that I enjoyed and that gave me the opportunity to be exposed to new things, and I was about to start working with a new group of awesome teammates. The year started decently, but by mid-March, the world had turned upside down. Despite the giant pile of garbage that 2020 has been in many ways, there were some good moments. I thought it would be nice to end the year by talking about some of my work highlights from 2020.
Branching Out Into The Backend
2020 was a year of me being exposed to new things, and that started early in the year. As part of one of the first projects my team worked on this year, I had the opportunity to complete my first ticket involving our backend codebase. I've always enjoyed frontend work more, and our backend codebase uses some languages and technologies with which I'm not super familiar, but I knew that this would be a great opportunity for me to learn something new, and I was excited about it. I have worked in that codebase a few times since that first ticket, and while backend tickets are still not my favorite thing to do, I know that working in this very different codebase has given me a new perspective on how to approach my work and has made me a better all-around developer.
Taking On Bigger Things (With More Complicated Parts)
One of the tickets I'm most proud of from this year is something that doesn't really seem like a big deal on paper. I built a page that took some data and displayed it (I actually built two different components that display the data, but originally I was only assigned the ticket to build one component). While it sounds simple, there are a few things about this ticket that I'm very proud of. One is the fact that I did it by myself. While I had worked with similar data in the past, I was only doing part of the work of displaying it, and I had other people working with the same data who could help me figure out what to do. This was my first time being the only person working on displaying the data, and while I knew I could ask my teammates for help if I needed it, I also was excited to be able to own this part of our new feature.
Another thing I'm very proud of is that I was able to display the data. This data was pretty complicated, and different pieces of data had to be put together to get the information we needed to display. There were a lot of moving parts involved in getting this data together (for example, if one piece of data had a certain value then we needed to also display two other pieces of data, but if it had a different value, then we didn't need to display any additional related data), and I was able to write a series of functions that took all of this data, combined it in the right way, and returned it in a form that the UI components could easily use to display the necessary data. This was a pretty complicated set of data, and the fact that I was able to make sense of it and get the needed information to the frontend is something I'm very proud of.
Working on this feature also gave me an opportunity to be a good teammate. A teammate of mine was working on another area where we displayed this data, but he was unable to make much progress on the work (for a good reason - they got an opportunity to take on new responsibilities that took them away from our team). When it was time for my teammates to move on to their new responsibilities, I volunteered to take on the work they were doing and complete the task of displaying this data everywhere we needed it to be displayed. I ended up doing more work than I had planned on this feature, and I was proud of myself for stepping up and getting it all done.
Being An "Early Adopter"
As part of our tech improvements roadmap for the year, my team was looking to introduce a new tool to replace a not-super-reliable (or secure) existing tool. One of my amazing teammates built out this new tool and got it up and running (and connected to our main codebase), but we still needed to convert our existing work to use this new tool. I had the opportunity to be one of the first people to work with this new tool. I was working on a new feature, and since we were not sure if we would be ready to launch this new tool before the new feature launched, so I had to set it up to use both the existing tool and the new tool. This meant learning how to use the new tool and being the first one to fully implement something new using this tool. I spent some time nagging the person who set up the tool any time I needed help, but after some learning time, I was able to set up this new feature in the new tool.
At the end of the day, this tool was not something super revolutionary. Yes, there was a bit of a learning curve, but nothing about it was outside my area of expertise, it just involved doing things in a new way. And I was the first person to learn to use this new tool. Since that time, a number of my teammates have used this tool as well (and I had the opportunity to share my knowledge of the tool with my team twice), and I've been excited to see the continued growth of this tool that I had an opportunity to work with from the beginning. As of when I last checked, we were almost fully converted to using the new tool in our pre-production environment, and I'm hoping that we can start to use it in our production environment early in the new year.
Playing My Part In A Big Thing
A few months ago, my company launched a new version of our brand - a new focus on the importance of our work and our emphasis on the population we serve. This new branding involved changes to how we describe our work, as well as changes to our logo and design to match our renewed focus.
The rebrand was a company-wide product, and not only did our language and our marketing website need to be updated, but our products needed to be updated as well. And that's where my team came into play. We needed to update colors and designs in all of our applications. We started with a small team (me and one other developer, with support from a product manager, a designer, and a manager) updating the code for our design system. Once that was done, our awesome designers audited all of our apps and experiences and identified additional areas that needed to be updated. The last step (for me at least) was updating our mobile app, which uses a separate design system.
Working on this project was such an amazing opportunity for me, and one that has strongly influenced my work and my career goals. The opportunity to be part of a company-wide initiative was itself inspiring. Our brand is the first thing we show the world - it tells everyone what our company stands for - and the opportunity to show our renewed focus to our users through our rebranded apps is something I don't want to take for granted. This was also my first opportunity to work very closely with our design team, and I really enjoyed learning how they work and seeing their commitment to making our apps the best they can be. I also enjoyed the opportunity to take a leadership position within my team and to help guide my team through the work of rebranding our apps. Most of all, I enjoyed the work itself, and I learned that I love working with a design system, seeing how small changes can make a big difference, and making sure everything looks perfect. In fact, I enjoyed this work so much that I'd like to eventually move into a position where my primary responsibility is working with a design system and implementing designs.
Working From Back to Front
My year started with my first opportunity to work on our backend codebase, so it's fitting that it's ending with my working on the backend and frontend parts of the same feature. My team is working on a new feature, and my manager and I had planned for me to do some of the frontend work on the feature. I was also looking for an opportunity to take on some backend work, so I volunteered to create a new API endpoint that was needed for this feature. Once the work of creating the new API endpoint was done, I had the opportunity to work on building part of the UI for this feature. Most of the work I've done has involved either backend work or frontend work, and this was my first opportunity to be involved in a new feature from back to front. This feature has also given me the opportunity to work on my understanding of other people's writing and my collaboration skills, as I had to fully understand the tech plan for the feature (written by my team's incredibly smart tech lead) and had to work very closely with my tech lead to ensure that I was executing the plan in the best possible way. I was excited to not only be heavily involved in this project but to have the opportunity to work with a great teammate to ensure that the project is set up for success.
Going into 2020, I had a lot of goals and plans for myself, and most of those never came to fruition. But that doesn't mean the entire year was a failure. I had some good moments this year. I learned a lot. I had the opportunity to build new skills. I improved my communication and collaboration skills by leaps and bounds. I found a new purpose and a new career goal. 2020 may not have been the year I was expecting, but I can't help but be proud of the way I adapted and was able to thrive despite the challenges.