My second Spotiversary
#workAnother year flew by since my first Spotiversary! Over the last year, I enjoyed the privilege of meeting and learning from more great colleagues, went through three managers and multiple reorgs, survived even more layoffs, gained more in depth understanding of our product and business, and made more contributions toward increasing shareholder values. It is not all sunshine and rainbows, but I am still grateful for all the opportunities my job provides me and now ready for more.
But of course, a bit of reflection is in order.
Making each step count
I experienced my first burnout. I got a project to lead in last fall, but it kept getting pushed back due to shifting priorities and changes in requirements. The delay was doubly frustrating because it was my first major project to drive and circumstances were simply out of my control. When I got a chance to work on the project again in late Spring, I was feeling pressured to go fast and show results. The pressure was entirely self imposed because I saw it as a sort of proving ground. I was (and still am, to a degree) also self conscious as a relative latecomer to the software engineering career and wanted to reach the “senior” level before too late.
Unfortunately, this misplaced eagerness to prove myself led to a series of missteps that got my manager to step in, requiring increased scrutiny on my PRs and contributions. (I had my own excuses and justifications then, but looking back, I can see why the manager felt the need to slow me down.) Shortly after, the project got deprioritized yet again as the team had to shift focus to other projects with tighter deadlines. I was also given a chance to “embed” in another team for a couple of months and support them to ship UI features. I accepted.
Having to really take a step back from my project all the while collaborating with new people, digging into a fresh set of codebase and projects, and finally getting some features out the door—all these were a huge relief. I regained my motivation to learn, code, and ship! This then helped me to return to the original project by both advising teammates and making direct contributions. And just last week, almost a full year after I got started with the project, we finally started the rollout! It still has a few rough edges and many follow-up tasks, but what’s out is out and it gives me a much needed closure.
Note: Well, the product got rolled back within a week due to some last minute shifts in product strategy. Definitely a bummer, but the work and growth that led to the initial launch was real. C’est la vie!
After this rollercoaster of a year, I’ve found peace. The biggest win isn’t in how many features are shipped and how fast. It’s in the experience gained from the process that can be applied to improve the existing product as a whole and inform the future direction. Of course I’d like to see everything I build to meet the end users and deliver values—this feeling almost got me into trouble! But now I see that it’s okay if some of it doesn’t see the light in their current form due to the shifting priorities and evolving strategy. I’m still pushing things forward when I put all the lessons learned into work. It’s the journey, not the destination—and I choose to make each step count.
Growing at and outside of work
Clearly, I’ve learned a ton from work. The scope of the aforementioned project included spinning up a new backend service as well as a new web client, making significant changes to existing projects for integration, figuring out new design and patterns to align with a broader tech initiative, and more. To get this done, I had to step outside my comfort zone: diving head first into Google Cloud and Kubernetes, learning more about the internal CI/CD pipeline, getting more familiar with Java and its ecosystem, digging through Protobuf and OpenAPI schema documentations, and more. I also led and attended many, many meetings to build alignment with various partners—designers, PMs, and engineers from other teams—so we could deliver.
It was indeed a major lift and despite quite the bumpy road along the way, I’m very happy that I was given a chance to drive it from initial design to completion. And I look forward to further advancing in my skills and experience at work.
But that’s not all. I’ve grown a lot outside of work. The most notable part of this has to do with gaining a bit of online presence through lucky happenstances. Earlier this year, a well known member and a popular content creator in the online web dev community Theo somehow found my blog post “React, Solid, htmx”, liked it a lot, and featured it on his livestream.1 A couple months later, Theo featured another post “Component, colocation, composition” on his livestream again.2 This series of events, in addition to the undeniable privilege of presenting myself as an engineer at Spotify, has gained me an audience on social media (about 1.2K followers on Twitter) and for this blog—as well as a renewed motivation to put myself out and engage with my peers. Last month, I even started attending an in-person local meetup again!
Engaging with awesome peers, both online and offline, pushes me to learn new things, which in turn give me ideas and materials for this blog. Plus, knowing that my blog may have an audience motivates me to write better. The resulting blog posts can then generate opportunities to engage with more awesome peers. It’s a virtuous cycle, and I intend to keeping this cycle going.
* * *
My first year at Spotify led me to appreciate the new opportunites presented to me, and the second year gave me real challenges and chances to learn and grow on all fronts. I can’t wait to see what the third year will bring.
Footnotes
-
Watch Theo’s YouTube video on “React, Solid, htmx”. ↩
-
Watch Theo’s YouTube video on “Component, colocation, composition”. ↩