How To Stay Technical While In Management

I wrote this for a 5 minute lightening talk at a local tech leadership meetup.

I code. At my previous jobs I coded 30-50% of my time. I would take non mission critical (usually pluming or maintenance) tasks and features. These days I have too many direct reports and way to many stakeholders to code regularly. I do linter changes mostly, lots of code reviews. I stay technical 3 ways;

Change logs / Twitter

I read and attempt to understand new releases of our frameworks, libraries, and tools. Knowing why things changed helps a ton when debugging. I also follow a lot of the creators of the projects on twitter. Between them and the technical community I’m part of I see a lot of the relevant news and changes.

Open source

I’ve always maintained a number of open source projects. This is my hobby and it keeps me sharp. It lets me try out new ideas and technologies and see how they work in production. With a young kid at home this usually happens during nap time or an hour after bed on weekends. (Before kids I could take a whole evening when I wanted!) I have two categories of projects that keep me sharp, Libraries, and projects.

  • Libraries are to refine how we ship code for other people, keeps me on top of api trends, what kind of problems people are trying to solve and it’s a well understood and well scoped problem space that I don’t need to think too hard about to have an impact. My two biggest libraries are Node SerialPort and Streaming Iterables. Which is fun because they’re both JavaScript and my new job is mostly ruby.
  • Projects don’t have to do anything but let me try out new features, frameworks and to scratch my own itch. I have a decentralized video watching application. Where you can watch videos with other people. I have a todo app that uses pouchdb and react hooks that will hopefully one day let me sync between devices.

Deep Work Wednesdays

We have a no meeting Wednesday rule which is fantastic. I often take the morning to dive into a technical problem my team is facing so I can better understand it. Last week it was threads in ruby, I made a proof of concept migration for some singleton patterns in our app and recorded my notes in an upcoming ticket. I craved this work so much I couldn’t put it down until I got into thread safe data structures and eventually had to get to my ever growing todo list.

Final Thoughts

Recently I’ve been studying project management (reread The Phoenix Project recently), development and release processes and team structures. I find this almost as technical as coding, it’s a huge domain of knowledge with a lot of case studies and examples. It’s also about creating an environment that sets people up for success which has a much greater payoff than most endeavors. While it’s harder for me to find online resources that aren’t blog spam this also scratches my technical itch and shouldn’t be considered less.