Wednesday, August 26, 2020

I'm No Longer a Manager (And that's a good thing)

After 2.5 years as a team lead (manager), I have shifted back to an individual contributor (IC) role. I'd like to talk about that path and transition. 

I've worked at MongoDB for over 6 years at this point. The first 3.5 years I worked as a senior engineer on performance testing, during which we as a company figured out what we really wanted from performance testing. We had some false starts and redirections along the way. After 3 years, we had developed something useful and we were starting to (re)build up the team to grow on that base. Of note, we did not have a true manager for the team at that point and it was time to add one. Two of us on the team had been around long enough to plausibly step into the lead role. We did not want a new lead coming in from outside lacking the context and experience we had gained. I was excited at the prospect of taking on the role and talked to my colleague about it. When we spoke, I found out that not only did he support me, but that he was going to suggest I push for the role even if I hadn’t brought it up. I took on an informal lead responsibility and after a while I was named team lead. 

I immediately put a lot of energy into being the best manager I could be. From previous work experience, I have strong opinions on what constitutes a good manager and I worked on being that good manager. I'm a strong learner, accustomed to trying new things and getting better at them. I did a lot of reading, learning, and trying things. I made sure to put my people first, putting them in good situations in which they could succeed and be happy. I paid attention to what worked and what didn't work and iterated. Sometimes things went well, sometimes they didn't.

I am incredibly proud of what we did as a team since I became lead. We solidified and built up our infrastructure. We changed how things were done internally and we built some really cool stuff (see here, here, here, and here from my recent publications). MongoDB is faster and more stable for the work we did. Which brings us to the present: I'm really proud of what my team did while I was it's lead, but I'm no longer the lead (and that's a good thing). Allow me a short digression in order to explain why. 

As part of my love of learning, I'm always picking up better ways to do things. One of the things I've picked up over the years is tracking the things that make me happy. Or that do the opposite. I've been doing that ever since, and I feed it into my regular reflections and planning. It's an eye opening exercise to do, showing you what really makes you happy, rather than what you think makes you happy. When I look back and review those notes, they are striking. I have a lot of entries around solving a technical problem, or doing/sharing things with other people (cookie club!), or getting a large project done or published. What was missing from the happiness notes was anything related to managing people. Not one case showed up that would qualify as people management. 

I loved certain parts of the job, but managing other people did not bring me joy. In fact it drained my energy. Soon after becoming lead I scheduled a team meeting; We had some stuff to sort out in order to be a better team. We were a distributed team, so we got everyone together in one place. During that week I also took my daughter to see Mean Girls on Broadway. The show was great, but I found myself regularly losing focus on it. Instead I would catch my mind racing about what happened during the past day and thinking through upcoming meetings. I didn’t sleep well that week — work had never impacted my sleep before becoming team lead. That week set the stage for a lot of good things for our team. I am proud of what we did that week, but I did not enjoy that week. Still, I was new to the lead role, so maybe I would grow into it. Things did get better, but I never found myself looking forward to the people management parts of the job or getting energy from them: Giving feedback; Listening to complaints and trying to address interpersonal issues. At most I got relief from them, never elation or joy.

While I am glad to return to IC status, I do not regret my 2.5 years as team lead in any way. I challenged myself, learned new things (skills and about myself), grew, and accomplished things. It required stepping out of my comfort zone, which we must do in order to grow. Ideally, when we step outside our comfort zone, our comfort zone expands to eventually include the new space. When it does not, it is time to re-evaluate.  I am lucky to have had a good manager (and management) who supported me in that re-evaluation. 

Now I’m working to keep the parts of my role that did bring me energy, and remove the parts that did not. I absolutely love the impact I've had on how we test performance. I love all the things that we built, including our structure and processes. I love having insight into so many parts of the engineering organization and helping drive the big picture on performance testing. I love helping junior colleagues learn and grow, sharing learnings with them (so long as I don't also have to evaluate them). I think I'm in a place to continue doing those things. Time will tell. Either way, I will keep learning, trying things, and adjusting based on what I learn. 

Tuesday, January 28, 2020

My Yearly Reflection and Planning

I don't do New Year's Resolutions. I've never liked them, going all the way back to when I was a kid in school. It took me a while to figure out why I don't like them: I don't like them because they aren't useful. The prototypical new year's resolution is setting yourself up for failure. "Don't do X". "Lose weight". "Stop snacking". "Write a book". Especially a goal of the form of "Don't do X" is almost impossible to achieve -- do X once and you've failed.

While I don't do resolutions, I dedicate serious time to reflection and goal setting every year. Goal setting, when done well, sets you up for success. For the last 14 years I've set aside some time around New Year's Day to review the past year, reflect, and set goals for the coming year. Those reflections have literally changed my life and shaped who I am today. I'd like to share my current yearly review and goal setting process in case it might be useful to someone else.

A disclaimer before continuing: I'm sure that none of the ideas described below are original. However, I've been doing this process long enough that I no longer remember where the ideas originally came from. Maybe I'll follow up later and see if I can find and credit the original sources.

Reflection

As suggested by the title, I do two things: I reflect and I plan. I start by setting aside a block of time (several hours) to review the past year and collect notes in a mindmap. I've attached the current template I use (mm, pdf). I like a mindmap for this process as it makes it effortless to first collect all the ideas in whatever form makes sense at the time, and then organize them into a form that makes sense once all the ideas are captured. I use freemind for my mindmaps, but there are several options for mind mapping tools. The main effort of reviewing is to remember what I did and capture the meaningful parts in the mindmap. I accumulate them in the categories on the right hand side of the mindmap (What did I do, What did I do well?, What problems did I face?...). I don't sweat getting things perfectly in the right category at this point, but having the categories already there does help focus what I'm looking for as I review.

Yearly Reflection Template Mindmap
I use several sources to remember what I did the previous year. I start by reviewing last year's goals. This is fairly easy to go through and drives a lot of thoughts. I grade myself in last year's goal mind map, marking whether I achieved goals or not. This is usually partly done before I start to formal year end reflection, as I regularly review my goal mindmap during the year -- I greatly enjoy marking success on goals throughout the year. After reviewing my goals I use my calendars and notes for the year to see what else happened during the year.

I aggressively take notes in Evernote and regularly reflect and journal, so the challenge for me is processing a lot of information. At the end of every day throughout the year, I take time to review my day. I similarly do weekly, and monthly reviews at different levels of detail. I don’t do those reviews to facilitate the yearly review (they are useful in their own right), but they definitely help. This past year I reviewed all my daily reviews. This took longer than I would have liked, so a focus area for me next year is catching more of the important stuff in the weekly and monthly reviews so I can limit my yearly review to the weekly and monthly reflections and skip the daily ones.

As I'm reviewing my year a couple of things naturally occur to me. I naturally think of new goals I want to set and I notice nice things that people did for me. The new goals may be continuations from the previous year (e.g., I did well on X and I'd like to reinforce that and do it even better) or completely new goals. At this stage I just make sure to capture these goals on the mindmap, and then move on.

I also make sure to capture the nice things people did for me. I particularly try to make note of things that, in hindsight, had a big impact -- those aren't always obvious in the moment. At the end of this process I make sure to send thank you notes to the people who did those particularly impactful nice things. I only added writing thank you notes to the process last year, but it's quickly become a highlight for me. It does so many good things. First, it feels really good to genuinely thank people #gratitude. Second, people really appreciate it -- I've gotten a number of "you've made my day" responses. Third, it reinforces good behavior. A lot of things aren't obviously good at the time. A thank you note is an inexpensive but strong positive feedback to good people on their good deeds. If the thank you note is related (in anyway) to someone's job, I make sure to include their boss on the notes when appropriate.

After reviewing the previous year's goals, calendar, and notes, I have a giant mindmap of my year and a large pile of protean goals for the next year. This is a good time for a break, before I organize the whole thing. Then I try to make sense of all of it. I take advantage of the mind map and drag things around and put more value judgements on things. Things that were good go in the good pile. Problems in the problem pile. Duplicates get removed or combined. Similar things are grouped together. It's good a this point to take a step back and take it all in. How was the year? How did you do?

Nice Side Effects

There are a few interesting side-effects of the review process. First, they let me see the big picture across timespan we don't normally have the time to think about. Big change takes time and we are often focused on very small time spans. The second side-effect is it let's me see my accomplishments more clearly. I had a very good 2019, accomplishing a lot of my goals and pushing many things forward. It's nice to pause to see the forest for the trees periodically. It also makes it easier to keep pressing forward on the hard things when I can see that I've made progress on them or similar hard things in the past.

Goal Setting

The next step is the goal setting for the year. Goal setting is remarkably easy at this point. I copy that long list of proposed goals over into a new mindmap, for which I have a template (mm, pdf). I also make another pass through last year's goals to see what else I should pull over or extend. Note that while this is “yearly” goal setting, I make no attempt to make sure I can achieve my goals in one year (more later). The main work is organizing the goals into a useful structure. This year I have 4 top level categories of goals: personal, professional, family, and trips. Trips is a new category for me this year, but it made sense and didn't fit properly elsewhere. The other three have been part of my goals for many years.
Goal Setting Template Mindmap
The last step on goal setting is setting a Commander's Intent -- which is an idea borrowed from the military. The basic idea is to sum up the top level objective of the goals into one sentence. When there is a conflict between the goals, priority issues, or something unexpected, I refer to the Commander's Intent to decide what to do. For instance, last year this was "Better use of time to do more high value things while rushing less ".  Almost everything in my goals fell under that general statement.

At this point I have a huge pile of aspirations that I want to work on right now, which obviously doesn't work. I can't execute on all those goals at the same time -- it just isn't feasible. Additionally, many of the goals need or benefit from buy-in from others. So there are two next steps: buyin with iteration, and breaking goals down into manageable pieces.

For buyin I try to talk to key people related to my goals. These almost always include my wife and my boss, but may include others as well. If a key person does not buy into my goals, the goals may not be reasonable. By talking, I make sure that my goals are possible, gain support on working on those goals, and often am able to refine my goals to something better. Usually all three happen. For instance a good manager can do great things in giving you support on given goals. At the same time, these goals are my goals -- they aren't business commitments for others to measure me by and no one gets to set these goals for me or veto any of my goals. Ultimately I get to decide what the goals are.

The other step is breaking the goals down into manageable pieces. There are two parts to this. Any goal with a date on it needs to have its dependencies laid out so there's a chance to achieve it (standard project management). The second part is deciding what to focus on first/next. I review all my year goals and set Monthly goals. These may be straight from the yearly goals, or something that starts me towards a yearly goal. At the end of the month I review my progress on the monthly goals and yearly goals, and then pick the next month goals. And so on. For the most part I do not try to plan out how and when I’m achieving all the goals, but rather focus on what’s most important now and what am I doing next. I’ve found the year is just to unpredictable to try to schedule everything out at the same time.

At the end of the year I almost always have goals that aren't done. This is expected and just fine. I do not grade myself on the fraction of goals completed, but rather on the holistic progress I've made. Have I worked on the most important things? Have I made progress? Why or why not? Sometimes I've made good progress on a goal and want to continue it. Sometimes a goal is achieved and done. Sometimes I just don't succeed on a goal. I may continue on it or move on. And sometimes I don't achieve a goal because priorities changed. All of these are reasonable outcomes. The point of all the grading is to learn and get better at what matters to you.