Management
Height & Linear are nice project management tools. I use GitHub issues and Height for all my project management tasks. Want to build a nice desktop client app for GitHub similar to Ship/Height.
The Managers Handbook, Basecamp Employee Handbook, Engineering Management for the Rest of Us & Mochary Method Curriculum have nice ideas.
Top things that I think are must have for productive working environment:
- Psychological safety and trust in engineering to lead.
- Coworkers that intrinsically care about their work.
- Coworkers that are fantastic people.
- Meaningful work.
I dislike daily standups and think they are a waste of time. It's better to setup environment where it's clear what is done, who works on what and unblocking happens in real time by simply writing how you're blocked and what you tried.
Although I did hear some companies do optional daily standups at some reasonable times with success.
It's great to do team overviews either weekly or monthly to make sure the focus of the team is right given team's long term goals.
If all above is done well and the tasks are organized by priority. With tasks being well defined for why they were added and how to approach solving them. Specifically as it can be used later in case some decisions/features need to be reversed, there would be a clear log for why something was added. Having squashed PRs be associated to issues makes this process clear and nice for current and new developers.
I also found doing estimations to be a waste of time. Things are done when they're done. However setting sometimes aspirational deadlines is great motivator.
The way VSCode manages their issues as part of monthly sprints is great example of above I find.
I go over how I personally approach solving individual tasks here.
Notes
- As a CTO, my default loop is 'First, cycle through all my employees and make sure that I have equipped them to be happy and productive in their jobs. Second, find something to do. If possible, delegate it; if not, do it. Repeat.
- Ideas are more important than age.
- Just because someone is junior doesn't mean they don't deserve respect and cooperation.
- So much of good management is so simple: recognizing when your people need a challenge vs. when they need help.
- Review of Ted Lasso show and Ted's focus on making everyone in the team being the best version of themselves.
- Do you need to estimate the shit that needs to be done? No! It all needs to be done. The dev team will do it as fast as they can. Estimating the work will only waste time they could spend getting the shit done.
- It’s taken me years to realise I do not aspire to manage, only to mentor.
- Once a manager makes it clear they don’t value you, believe them. And move on.
- Bad management is so endemic in tech companies that weak managers often don't even know they are weak, and power dynamics often mean they have no motivation to improve.
- Don't be afraid to bring it up or leave under bad management.
- How to have an effective 1:1? Stop doing status updates.
- Unnecessary process drains people's energy so much that it becomes highly inconvenient to pay attention to any detail.
- Adding value by asking "What does the success metrics look like for this?" meanwhile the opportunity is clear, the team is underresourced, and behind on execution.
- That's the way it's always been" is never an adequate reason to continue doing something.
- Звонок (тем более всей команды) — это очень дорогая операция. Нормального созвониться раз в неделю. Нормально созвониться, если есть конфликт.
- At Shopify, we tend to do whatever our engineers want in this regard. My team meets weekly and looks at a kanban project board. If we need to adjust, we have retros, etc and change the process. We have the autonomy. IMO while you need some consistency to get alignment on goals at a high level and coarse quarter-level goals, at the team level you can more or less let the team decide and then judge them on their effectiveness. (Tweet)
- Holding others accountable is overrated. Holding yourself accountable is underrated.
- Organize to reduce context switch and communication overhead.
- Two hardest problems in engineering management: 1. What's the priority? 2. How will we measure impact?
- Annual planning: remember that goals must be set top down by the leader, and that bets (and resources) to hit the goals must be set bottoms-up by the team. And have weekly iterations for the two (goals and bets/resources) to converge.
- Picard management tip: If you're on red alert every day, then red alert means nothing
- Keep the decisions you're making visible and discoverable. When it's done well, all the other work is a lot easier.
- It’s easy to be the nice manager that just says things that keep people happy. The only one unhappy is the future manager who gets the fun job of having to catch up on real feedback to help people grow.
- I'm consistently surprised by how the single act of doing this as an eng manager or product manager makes incredible waves: Send an email explaining what your team did the past 1-2 weeks, what your plans are for the next period, blockers & lessons learned.
- Performance will always fall to the minimum acceptable level
- Weekly standing 1:1's with every direct report are largely a waste of time and create bricked out calendar hell as organizations scale
- Drive home the mission and importance to civilization. Require super high commitment from the team. Be willing to fail publicly and punch back at naysayers.
- Still convinced OKRs are the ultimate google psyops to slow down startups
- One thing I'm really starting to believe about running a small team (< 10 people) is that we should always just work on one thing at a time instead of trying to push three projects forward at once.
Links
- Developing Leaders: What To Do When Your Team Grows Too Big
- Christoph Nakazawa's experience being FB manager
- Steve Jobs on managing people
- The Eng Team Handbook - Developer's guide to management: an open-sourced handbook for leading engineering teams.
- Ask HN: As managers, how do you make sure your distributed team is aligned? (2019)
- Ask HN: What are the signs that you have a great manager? (2019)
- The Power of Performance Reviews: Use This System to Become a Better Manager (2019)
- Teamlead Roadmap (Russian)
- Ask HN: Solo devs, how do you plan your development? (2019)
- 100 Lessons and Spicy Takes on Being a Software Product Manager
- Bryan Cantrill on Engineering Performance Management
- Product Management Mental Models for Everyone (2018)
- Roadmap templates for product management
- Resources for Staff-plus engineers (2020)
- Ask HN: How to self study management, especially supply chain management? (2020)
- Shape Up: Stop Running in Circles and Ship Work that Matters
- Work Is Work (2020) (HN)
- Technology Budgeting Handbook
- Shape Up Your Agile (2020)
- Manager's Playbook - Heuristics for effective management.
- Spotify doesn’t use “the Spotify model” and neither should you (2020)
- Top 100 Resources for Product Managers (Twitter)
- 10 rules of a successful meeting in a tech company
- How to Be a Great Manager (2020)
- Ask HN: How to Disagree with the Rest of Management? (2020)
- Advice to New Managers: Don't Joke About Firing People (2020) (HN)
- You could monitor your team, or you could motivate them (2020)
- People who’ve worked on teams where they felt valued and fulfilled: what made those teams special? (2020)
- Engineering Manager Resources
- Engineering Manager Resources 2
- What makes a good boss? (2020)
- When your coworker does great work, tell their manager (2020) (HN)
- Book Review: High Output Management by Andy Grove (2020)
- Good managers, what they do, how they think & act (2020)
- 12 Powerful Performance Review Examples (+ Expert Tips)
- How to Operate (2020) - Keith Rabois Breaks down operational excellence.
- Software estimation methodologies that actually take into account uncertainty
- Some Thoughts on Estimation (2019)
- Why software projects take longer than you think: a statistical model (2019)
- How Linear.app builds its software
- The software engineering lifecycle: How we built the new Dropbox Plus (2020) (HN)
- Sweary Lightweight Agile Planning
- Company-wide Retrospectives
- We cancelled standups and let the team build (HN)
- Is Netflix CEO Reed Hastings' "Keeper Test" good management? (2020)
- Estimates in software engineering do more harm than good, and drive people to act in dishonest ways (2020)
- Four Keys - Four key metrics that indicate the performance of a software development team.
- What is expected of a Engineering Manager? (2020)
- Using NLP to enable flatter organizations (HN)
- How Apple Is Organized for Innovation (2020) (HN)
- Manager handoffs (2017)
- Manager advice when teammate shares their grief (or other heavy topic)
- Awesome Engineering Team Management
- Engineering Manager Event Loop (2018)
- Use decision records already (Lobsters)
- Why aren’t Lean and Agile Collaborating? (2019) (Tweet)
- 5 second feedback (2020)
- Engineering Manager's Booklist
- 30 tactical tips for managing up (2020)
- Staying organized while executing agile sprints (2020)
- Recommended Engineering Management Books (2020) (Tweet)
- A Strengths Assessment Review (2020)
- Engineering Ladders - Framework for Engineering Managers. (Code)
- Building On-Call Culture at GitHub (2021)
- Designing Engineering Organizations (2021) (HN)
- Team Topologies - Organizing Business and Technology Teams for Fast Flow. (Book)
- No Meetings, No Deadlines, No Full-Time Employees (2021) (HN)
- Ask HN: Which companies work like Gumroad? (2021)
- What Silicon Valley gets about engineers that traditional companies do not (HN) (Lobsters)
- How to Lead a Project - as a Software Engineer
- Improve Team Performance and Turn Around Underachieving Engineering Teams (2021)
- Staff Engineer: Leadership beyond the management track
- An Elegant Puzzle Book Review: an Overdue Read for Software Engineering Leads
- Managing Up: How Developers Can Better Communicate to Management
- Mistakes I've Made as an Engineering Manager (2021) (HN)
- Awesome CTO - Resources for chief technology officers, with the emphasis on startups. (HN) (HN)
- Things your manager might not know (HN)
- Ask HN: Do you think Agile/Scrum is beneficial for software delivery? (2021)
- Common Mistakes of New Engineering Managers (HN)
- Ask HN: Why do companies ask employees to set goals? (2021)
- The Nakazawa Management Starter Pack (2021)
- The Daily Standup Is a Waste of Time (HN)
- Working Backwards: Insights, Stories, and Secrets from Inside Amazon (2021)
- Overcoming the Capitalist's Dilemma, with Andy Jassy, CEO of Amazon Web Services (2020)
- A reading list for new engineering managers (2018)
- Larry Page's Comeback (2014) (HN)
- Use Red/Yellow/Green system for check-ins (2021)
- #1 tip for new managers: protect your energy (2021)
- Write tasks not user stories – Linear Method (HN)
- Manage Work not People (2021)
- A Checklist For First-Time Engineering Managers
- Top Management Skills: SQL, Excel, Clear Communication, Story, Prioritization
- What can managers do to help colleague that came back from a burnout to reintegrate better (2021)
- Staying on the path to high performing teams (2018) (HN)
- Thoughts on Stripe's lack of managers (2021)
- The Managers Handbook (HN)
- The Manager's Path Book
- Building Self-Managed Teams: A Case Study from Riot Games (2021) (HN)
- What’s the best thing a manager has ever done for you? (2021)
- How We Work at Railway (2021)
- Micro-Habits of Effective Managers (HN)
- Awesome Engineering Management (HN)
- The Handbook of Handbooks for Decentralised Organising
- Engineering Management for the Rest of Us
- 7 Management Trust Killers (and how to avoid them)
- Agile at 20: The Failed Rebellion (2021) (HN)
- Why Managers Fear a Remote-Work Future (2021) (Tweet)
- Focus: assign multiple engineers to the same task (Lobsters) (HN)
- Better coordination, or better software? (2021) (Tweet)
- Managing tentpole launches at Gumroad ft. Josh Pigford from Baremetrics (2020)
- Ask HN: Senior Software Engineer to Engineering Manager (2021)
- Ruthless Prioritization (2017)
- Why it’s difficult to build teams in high growth organisations (2021) (HN)
- Ask HN: Managing career progression for those with no interest in progressing? (2021)
- Why We Don't Do Daily Stand-Ups at Supercede (Lobsters)
- A Guide to Becoming a Tech Lead (2021)
- High Performance Organizations Reading List (HN)
- Why Do Companies Have So Many Managers? (2021) - How the modern office needs to start adjusting to foster and cater to talented workers. (Tweet)
- What I Learnt Becoming a Tech Lead (2021) (HN)
- Все о тимлидстве
- How To Navigate Product Management Specializations (Part 2)
- Why "hire awesome people, listen to them and get out of their way" is not advice but wishful thinking (2021)
- Ask HN: How do you do estimates in 2021?
- How Big Tech Runs Tech Projects and the Curious Absence of Scrum (HN)
- Briefing a Delegate (2021)
- What does my engineering manager do all day? (2021) (HN)
- Why is everything so hard in a large organization? (HN)
- Best management books about thinking in non-linear environments (2021)
- Managing up: How to get what you want & give your boss what they need (Tweet)
- Why 'bring solutions not problems' doesn’t work (2021)
- Awesome Project Management
- Understanding the reasoning behind the four agile values (HN)
- FactorialHR - All-in-One Human Resources (HR) Software.
- How we build software at Cloudflare (2021)
- How learned helplessness happens in engineering teams (HN)
- Are daily standups hurting your team? (2021) (HN)
- OKRs vs. KPIs: understanding measurements for your SaaS business (HN)
- Don’t be spooky (HN)
- OKRs masquerade as strategy (2021) (HN) (Tweet)
- Ask HN: What was your experience like moving from an IC to a manager role? (2021)
- Get your OKRs out of my GEMs (2021)
- Tasking developers with creating detailed estimates is a waste of time (2020) (HN)
- Preparing for the (semi-)annual planning
- Why do large companies do planning once, max twice a year?
- #NoEstimates (Allen Holub) (2021) (Tweet)
- The Martian Design Sprint: starting and running projects faster (2021)
- Best thing you've done to work better with your product manager? (2021)
- How I Own Projects as a Software Engineer (2021)
- Inspection and the limits of trust
- Hunting Tech Debt via Org Charts (2021)
- Know how your org works (or how to become a more effective engineer) (2022)
- Cost of Attrition (2022) (HN)
- Performance Reviews for Software Developers – How I Do Them In a (Hopefully) Fair Way
- Managing People (2022) (HN)
- How to manage software developers without micromanaging (2022) (HN)
- Best resources for founders to learn to become better managers (2022)
- How do you make the most of 1:1 time for your direct report?
- Ask HN: Books you should read when you transform from SWE into SWE-Management (2022)
- How to get the most out of your 1:1s (2022) (HN)
- Trunk and Branches Model for Scaling Infrastructure Organizations
- The Big List of Engineering Management Resources (2022)
- Hard to work with (2022) (HN)
- The Anatomy of a 1:1 (2022)
- Agile and the Long Crisis of Software (2022) (Tweet)
- How to give the right amount of context when managing
- Ask HN: How does Apple achieve both secrecy and quality for a release? (2022)
- 11 Promises from a Manager
- Basecamp Employee Handbook
- Thoughts on OKRs (2022) (HN)
- Tasks, lists, and promises (Lobsters)
- High performance individuals and teams
- Awesome Engineering Strategy
- The Engineering Manager | James Stanier
- Reduce Friction (2022) (Tweet)
- Execution Through Ownership (2022)
- Why your daily stand-ups don't work and how to fix them (2022) (HN)
- Ask HN: How does your company handle late running projects? (2022)
- Managing Complex Change
- 1-on-1 questions and resources from my time as a manager
- I don’t believe in sprints (2022) (HN)
- Valve Employee Handbook (2012) (HN)
- Questions to ask before deciding to be a manager
- Preparing technical feedback for Individual Contributors (2022)
- Annual Performance Reviews Ruin Everything (2022)
- Workday - Global HR Management System.
- Mochary Method Curriculum (Tweet)
- Managing tech debt in teams
- Scrum Report - Daily stand up meeting scrum report generator in markdown format for slack.
- Engineering Management Resources
- Writing good performance self reviews (HN)
- Deep work. Essentialism in asynchronous culture (2022) (HN)
- Agile isn’t about speed, it’s about direction (2023) (HN)
- Ask HN: Lead developer but I just don't enjoy management (2023)
- Ask HN: What do you talk about in 1-on-1s with your managers? (2023)
- Ask HN: Strategies for working with engineers that are too smart? (2023)
- Ask HN: What companies have publicly available handbooks? (2023)
- Cal.com Handbook
- Some mistakes I made as a new manager (2023) (HN)