I feel like I’m wasting away.
I spend ~10 hours each weekday within the world of Work, and I no longer enjoy it (but oh how I used to!). I scramble around, I’m in meetings, I help with planning, I get pinged and pulled into conversatons. I get annoyed with people and their incompetence, and my incompetence. I avoid the work I need to do (Why? Don’t want to face reality. Of what? That I have to get this boring-ass sh*t done? idk). I’m learning still, but what I’m learning now is mostly ‘How to Improve Coordination and Cross-Functional Collaboration’ (vs more technical skills). And coordination problems are annoying.
So I rebel, I slack off, I procrastinate, I don’t fully focus on work. I half-work throughought the day, which extends my working hours because of guilt plus the actual things that need to get done.
There are very few days now where I feel satisfied, like “OK I got a lot done today” in the sense of deep, meaningful work (that doesn’t inolve me doing some rogue coding; a sign maybe). It feels like choppy work salad, and it’s really not doing it for me. I often find myself shouting, to myself, “I wish I could retire” or “I don’t want to work”.
How did I get here?
I’ve been at my company for a while now (6.5 years!). But the last two and a half years, basically starting with COVID, have felt kinda like I’ve been stuck on rails. I’m only really noticing it now, looking back while writing this.
I’d reached maybe minor Guru status (I’m half-joking here). And then the company wants to use you for more high-leverage work. But the qualities that get you to become a Guru in the first place are not indicative of if you will like or succeed in this higher role. I was a domain owner and then I grew into a leader within my org, partly out of my own interest in taking on the role but also partly out of a sense of duty and necessity.
Right now, I do a lot of planning and very little coding. And after writing this all out, I think I’m in the wrong role for me!
…
So what now? I can think of a few steps forward:
Tweak existing systems and hand them off to new folks to take over
Then move to a new team/domain and restart my Guru journey again
Or… just leave and do something else
Or maybe there is a way to transform my current role into something where I do get to code, and tinker, and go into the weeds more. We’ll see what I can do here.
1 There’s a suggestion in this video from A Life Engineered (a Principal Eng @ Amazon), where you heavily prioritize completing The Most Imporant Things you need to do that day, preferably within a reserved block of 3-4 hours on your calendar. I thought, maybe if I did this I would feel accomplished. But I even had trouble implementing this because I think my premise was flawed, in that, I understood the work was important but I was not engaged in the work. So I never ended up feeling accomplished or satisfied, even if I did eventually get the important stuff done one way or the other.
2 Maybe we should adjust how we think about career development and levels for software engineers–it’s a lot from how I grew up and went through school, but if there’s levels I feel the need to keep Leveling Up! The higher the better, always!! And that’s just not the case (I even tweeted about this almost exactly 1 year ago!). Out of L4, L5, L6, maybe you actually like being an L4 the most and you’re damn good at it. (And there’s a lot of value in working with someone who is an excellent coder and collaborator.) Maybe the IC track should split into Coding vs Technical Design or something like that. Maybe I needed to be up for promo for L6 to see this, idk. I have a couple of friends like this who keep refusing promotions, and now I think they’re geniuses.
3 I recently made a video talking about why I switched from EM back to IC. But I think this post is already an iteration on those thoughts, since now I have a better picture of the kind of IC work I want to be doing.