Are you reading this newsletter in your email inbox? Do you have 10+ other newsletters you read every week? Check out Meco. It completely changed the way I consume newsletters - making it an easy habit. For a deeper dive into my approach to consuming articles, podcasts, and books, check out ‘How to keep up with all the digital content’. This is an affiliated link, meaning I’ll get a couple of dollars if you sign up. I truly believe in their product and team!
- Oren Ellenbogen, in Leading Snowflakes Every engineering manager can relate to that. In his short-no-nonsense book (~100 pages), Ellenbogen covers the 9 main lessons he learned along the way. He was a developer, a founder / CEO, a founding engineer, a head of engineering, a VP, and now the SVP of engineering. Today I’m going to cover my 5 favorite lessons from the book, and Oren will share the 2 missing parts he would have added to a 2nd edition. Worth reading till the end :) For a deeper dive and the other 4 great lessons (like scaling your team and teaching how to get things done), check out the book. You can use the CRAZYWEEKEND code for a 50% discount. (Not sponsored and not affiliated!): Oren also writes Software Lead Weekly for the past 12(!) years, a Friday newsletter that curates the best engineering management articles. Alright, let’s dive in: 1. Switching between “Maker” and “Manager” modesWhen we go from a “Maker” into a “Manager” role, we often fall back to our comfort zone. We’re neglecting managerial responsibilities working to complete yet another task instead. It’s much more fun (and immediate!) when getting the work done is completely in our own hands. But let’s face it - no one is being promoted to a managerial position to increase their own productivity. Our job as managers is to amplify our teammates. The tipA small trick I found useful is to visualize my calendar using different colors. I use 2 colors – one for the Manager (blue) and one for the Maker (yellow): I’ve blocked specific ‘Maker’ hours during the week in advance so no one else could set a meeting for me at that time. I make sure to keep my tasks small (<4 hours) and not on the critical path. I usually chose one of the following:
Anton here - this tip was HUGE for me! Choosing what tasks you work on is critical when you have so little time to code. 2. “Code Review” Your Management DecisionsEngineers are taught how to make technical decisions. You first participate in design reviews of senior engineers, and then you start to lead them yourself. You get feedback from more experienced people, and develop your own system of assessing the tradeoffs and reaching a decision. Engineering management is NOT like that. You are expected to make most of the decisions yourself. You don’t want to admit that you don’t have a clue to your boss or teammates. you are afraid to show how frightening it is to be responsible for someone else’s success. The tipStart by writing down your decisions. Any time you have a dillema, just note it in a spreadsheet. Then, in your next 1:1 with your boss, pick 2 dilemmas from your list and conduct a “code review” on your decisions. I recommend that you start by describing the dilemma (not the decision!) and let your boss say how she would handle it. Only then, share the decision you’ve made at the time, and see how she reacts to it. Have an honest discussion, and talk about the tradeoffs as you see them. Another great option is to find a fellow Engineering Manager in the organization you trust and do that exercise in turns. Sometimes just the act of presenting our dillema to others will be a huge step forward, even without the feedback. 3. Confront and challenge your teammatesWhen I was promoted, I was doing everything within my power to avoid hurting my team and remaining their friend:
The tipDick Costolo, Twitter’s CEO, uses the term “The Leader’s Paradox”–as managers and leaders, we need to care deeply and thoroughly about our people, while not worrying about what they think of us. Anton here - this is my eternal struggle. I covered my own experience in the article: 4. Build trust with other teams in the organizationOnce we start building better communication with other managers, how can we build trust between our teammates and other teams in the organization? Here are a few ideas that could help with this effort:
5. Optimize for business learningAs Engineering Managers, it’s up to us to protect the team from investing in the wrong place. While we may feel this is the CEO’s or the Product Team’s responsibility to make such decisions, it’s our job to make these tradeoffs visible. We cannot afford to bury our heads in the code, hoping things will be fine. Technical Debt is less scary than getting out of business - optimizing code or scaling up components that may or may not be used is sticking our heads in the sand. I love to use the famous Pirate Metrics (AARRR) framework for that:
If our retention is pretty low and our visitors do not come back to use our application, then we shouldn’t invest money in acquiring more users just yet. Or, if our activation is poor and almost no one completes the task we believe represents best our value, then investing time in improving retention would probably be a complete waste. Anton here - this was my favorite part of the book. It falls to us, the engineering managers, to ask the PMs the hard questions. We are the final gatekeepers of the business. The missing parts - by OrenTen years have passed since I published Leading Snowflakes. If I had to go back and work on a 2nd edition, I'd cover two more areas I found foundational:
I'm excited to see so many great resources becoming available to engineering managers - books, newsletters, conferences, and workshops. Our world is changing faster than ever, and I'm certain that the needs of managers will shift with it. What I enjoyed reading this week:If you found it useful - please hit the ❤️ to help it reach others! I would love to get any comments or thoughts, here or on LinkedIn. |