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 own 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 involve 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 saying 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 reached 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.