Yuletide Reflections

Yuletide Reflections

An intern asked me some time ago for advice about choosing which office to start full-time in. When I first started work at Riot Games in 2020, I was based out of our Los Angeles headquarters, but moved in the summer of 2022 to our Seattle office where I’ve been ever since. They were curious what my thoughts were, especially given that I’ve had experience working out of both offices. Without hesitating, I told them they should pick our HQ in Los Angeles. “Besides,” I had said to them, “when you’re early in your career, it’s important to be in an office with some senior engineers on your team. You’ll learn faster that way.”

They replied, “But, aren’t you a senior engineer?”

I was taken aback – I sometimes forget I’m no longer the freshly-graduated college student who first stepped foot on Riot’s campus almost 6 years ago. They had a point. About a year later, they started full-time in the Seattle office. It’s a funny moment to look back on, but was one of the first moments I remember fully realizing and accepting that I was in fact a “Senior Engineer”.

When I was first promoted to being a senior engineer, I was excited. But, I also felt awkward and clumsy, much like how I did as a child whenever my parents bought me a new pair of shoes. At the store, they’d always insist on upsizing at minimum by a full size so that they would last longer. Despite their assurances that I’d quickly grow into them, I remember showing up to school the next day hyper aware of the too-large shoes on my feet and curling my toes with each step so they wouldn’t fall off. But, before long, my frustrations would pass and I would forget my favorite pair of sneakers had ever once felt so strange to walk around in.

This year, I’ve grown into my shoes as a senior software engineer. I’ve improved as a technical leader, and have confidence in tackling and shotcalling projects more complex and impactful than ever before. I had a conversation a bit ago with a teammate/mentor of mine (who is now soon going to be my manager) when he was a senior engineer about when he would get promoted. I told him it looked to me as though his impact already went above and beyond into staff engineer territory, and asked him if he had begun conversations with his manager yet about a potential promotion. In response, he told me it was “comfortable” being a senior engineer, and that he even slightly preferred not being promoted. I took it as him being humble, and hilariously, he was promoted the very next day (my Slack messages with him afterwards were equal parts congratulatory and accusatory, but he claims he genuinely didn’t know).

Looking back at that conversation today, as I myself contemplate the precipice between being a senior and a staff engineer, I realize what he meant that day. As a fairly high-performing senior engineer, I’m able to comfortably deliver impact at a team-level, and when I’ve flexed into a technical leadership role, I’m seen as going above and beyond expectations. However, a staff engineer isn’t held accountable for solely their own work – staff engineers are expected to deliver impact at an area-level, and engineering leadership on a project includes being accountable for its delivery timeliness and soundness. While this work might not seem that different at first glance, it’s become apparent to me lately that the jump in expectations between a senior and a staff engineer is far greater than any jump in leveling expectations I’ve encountered previously.

Standing at this boundary, I’ve lately been thinking about what kind of developer I want to be, beyond just career progression. I enjoy tackling hard problems. I especially enjoy back-end services work and designing architecture. I want to learn things deeply, aiming to understand both the full depth and breadth of our software systems and related dependencies. One thing I always stress to engineers I mentor is the idea of “full ownership”, something that Jules emphasized to me frequently when I first joined VALORANT. She hated vague feedback like “needing to be more confident”, and instead prioritized helping me feel empowered to see our codebase, even if I hadn’t personally contributed to parts of it yet, as my own, and pushing to give me the autonomy to change and revisit any and all previously made technical decisions to solve whatever problems were at hand. She had a myriad of previous experiences before she crossed paths with me as a principal engineer on my team (including a past life as an artist), and she always told me that software engineering was creative because we had constraints. Without any constraints, any solution will do, but because we are limited in resources, the creativity and cleverness in finding workable solutions in that scarcity shines through. She helped me see game development not as something “janky” or “hacky” (although some parts are admittedly rough around the edges), but to instead find the problem space and the challenges that come with shipping large-scale software systems at an aggressive patch cadence and scale incredibly exciting and challenging.

(Jules, who embodied many of the above people who make programming easier, now works at Soft Rains Games and recently shipped Ambrosia Sky!)

This past year, especially the last quarter of it, was full of life-altering moments, and while I always strive to look for the positive in the negative, admittedly some things have weighed more heavily on my mind lately. My cousin was sentenced to 25 years in prison this summer. My lovely cat, Norton, passed away suddenly at the end of September, right when my father was diagnosed with cancer. My father has since received successful surgery that removed what we believe was all known cancerous masses, so hopefully soon he will officially be in remission. My boyfriend, who I’ve now been in love with for over 4 years, just passed the British Columbia bar exam. My best friend from college successfully completed his doctorate defense at Carnegie Mellon University. I started piano lessons with a 100-year-old man who happens to be my neighbor and was a Julliard graduate, who tells me, and truthfully so, that he is my piano teacher, my music teacher, and my life teacher. I also recently wrapped up my final term of the year for my master’s program by successfully finishing my compilers course.

National and world events aside (without meaning to be flippant, we have been in “unprecendented times” for a worryingly extensive amount of time), my industry is undergoing significant changes with the growth and adaption of AI tools. While my day-to-day work has largely been unaffected, I haven’t been isolated from the proliferation of AI coding tools and similar frameworks (I had my first frustrating experience earlier this year arguing with somebody about software design only to find out on their side, they were reading me outputs from ChatGPT). 2025 was declared the Year of the AI Agent, and as this year draws to a close, while general intelligence AI agents haven’t quite delivered all that was promised, the field of software engineering still has gone and will continue to undergo marked changes, spelling worries about job security. This next year is looking to be a defining year for me – one for me to make strides and search for clarity in the direction I’d like to drive my life, including my relationships and especially my career.

But for now, some rest and recovery. Happy holidays to all!