How to Manage Engineers: Will Larson

A discussion with CTO Will Larson on applying leadership concepts to software development, based on his extensive experience in the field.
A cover image showing a discussion between a leader and a software development team, with an overlay

On this page

The content features Will Larson, a seasoned engineering leader, sharing his insights on effective management and leadership in the engineering field. He highlights the importance of experience, deliberate practice, and the right motivations in being a good manager. Larson also shares his evolving management style, emphasizing the significance of long-term problem solving, flexibility in achieving goals, and balancing immediate action with long-term learning. He further discusses the role of a new VP of Engineering or CTO, the importance of accurately interpreting signals from customers and executives, and addressing social challenges within the team.

How does it apply to you?

These insights can be applied in a real-world scenario where a software development team is dealing with management issues. These could include disagreements within the team, lack of communication, or difficulty interpreting feedback from customers or executives. The key is to balance understanding with action and to approach problems with flexibility and a long-term perspective.

Developer Checklist Refined

Management Skills

Understand the Importance of Experience: Acknowledge that experience is crucial in management as it allows you to learn from past mistakes and try different approaches. The expected outcome is a more informed approach to decision-making.
Practice Deliberately: Engage in deliberate practice by trying different things and learning from others. The expected outcome is a broader perspective and more innovative solutions.
Maintain the Right Motivations: Ensure that your motivations for management are not just about promotion or increased earnings, but about having an impact through and with your team. The expected outcome is a more effective and dedicated management style.
Learn to Surface Disagreements Constructively: Learn to voice disagreements in a constructive way, recognizing that you might not always have the full context. The expected outcome is improved communication and better decision-making.
Adopt Long-term Problem Solving: Focus on long-term problem solving rather than immediate confrontation. The expected outcome is a less confrontational environment and more effective solutions.
Be Flexible in Achieving Goals: Practice being flexible in achieving your goals, approaching tasks in ways that help get them done efficiently. The expected outcome is improved productivity and goal achievement.
Balance Immediate Action with Long-term Learning: Balance immediate action with long-term learning when addressing urgent issues. The expected outcome is more sustainable solutions that consider the broader context.
Decode Customer Feedback and Executive Concerns: Learn to accurately interpret signals from customers and executives to diagnose underlying issues. The expected outcome is a better understanding of customer and executive needs and concerns.
Address Social Challenges and Relationship Gaps: Identify and address social issues within the team, such as poor relationships or lack of communication. The expected outcome is improved team performance.
Balance Understanding with Action: Strike a balance between understanding the issues within the organization and taking action. The expected outcome is effective decision-making that considers both knowledge and urgency.

Engineering Management

Measure Engineering Performance: Implement metrics to measure the performance of the engineering organization. Use these metrics within the team to identify areas for improvement and enhance practices and processes. Expected outcome is an improved and efficient engineering team.
Value of Engineering Metrics: Use engineering metrics like CI/CD build time or stability of tests for internal operations. These should inform decisions on where to invest resources. Expected outcome is more informed decision making and resource allocation.
Impact on Business: Consider the impact of engineering on business metrics. This should be a joint discussion with the product team. Expected outcome is improved understanding and representation of engineering's business impact.
Investment Decisions: Engage in discussions about operating the product, such as determining the number of engineers needed to support reliability SLAs. These should provide insights into the impact of reliability on business aspects like customer renewals. Expected outcome is informed staffing and investment decisions.
Separate Metrics: Separate engineering effectiveness metrics from business impact when communicating with stakeholders. Expected outcome is clearer communication with stakeholders who may not have technical expertise.
Collaboration: Foster joint ownership and collaboration between product design and engineering. This should lead to quicker progress and better products. Expected outcome is improved product development.
Redefining Evaluation: Change the approach to evaluating design and engineering. Focus on whether the effort is solving a user problem rather than the time it takes to get feedback. Expected outcome is a more user-focused evaluation process.
Engineering Efficiency: Dedicate teams to improving engineering efficiency metrics and developer productivity. Expected outcome is a continual improvement in engineering efficiency.
Leverage Smaller Teams: Take advantage of improved tooling and SaaS providers to accomplish more with smaller teams. Expected outcome is more efficient and effective teams.
Use of Vendor Services: Adopt a strategy of 'buying when it's not strategic', meaning if a task isn't unique to your company, consider using a vendor service. Expected outcome is more time for the company to focus on its core competencies.
Negotiate Vendor Costs: Negotiate lower prices with software vendors due to economic conditions. Expected outcome: Reduction in costs.
Develop Internal Solutions: Consider developing your own software solutions if vendor prices cannot be reduced satisfactorily. Expected outcome: Potential cost savings in the short term.
Invest in Small Teams: Slow down the empowerment of small teams and development of internal tools due to economic pressure. Expected outcome: Decrease in vendor costs and increase in headcount costs.
Prepare for Vendor Shutdowns: Prepare contingency plans for potential vendor shutdowns due to economic conditions. Expected outcome: Mitigate the risk of losing progress from vendor shutdowns.
Invest in Mental Wellness Tools: Despite economic pressures, continue investing in mental wellness tools for employees. Expected outcome: Improved mental wellness and productivity.
Invest in Technical Infrastructure: Allocate budget for technical infrastructure to boost productivity. Expected outcome: Increase in productivity.
Avoid Overcommitting on Projects: Avoid overcommitting on projects based on flawed theoretical arguments about productivity. Expected outcome: More focused and effective project execution.
Dedicate Resources: Dedicate a fixed amount of resources to projects in small companies. Expected outcome: Justifiable and manageable project costs.
Establish a Product Infrastructure Team: Establish a small team dedicated to 'Product Infrastructure' to improve developer productivity. Expected outcome: Improved developer productivity.
Maintain Resource Ratios: For larger companies, maintain a ratio between developer productivity infrastructure and product engineers. Expected outcome: Balanced resource allocation.
Negotiate Head Count Allocation: Negotiate head count allocation based on trust and ongoing discussions. Expected outcome: Fair and agreeable resource distribution.
Adopt Trend-Driven Technologies: Consider adopting trending technologies and moving towards more abstraction. Expected outcome: Stay updated and competitive in the technology landscape.
Understand Technology Limitations: Understand the limitations of past approaches and the shift towards containerization. Expected outcome: Improved technology decisions.
Avoid Overreliance on Domain-Changing Technology: Avoid basing strategies solely on the emergence of a fundamentally domain-changing technology. Expected outcome: More stable and reliable technology strategies.
Anticipate Technological Shifts: Keep an eye on emerging technologies and anticipate how they might disrupt existing systems and practices. This can help in staying ahead of the curve and preparing for necessary changes.

Team Management

Manage Team Energy: Monitor and manage the energy levels of your team to avoid burnout. This will ensure sustained productivity and the completion of meaningful goals.
Be Selective in Undertaking Tasks: Choose tasks wisely, ensuring you have the time and energy to see them through to completion. This will lead to greater satisfaction and improved outcomes.
Avoid Unfinished Changes: Refrain from initiating changes that cannot be completed. This applies to both technological and social changes within the organization.
Leverage Remote Work for Hiring: Utilize the flexibility of remote work to broaden the talent pool during hiring. This can lead to a more diverse and skilled workforce.
Adapt to Remote Work: Ensure your company has the necessary practices in place to succeed in a remote environment. This will help maintain effectiveness and productivity regardless of physical location.
Maintain Flexibility in Workplace Strategies: Understand that there is no one-size-fits-all approach to workplace strategies. Maintain flexibility to accommodate the unique needs of your team.
Foster a Documentation Culture: Promote a strong culture of documentation within the company. This can aid in knowledge transfer and continuity of operations.
Define Clear Engineering Strategies: Ensure that your company's engineering strategy is clear and well-defined. This can help prevent conflicts and streamline decision-making processes.
Maintain Consistency in Engineering Practices: Strive for consistency in areas like documentation and programming languages. This can lead to increased efficiency and reduced confusion.
Document Inconsistencies: Identify and document areas where inconsistency has been costly in the past. This will help prevent future disagreements and improve process efficiency.
Strategic Use of Vendors: Consider outsourcing non-strategic functions to vendors. This can save time and resources, and prevent debates about whether to build certain functions in-house.
Standardization in Engineering Strategies: Standardize and maintain consistency in your engineering strategies. This will provide clarity, eliminate confusion, and promote uniformity in engineering practices.
Attributes of a Great Staff Engineer: Understand that a staff engineer's role is not primarily about writing code, but coordinating efforts and working with cross-functional partners. This will help align the role with the company's business objectives.
Misconceptions about Staff Engineers: Dispel misconceptions about the role of a staff engineer. Understand that it is a leadership role requiring coordination, not just an advanced software engineering position.
Understanding Team Structure: Gain a deep understanding of your team structure. This knowledge is crucial for effective management and can lead to better team performance.

Personal Growth

Reading for Growth: Read widely to gain a variety of ideas and perspectives. This can help in becoming a better manager or excelling in any field.
Book Recommendations: Consider reading recommended books such as 'Thinking in Systems: A Primer' and 'Don't Think of an Elephant: Know Your Values and Frame the Debate'. These books can provide transformative insights.

Summary

Introduction and Guest Background

The video features Will Larson, who has had experience working with top companies like Uber, Stripe, and currently holds the position of CTO at Calm. He has written several books on engineering leadership, including 'An Elegant Puzzle'. The discussion revolves around engineering practices, leadership, and management based on Larson's extensive experience in the field.

Common Interview Answers for CTO Positions

Larson observes a common trend in interviews for CTO positions. Most candidates tend to give generic answers when asked about their plans for the first 90 days, often emphasizing on a learning and listening approach before taking any major actions.

Key Traits of a Good Manager

Larson identifies three main traits that make a good manager. Firstly, experience is crucial as it allows managers to learn from mistakes and try different approaches. Secondly, deliberate practice, which involves trying different things and learning from others, is important. Finally, having the right motivations and interests is key. Management should not be seen as a promotion or a way to earn more, but rather an opportunity to have an impact through and with your team.

Learning from Experience

Larson shares how his management style has evolved over time. He initially had a strong point of view and focused on doing what was 'right'. However, he realized that this approach was not always effective in achieving the desired outcomes. He cites an example of his time at Uber where pushing hard on the CTO on disagreements did not help change the decisions. He learned the importance of surfacing disagreements in a constructive way and recognizing the potential lack of full context on his part.

Problem Solving over Rounds

The speaker emphasizes the importance of long-term problem solving rather than immediate confrontation. Initially, when presented with a problem or decision they disagreed with, they would try to oppose it immediately. However, they found that these decisions had often already been debated and were hard to change. They learned that instead of attempting to change decisions at the end of a round, it was more effective to add their perspective over rounds for the next cycle. This approach was less confrontational and more successful in effecting change.

Flexibility in Accomplishing Goals

The speaker learned the importance of being flexible in achieving their goals. Rather than being motivated by a sense of justice, they realized they needed to approach things in ways that helped get them done, which often required a more efficient and flexible approach. This realization came from their experiences leading teams at various companies.

Role of a New VP of Engineering or CTO

When a new VP of Engineering or CTO is hired, it's typically because there's an issue that needs to be addressed. The speaker notes that it's common for these executives to give a standard answer in interviews about taking time to learn and listen in the first 90 days. However, in reality, they often need to start addressing issues immediately due to the urgency of the situation. While it's important to take action, it's also crucial to learn about the company and understand what should be done in the longer term.

Balancing Immediate Action and Long-term Learning

The speaker emphasizes the importance of balancing immediate action with long-term learning. While it's often necessary to address urgent issues immediately, it's also important to take the time to understand the company, the tech stack, the stakeholders, and the specific issues at hand. This involves diagnosing problems and understanding the nuances of the situation, rather than making sweeping changes without fully understanding the context.

Decoding Customer Feedback and Executive Concerns

The speaker discusses the importance of accurately interpreting signals from customers and executives. These signals can be misleading or vague, and it's crucial to diagnose the underlying issues causing frustration. The goal is to identify one or two main points of concern that can be addressed to show impact to the CEO or board. This process often involves identifying 'fires' within the company that need immediate attention.

Addressing Social Challenges and Relationship Gaps

The speaker discusses the common social challenges faced by organizations. Often, a new CTO is brought in because of social issues within the team. These issues could be due to poor relationships between team members or lack of communication between departments, such as engineering and design. Identifying and addressing these issues early on is crucial for improving overall team performance.

Balancing Understanding with Action

The speaker emphasizes the need to balance understanding the issues within the organization with taking action. The two common mistakes leaders make are not learning enough about the issues at hand before taking action, and waiting too long to take action. Striking the right balance between these two approaches is a core challenge for leaders.

Measuring Engineering Organization Performance

The speaker discusses the importance of measuring the performance of the engineering organization. However, he warns against over-reliance on 'engineering effectiveness metrics'. While these metrics can help identify areas for improvement, they can also lead to unnecessary and unproductive discussions at the executive level. The speaker suggests that these metrics should be used primarily within the engineering team to improve practices and processes.

Value of Engineering Metrics

Engineering metrics, such as CI/CD build time or stability of tests, are extremely valuable for internal operations. They can inform decisions on where to invest resources. However, these metrics should not be presented to stakeholders as the sole output of engineering. The value engineering brings to a company goes beyond metrics and includes abilities like shipping user-facing features and operating existing systems.

Engineering's Impact on Business

Engineering has a direct impact on business. Rather than segregating metrics into product and efficiency, the impact of engineering should be represented in business metrics, jointly with products. This way, engineering and product can jointly discuss with the business the impact they are driving by building and operating the product.

Investment Decisions and Business Impact

Discussions about operating the product, such as determining the number of engineers needed to support reliability SLAs, are grounded in the business and not abstract. These discussions can provide insights into the impact of reliability on renewals for enterprise customers, for example. Similarly, estimating potential impact for the work done helps determine staffing needs. These discussions help the business make fundamental trade-offs, such as investing in operating at a higher standard versus building more product features.

Engineering Effectiveness Metrics vs. Business Impact

While engineering effectiveness metrics are useful internally, they may not be as beneficial for external stakeholders, such as the board, who may not have the expertise to provide useful feedback. Therefore, it's important to separate engineering effectiveness metrics from the business impact when communicating with stakeholders.

Commonalities and Differences in Successful Teams

Across different companies and team sizes, a common element of successful teams is the joint ownership and collaboration between product design and engineering. Avoiding silos and working together to understand and solve constraints leads to quicker progress and better products.

Redefining Evaluation of Design and Engineering

The speaker emphasizes the need for companies to change their approach when evaluating design and engineering. Instead of focusing on the time it takes to get feedback on a proposal, the focus should be on whether the design or engineering effort is solving a user problem. The main goal should be the same across all functions of the company. The speaker believes that the success of design and engineering should be judged on their impact, just like any other product.

Importance of Engineering Efficiency

The speaker points out that successful companies often have teams dedicated to improving engineering efficiency metrics. These teams work 'underneath the hood', focusing on continually improving the developer productivity and making the right investments. Without this constant attention to detail, the speaker warns that engineering efficiency can decline over time.

Trend Towards Smaller Teams

The speaker observes a trend where companies are able to accomplish more with smaller teams. This is largely due to improved tooling and the rise of Software as a Service (SaaS) providers. The speaker cites Stripe as an example of a company that has leveraged this trend, providing payment processing services that companies previously had to build themselves.

Evolution of Infrastructure Management

The speaker recounts how companies have evolved from running their own physical hardware in leased data centers to utilizing cloud services. This shift has streamlined operations and eliminated many of the problems associated with managing physical infrastructure. However, the speaker notes that some companies, like Uber, still maintain a significant amount of their own physical hardware.

Strategic Use of Vendor Services

The speaker talks about the strategy of 'buying when it's not strategic', meaning if a company doesn't think they can do something exceptionally unique, they should simply buy a vendor service that can do it for them. This approach has been facilitated by the availability of funding, allowing companies to invest in vendor tools that can save them time and allow them to focus on their core competencies.

Challenges for B2B Vendors in Software Space

Business-to-business (B2B) vendors in the software industry are likely to face difficulties due to economic conditions. Companies are running out of financial runway and will likely negotiate hard for lower prices or cease their use of certain vendors' services. If these vendors cannot reduce their prices enough, companies may opt to develop their own solutions, even if they are inferior, because it may be more cost-effective in the short term. This could lead to a rough period for B2B vendors in the software space.

Implications for Small Teams and Internal Tool Development

The economic pressure on companies and vendors is likely to slow down the empowerment of small teams within companies and the development of internal tools. Companies may choose to build their own tools rather than using vendors, which could lead to a decrease in vendor costs but an increase in headcount costs. This shift may not be evident in a company's profit and loss statement, but it could have significant implications for productivity and efficiency.

Impact of Economic Conditions on Vendor Landscape

In the current economic climate, many vendors may shut down due to lack of funding and inability to become profitable. This could lead to companies losing out on years of progress as they scramble to reimplement their own solutions. While the long-term outlook still favors the use of vendors, the next five years may see a temporary regression due to the current funding environment.

Significance of Mental Wellness in Current Times

Despite the economic downturn and the pressure on companies to reduce costs, the importance of mental wellness has not diminished. In fact, the need for mental wellness has become even more acute due to the pandemic. This may affect how companies allocate their spending, with mental wellness tools like Com becoming increasingly relevant and important.

Investing in Technical Infrastructure

Companies may need to invest in technical infrastructure to boost productivity. This could involve setting aside a budget for a fixed number of engineers who can work on improving productivity across the company. The value of this investment can be determined by measuring the increase in productivity that these engineers bring about.

Flawed Theoretical Argument

The speaker discusses a flawed theoretical argument that doesn't hold up in practice. The argument is based on the idea that there are diminishing returns in terms of the actual number of projects you can undertake that will significantly increase productivity.

Small Company Strategy

For small companies, the speaker suggests starting with a fixed amount of resources dedicated to a project. The speaker believes it's easy to justify having around four to five people working full-time on a project. This can be hidden in the budget quite easily.

Product Infrastructure

The speaker talks about having a small team dedicated to 'Product Infrastructure' that solely works on improving developer productivity. This team's budget allocation remains constant over time.

Ratio Strategy

For larger companies, the speaker suggests maintaining a ratio between developer productivity infrastructure and product engineers. For instance, a 1:4 ratio between people working on infrastructure and developer productivity and those working on product engineering.

Head Count Allocation

The speaker emphasizes that head count allocation is more about trust between parties. The process involves negotiating where the budget should go. This process is not based on fixed rules, but on ongoing discussions among executives.

Infrastructure Discussion

The speaker discusses the infrastructure at Uber, mentioning that they had their own servers and are now moving to the cloud. A trend towards more abstraction is observed, with the use of Docker and serverless functions.

Trend Driven Technology

The speaker believes that trends and popularity heavily influence technology decisions. For instance, the speaker compares the early Google Cloud offerings, which was effectively a serverless platform, to modern serverless technologies, noting the similarities despite the time gap.

The speaker discusses the ongoing trend in the technology sector. They mention the limitations of past approaches and the shift towards containerization. Drawing a parallel with the Ruby on Rails and Sinatra frameworks, they indicate a preference for less 'magic' and more declarative, controlled approaches. The speaker believes there's a slow arc towards more abstraction in technology.

The Absence of Domain-Changing Technology

The speaker emphasizes that there hasn't been a fundamentally domain-changing technology that has taken off in the past decade. While there were hopes that web3 and crypto would bring about significant changes, these expectations haven't been met yet. The speaker mentions the transformative impact of the rise of the internet and mobile technology, which broke and reshaped all existing abstractions because they didn't work the same way. They anticipate another paradigm-breaking technology in the future that will disrupt existing abstractions.

Prospects for Future Technological Improvements

The speaker expresses hope for the continued improvement of abstractions in mature tech stacks that have been used for many years, such as the internet and mobile technology. They also touch on the possibility of the rise of smart contracts and their potential deployment in the future.

The Importance of Managing Team Energy

The speaker discusses the importance of managing the energy of a team. They recount their early career experiences where they found themselves drained of energy due to the pursuit of causes that felt important but left them depleted and unable to see them through to completion. They stress the need for energy management and picking battles wisely to avoid burnout and ensure the accomplishment of meaningful goals. They highlight the idea of bringing about change and growth in companies in a sustainable manner, rather than being a 'flash in the pan'.

Importance of Selectivity and Completion in Undertaking Tasks

The speaker emphasizes the need to be selective in the tasks or improvements one decides to undertake, particularly in a work environment. The speaker points out the importance of ensuring that one has the time and energy to see tasks through to completion. This is likened to carrying out a major software infrastructure migration, where starting many migrations simultaneously without the capacity to finish them can lead to turmoil and confusion, leaving the company worse off. The speaker encourages a shift in focus from the desire to feel productive by starting many things, to ensuring that what is started can be finished, which ultimately leads to greater satisfaction and improved outcomes for companies and teams.

The Detrimental Effect of Unfinished Changes

The speaker highlights that starting a change without the ability to finish it doesn't benefit anyone, whether it's a technological change like migrating from one programming language to another, or a social change like modifying performance reviews. The speaker suggests that this realization has transformed their approach to management, leading to greater happiness for themselves and the teams they work with.

Impact of Remote Work on Hiring Best Talent

The speaker discusses the impact of remote work on hiring the best people. They suggest that remote work can broaden the talent pool beyond the social network of a company's workers. However, the speaker also notes that companies were forced to move to remote work due to the pandemic, and those that were not well-prepared for this shift may struggle to be effective.

Adapting to Remote Work

The speaker explains that the effectiveness of a company's remote work setup largely depends on whether they have deliberately built practices to succeed in a remote environment. Companies that were forced to shift to remote work without changing their practices may struggle. The speaker mentions that companies that were already remote before the pandemic, such as GitLab, didn't need to change much and are still effective. The speaker suggests that the question should not be about remote versus in-person, but rather about whether a company has adapted to succeed in a remote environment.

Flexibility of Workplace Strategies

The speaker emphasizes the importance of flexibility in workplace strategies. He states that one approach is not necessarily best for all companies, and it is overly simplistic to think so. The reality is, companies are made up of people who can succeed in many different ways. Therefore, the speaker suggests that it's not crucial to have one standard way of working, as there are many ways to be successful.

Importance of Documentation Culture

The speaker discusses the importance of having a strong documentation culture within a company. He brings up GitLab as an example, which apparently has a strong culture of writing documents. This kind of practice can be a part of various engineering strategies that work well in different companies.

Challenges in Defining Engineering Strategy

The speaker indicates that 'engineering strategy' is an overloaded term that can mean different things at different companies. It could refer to technology choices, team formation, planning structure, etc. The speaker finds the term tricky to parse due to its broad usage. However, he suggests that engineering strategies can be useful to prevent conflicts and debates, especially in areas where being consistent is important.

Role of Consistency in Engineering Strategies

The speaker highlights the importance of consistency in the context of engineering strategies. He explains that consistency matters in areas like documentation and programming languages. Introducing new languages that require different build systems or dependencies can be expensive and disrupt existing processes. The speaker recommends documenting areas where inconsistency has been costly in the past to prevent future disagreements.

Strategic Use of Vendors

The speaker shares an example of a documented strategy from his experience, which involves using vendors for non-strategic functions. For instance, while A/B test enrollment is a critical capability, there are many vendors who can handle this, eliminating the need to build something from scratch. This strategy has saved them from numerous debates about whether to build or not to build certain functions themselves.

Standardization and Consistency in Engineering Strategies

The discussion emphasizes the significance of standardization and consistency in engineering strategies. It is highlighted that in the face of debates and differing perspectives, it's crucial to find an answer, document it, and move forward. This approach ensures clarity, eliminates confusion, and promotes uniformity in engineering practices.

Attributes of a Great Staff Engineer

The conversation moves to discuss the attributes of a great staff engineer. It is mentioned that a staff engineer's role is not primarily centered around writing a vast amount of code. Instead, they are someone capable of coordinating various efforts and working with cross-functional partners to find a path forward. Their role is defined by the needs of the company to achieve its business objectives.

Misconceptions about the Role of a Staff Engineer

There are misconceptions about the role of a staff engineer, with many engineers desiring a low-coordination role with more respect, higher pay, and increased autonomy. However, this is not typically available at most companies. The role of a staff engineer can vary greatly between companies, with no standard definition or certification agency to ensure uniformity.

Staff Engineering as a Leadership Role

Staff engineering is viewed as a leadership role that requires slightly different work with a different focus. Although it requires software engineering expertise, the role is fundamentally different and should not be seen merely as an advanced software engineering position. The discussion encourages people to consider whether they desire the role to exist or whether it is a role the business needs to exist.

Discussion on Team Structure

The speaker discusses the importance of understanding team structure. They emphasize that this knowledge is crucial for effective management. They also mention that their colleague, Will, has extensive experience in top tech teams worldwide and is a valuable resource for such insights.

Book Recommendations for Engineers and Managers

The speaker is asked for book recommendations for engineers or managers. They suggest their own book, 'Elegant Puzzle', but also mention the importance of reading widely to gain a variety of ideas and perspectives. The speaker believes that reading is key to becoming a good manager or excelling in any field.

Specific Book Recommendations

The speaker recommends several books that they found transformative. The first is 'Thinking in Systems: A Primer' by Donella Meadows, which they describe as a foundational book in systems thinking. The second is 'Don't Think of an Elephant: Know Your Values and Frame the Debate' by George Lakoff, which the speaker credits with changing their perspective on communication and debate. They also mention several classic texts, such as 'Peopleware', 'Slack', 'Mythical Man Month', 'Good Strategy, Bad Strategy', and 'Five Dysfunctions of a Leadership Team'.

Closing Remarks and Appreciation

The speaker concludes by expressing appreciation for the time spent and knowledge gained during the discussion. They strongly recommend 'The Elegant Puzzle' and 'The Staff Engineering Book' for engineers aiming to reach a staff level position. They also express their hope that viewers will learn from the discussion.

FAQs

Who is Will Larson? Will Larson is a professional with experience working with top companies like Uber, Stripe, and currently holds the position of CTO at Calm. He has written several books on engineering leadership, including 'An Elegant Puzzle'.

What are the key traits of a good manager according to Larson? Larson identifies three main traits that make a good manager: experience, deliberate practice, and having the right motivations and interests. Management should not be seen as a promotion or a way to earn more, but rather an opportunity to have an impact through and with your team.

What is the importance of long-term problem solving? Long-term problem solving is important as it is more effective in effecting change than immediate confrontation. Decisions are often hard to change immediately as they have been debated extensively. Adding perspective over rounds for the next cycle is a less confrontational and more successful approach.

What is the role of a new VP of Engineering or CTO? A new VP of Engineering or CTO is typically hired to address an issue. While it's common for these executives to emphasize a learning and listening approach in the first 90 days, they often need to start addressing issues immediately due to the urgency of the situation. However, it's also crucial to learn about the company and understand what should be done in the longer term.

What is the importance of decoding customer feedback and executive concerns? Decoding customer feedback and executive concerns is important as these signals can be misleading or vague. It's crucial to diagnose the underlying issues causing frustration and identify one or two main points of concern that can be addressed to show impact to the CEO or board.

What are the common social challenges faced by organizations? Common social challenges faced by organizations could be due to poor relationships between team members or lack of communication between departments, such as engineering and design. Identifying and addressing these issues early on is crucial for improving overall team performance.

What is the balance needed between understanding issues and taking action? The balance needed between understanding issues and taking action involves diagnosing problems and understanding the nuances of the situation, rather than making sweeping changes without fully understanding the context. The two common mistakes leaders make are not learning enough about the issues at hand before taking action, and waiting too long to take action.

What is the importance of measuring the performance of the engineering organization? Measuring the performance of the engineering organization is important for identifying areas of improvement. However, these metrics should be used primarily within the engineering team to improve practices and processes, and not lead to unnecessary and unproductive discussions at the executive level.

What is the value of engineering metrics? Engineering metrics, such as CI/CD build time or stability of tests, are extremely valuable for internal operations. They can inform decisions on where to invest resources. However, these metrics should not be presented to stakeholders as the sole output of engineering.

How does engineering impact business? Engineering has a direct impact on business. The impact of engineering should be represented in business metrics, jointly with products. This way, engineering and product can jointly discuss with the business the impact they are driving by building and operating the product.

How do discussions about operating the product help the business? Discussions about operating the product, such as determining the number of engineers needed to support reliability SLAs, are grounded in the business. These discussions can provide insights into the impact of reliability on renewals for enterprise customers and help the business make fundamental trade-offs.

How should engineering effectiveness metrics be used? While engineering effectiveness metrics are useful internally, they may not be as beneficial for external stakeholders, such as the board, who may not have the expertise to provide useful feedback. Therefore, it's important to separate engineering effectiveness metrics from the business impact when communicating with stakeholders.

What is a common element of successful teams? A common element of successful teams is the joint ownership and collaboration between product design and engineering. Avoiding silos and working together to understand and solve constraints leads to quicker progress and better products.

How should companies evaluate design and engineering? Companies should evaluate design and engineering based on whether the design or engineering effort is solving a user problem. The success of design and engineering should be judged on their impact, just like any other product.

What is the importance of engineering efficiency? Successful companies often have teams dedicated to improving engineering efficiency metrics. These teams work 'underneath the hood', focusing on continually improving the developer productivity and making the right investments.

What is the trend towards smaller teams? Companies are able to accomplish more with smaller teams due to improved tooling and the rise of Software as a Service (SaaS) providers.

How has infrastructure management evolved? Companies have evolved from running their own physical hardware in leased data centers to utilizing cloud services. This shift has streamlined operations and eliminated many of the problems associated with managing physical infrastructure.

What is the strategic use of vendor services? The strategy of 'buying when it's not strategic' means if a company doesn't think they can do something exceptionally unique, they should simply buy a vendor service that can do it for them. This approach has been facilitated by the availability of funding, allowing companies to invest in vendor tools that can save them time and allow them to focus on their core competencies.

What are the challenges for B2B vendors in the software space? The content does not provide specific challenges for B2B vendors in the software space.

What challenges are B2B vendors in the software industry likely to face due to economic conditions? B2B vendors in the software industry may face difficulties due to companies running out of financial runway and negotiating hard for lower prices. If vendors cannot reduce their prices enough, companies may opt to develop their own solutions, which could lead to a rough period for these vendors.

How might economic pressure impact small teams and internal tool development? The economic pressure on companies and vendors is likely to slow down the empowerment of small teams within companies and the development of internal tools. Companies may choose to build their own tools rather than using vendors, leading to a decrease in vendor costs but an increase in headcount costs.

What is the impact of current economic conditions on the vendor landscape? In the current economic climate, many vendors may shut down due to lack of funding and inability to become profitable. This could lead to companies losing out on years of progress as they scramble to reimplement their own solutions.

How is mental wellness significant in current times? Despite the economic downturn, the importance of mental wellness has not diminished. In fact, the need for mental wellness has become even more acute due to the pandemic, affecting how companies allocate their spending.

Why might companies need to invest in technical infrastructure? Companies may need to invest in technical infrastructure to boost productivity. This could involve setting aside a budget for a fixed number of engineers who can work on improving productivity across the company.

What is the flawed theoretical argument discussed? The flawed theoretical argument discussed is based on the idea that there are diminishing returns in terms of the actual number of projects that can significantly increase productivity.

What is the suggested strategy for small companies? For small companies, it's suggested to start with a fixed amount of resources dedicated to a project, with around four to five people working full-time on a project.

What is the 'Product Infrastructure' discussed? The 'Product Infrastructure' discussed involves having a small team that solely works on improving developer productivity. This team's budget allocation remains constant over time.

What is the suggested 'Ratio Strategy' for larger companies? For larger companies, it's suggested to maintain a ratio between developer productivity infrastructure and product engineers. For instance, a 1:4 ratio between people working on infrastructure and developer productivity and those working on product engineering.

What does the speaker emphasize about head count allocation? The speaker emphasizes that head count allocation is more about trust between parties. The process involves negotiating where the budget should go and is not based on fixed rules, but on ongoing discussions among executives.

What does the speaker discuss about the infrastructure at Uber? The speaker discusses that Uber had their own servers and are now moving to the cloud. A trend towards more abstraction is observed, with the use of Docker and serverless functions.

What does the speaker believe about trends and technology decisions? The speaker believes that trends and popularity heavily influence technology decisions. For instance, the speaker compares the early Google Cloud offerings, which was effectively a serverless platform, to modern serverless technologies, noting the similarities despite the time gap.

What are the trends and limitations in technology according to the speaker? The speaker discusses the ongoing trend in the technology sector, mentioning the limitations of past approaches and the shift towards containerization. They indicate a preference for less 'magic' and more declarative, controlled approaches, and believe there's a slow arc towards more abstraction in technology.

What does the speaker emphasize about the absence of domain-changing technology? The speaker emphasizes that there hasn't been a fundamentally domain-changing technology that has taken off in the past decade. While there were hopes that web3 and crypto would bring about significant changes, these expectations haven't been met.

What are the prospects for future technological improvements? The speaker hopes for the continued improvement of abstractions in mature tech stacks that have been used for many years, such as the internet and mobile technology. They also mention the possibility of the rise of smart contracts and their potential deployment in the future.

Why is managing team energy important? Managing team energy is important to avoid burnout and ensure the accomplishment of meaningful goals. It's necessary for bringing about change and growth in companies in a sustainable manner.

Why is selectivity and completion important in undertaking tasks? Being selective in tasks or improvements to undertake is important to ensure that one has the time and energy to see tasks through to completion. Starting many tasks without the capacity to finish them can lead to turmoil and confusion.

What is the impact of unfinished changes? Starting a change without the ability to finish it doesn't benefit anyone, whether it's a technological or a social change. This realization has transformed the speaker's approach to management, leading to greater happiness for themselves and their teams.

How does remote work impact hiring best talent? Remote work can broaden the talent pool beyond a company's workers' social network. However, companies that were not well-prepared for this shift may struggle to be effective.

What is the importance of adapting to remote work? The effectiveness of a company's remote work setup largely depends on whether they have deliberately built practices to succeed in a remote environment. It's not about remote versus in-person, but about whether a company has adapted to succeed in a remote environment.

Why is flexibility important in workplace strategies? Flexibility in workplace strategies is important because one approach is not necessarily best for all companies. Companies are made up of people who can succeed in many different ways, so it's not crucial to have one standard way of working.

Why is having a strong documentation culture important? Having a strong documentation culture within a company is important because it can be a part of various engineering strategies that work well in different companies.

What are the challenges in defining an engineering strategy? 'Engineering strategy' is an overloaded term that can mean different things at different companies. However, it can be useful to prevent conflicts and debates, especially in areas where being consistent is important.

What is the role of consistency in engineering strategies? Consistency is important in areas like documentation and programming languages. Introducing new languages that require different build systems or dependencies can be expensive.

What is the recommended approach to prevent future disagreements in processes? The speaker recommends documenting areas where inconsistency has been costly in the past.

What is the strategic use of vendors in engineering? Using vendors for non-strategic functions can save time and prevent debates about whether to build certain functions from scratch.

What is the importance of standardization and consistency in engineering strategies? Standardization and consistency in engineering strategies ensure clarity, eliminate confusion, and promote uniformity in engineering practices.

What are the attributes of a great staff engineer? A great staff engineer is capable of coordinating various efforts and working with cross-functional partners to find a path forward. Their role is defined by the needs of the company to achieve its business objectives.

What are common misconceptions about the role of a staff engineer? Many engineers desire a low-coordination role with more respect, higher pay, and increased autonomy. However, this is not typically available at most companies.

How is staff engineering viewed as a leadership role? Staff engineering is a leadership role that requires slightly different work with a different focus. It requires software engineering expertise, but the role is fundamentally different and should not be seen merely as an advanced software engineering position.

What is the importance of understanding team structure? Understanding team structure is crucial for effective management.

What are some book recommendations for engineers or managers? The speaker recommends their own book, 'Elegant Puzzle', and other books like 'Thinking in Systems: A Primer' by Donella Meadows, 'Don't Think of an Elephant: Know Your Values and Frame the Debate' by George Lakoff, 'Peopleware', 'Slack', 'Mythical Man Month', 'Good Strategy, Bad Strategy', and 'Five Dysfunctions of a Leadership Team'.

What are the closing remarks of the speaker? The speaker concludes by expressing appreciation for the time spent and knowledge gained during the discussion and recommends 'The Elegant Puzzle' and 'The Staff Engineering Book' for engineers aiming to reach a staff level position.

Glossary

Balancing Immediate Action and Long-term Learning: The importance of addressing urgent issues immediately while also taking time to understand the company, the tech stack, the stakeholders, and the specific issues at hand. This involves diagnosing problems and understanding the nuances of the situation, rather than making sweeping changes without fully understanding the context.

Balancing Understanding with Action: The need to balance understanding the issues within the organization with taking action. The two common mistakes leaders make are not learning enough about the issues at hand before taking action, and waiting too long to take action.

Common Interview Answers for CTO Positions: A common trend in interviews for CTO positions where candidates give generic answers when asked about their plans for the first 90 days, often emphasizing on a learning and listening approach before taking any major actions.

Decoding Customer Feedback and Executive Concerns: The importance of accurately interpreting signals from customers and executives. These signals can be misleading or vague, and it's crucial to diagnose the underlying issues causing frustration.

Flexibility in Accomplishing Goals: The understanding of being flexible in achieving goals. Rather than being motivated by a sense of justice, the need to approach things in ways that help get them done is emphasized, which often requires a more efficient and flexible approach.

Key Traits of a Good Manager: The three main traits that make a good manager: experience, deliberate practice, and having the right motivations and interests.

Learning from Experience: The evolution of management style over time, learning the importance of surfacing disagreements in a constructive way and recognizing the potential lack of full context.

Problem Solving over Rounds: The importance of long-term problem solving rather than immediate confrontation. The approach of adding perspective over rounds for the next cycle, which is less confrontational and more successful in effecting change.

Role of a New VP of Engineering or CTO: When a new VP of Engineering or CTO is hired, it's typically because there's an issue that needs to be addressed. The need to start addressing issues immediately due to the urgency of the situation while also crucial to learn about the company and understand what should be done in the longer term.

Addressing Social Challenges and Relationship Gaps: The common social challenges faced by organizations. These issues could be due to poor relationships between team members or lack of communication between departments, such as engineering and design. Identifying and addressing these issues early on is crucial for improving overall team performance.

B2B Vendors in Software Space Challenges: The difficulties that B2B (business to business) vendors face in the software industry.

Commonalities and Differences in Successful Teams: The shared traits and unique factors found in successful teams, such as joint ownership and collaboration between product design and engineering.

Engineering Effectiveness Metrics vs. Business Impact: The distinction between internal engineering effectiveness metrics and their external business impact.

Engineering's Impact on Business: The direct influence that engineering has on business outcomes, such as product development and operational efficiency.

Evolution of Infrastructure Management: The transition from running physical hardware in leased data centers to utilizing cloud services, streamlining operations and eliminating many issues related to managing physical infrastructure.

Importance of Engineering Efficiency: The critical role of continually improving engineering efficiency metrics, enhancing developer productivity and making the right investments.

Investment Decisions and Business Impact: The discussions about operating the product, such as determining the number of engineers needed to support reliability SLAs, that are grounded in the business and not abstract.

Measuring Engineering Organization Performance: The process of evaluating the performance of the engineering organization, with a caution against over-reliance on 'engineering effectiveness metrics'.

Redefining Evaluation of Design and Engineering: The need to shift focus from the time it takes to get feedback on a proposal to whether the design or engineering effort is solving a user problem.

Strategic Use of Vendor Services: The strategy of 'buying when it's not strategic', or investing in vendor tools that can save time and allow focus on core competencies when a company doesn't think they can do something exceptionally unique.

Trend Towards Smaller Teams: The pattern where companies are able to accomplish more with smaller teams due to improved tooling and the rise of Software as a Service (SaaS) providers.

Value of Engineering Metrics: The importance of engineering metrics, such as CI/CD build time or stability of tests, for informing decisions on where to invest resources.

B2B Vendors: Business-to-business vendors who provide services or products to other businesses. In the context of the software industry, these vendors may face difficulties due to economic conditions, as companies negotiate for lower prices or develop their own solutions.

Small Teams and Internal Tool Development: The process of small teams within companies developing internal tools. Economic pressure may slow down this process as companies choose to build their own tools rather than using vendors, potentially leading to decreased vendor costs but increased headcount costs.

Economic Conditions on Vendor Landscape: The impact of economic conditions on the landscape of vendors. In difficult economic climates, vendors may shut down due to lack of funding, causing companies to lose progress and scramble to implement their own solutions.

Mental Wellness: The state of one's mental health and well-being. Despite economic downturns, the importance of mental wellness in workplaces has not diminished, potentially impacting companies' spending allocations.

Technical Infrastructure: The foundational services and structures required to operate and manage IT environments. Companies may need to invest in technical infrastructure to boost productivity.

Flawed Theoretical Argument: An argument or theory that doesn't hold up in practice. This often involves the idea of diminishing returns in project undertakings.

Small Company Strategy: Strategies employed by small companies, often involving dedicating a fixed amount of resources to a project.

Product Infrastructure: A small team dedicated to improving developer productivity, with a budget allocation that remains constant over time.

Ratio Strategy: A strategy for larger companies, which involves maintaining a ratio between developer productivity infrastructure and product engineers.

Head Count Allocation: The process of negotiating where the budget should go in a company, based on trust and ongoing discussions among executives.

Infrastructure Discussion: Discussions around the technical infrastructure of a company, such as the transition from using their own servers to moving to the cloud.

Trend Driven Technology: The influence of trends and popularity on technology decisions.

Trends and Limitations in Technology: The ongoing trend in the technology sector towards more abstraction, and the limitations of past approaches.

The Absence of Domain-Changing Technology: The lack of a fundamentally domain-changing technology that has taken off in the past decade.

Adapting to Remote Work: The effectiveness of a company's remote work setup largely depends on whether they have deliberately built practices to succeed in a remote environment. Companies that were forced to shift to remote work without changing their practices may struggle.

Challenges in Defining Engineering Strategy: 'Engineering strategy' is an overloaded term that can mean different things at different companies. It could refer to technology choices, team formation, planning structure, etc. The term is tricky to parse due to its broad usage.

Flexibility of Workplace Strategies: The importance of flexibility in workplace strategies. One approach is not necessarily best for all companies, and it is overly simplistic to think so.

Impact of Remote Work on Hiring Best Talent: Remote work can broaden the talent pool beyond the social network of a company's workers. However, those that were not well-prepared for this shift may struggle to be effective.

Importance of Documentation Culture: The importance of having a strong documentation culture within a company. This kind of practice can be a part of various engineering strategies that work well in different companies.

Importance of Managing Team Energy: The importance of managing the energy of a team. The need for energy management and picking battles wisely to avoid burnout and ensure the accomplishment of meaningful goals.

Importance of Selectivity and Completion in Undertaking Tasks: The need to be selective in the tasks or improvements one decides to undertake, particularly in a work environment. The importance of ensuring that one has the time and energy to see tasks through to completion.

Prospects for Future Technological Improvements: The continued improvement of abstractions in mature tech stacks that have been used for many years, such as the internet and mobile technology. The possibility of the rise of smart contracts and their potential deployment in the future.

Role of Consistency in Engineering Strategies: The importance of consistency in the context of engineering strategies. Consistency matters in areas like documentation and programming languages.

The Detrimental Effect of Unfinished Changes: Starting a change without the ability to finish it doesn't benefit anyone, whether it's a technological change like migrating from one programming language to another, or a social change like modifying performance reviews.

Attributes of a Great Staff Engineer: A great staff engineer is someone capable of coordinating various efforts and working with cross-functional partners to find a path forward. Their role is defined by the needs of the company to achieve its business objectives.

Book Recommendations for Engineers and Managers: Reading widely is key to becoming a good manager or excelling in any field. Books recommended include 'Elegant Puzzle', 'Thinking in Systems: A Primer', 'Don't Think of an Elephant: Know Your Values and Frame the Debate', 'Peopleware', 'Slack', 'Mythical Man Month', 'Good Strategy, Bad Strategy', and 'Five Dysfunctions of a Leadership Team'.

Closing Remarks and Appreciation: Concluding statements expressing appreciation for the time spent and knowledge gained during the discussion. It includes book recommendations for engineers aiming to reach a staff level position.

Discussion on Team Structure: Understanding team structure is crucial for effective management. Colleagues with extensive experience in top tech teams worldwide can provide valuable insights.

Misconceptions about the Role of a Staff Engineer: Misconceptions about the role of a staff engineer include the desire for a low-coordination role with more respect, higher pay, and increased autonomy. The role of a staff engineer can vary greatly between companies, with no standard definition or certification agency to ensure uniformity.

Staff Engineering as a Leadership Role: Staff engineering is a leadership role that requires slightly different work with a different focus. It requires software engineering expertise, but is fundamentally different and should not be seen merely as an advanced software engineering position.

Standardization and Consistency in Engineering Strategies: The significance of standardization and consistency in engineering strategies is highlighted. In the face of debates and differing perspectives, it's crucial to find an answer, document it, and move forward. This approach ensures clarity, eliminates confusion, and promotes uniformity in engineering practices.

Strategic Use of Vendors: A strategy which involves using vendors for non-strategic functions. This can eliminate the need to build certain functions from scratch, saving time and resources.

Resources

Book - An Elegant Puzzle: Written by Will Larson, this book provides insights into engineering leadership and management based on his extensive experience in the field.

An Elegant Puzzle: Systems of Engineering Management
Shared via Kindle. Description: There’s a saying that people don’t leave companies, they leave managers. Management is a key part of any organization, yet the discipline is often self-taught and unstructured. Getting to the good solutions for complex manage…

Book - Thinking in Systems: A Primer: Written by Donella Meadows, this book is described as a foundational text in systems thinking.

Thinking in Systems: International Bestseller
Shared via Kindle. Description: <p><strong>The classic book on systems thinking—with more than half a million copies sold worldwide!</strong></p><br /><br /><p><strong>“This is a fabulous book… This book opened my mind and reshaped the way I think abou…

Book - Don't Think of an Elephant: Know Your Values and Frame the Debate: Written by George Lakoff, this book is credited with changing the speaker's perspective on communication and debate.

The ALL NEW Don’t Think of an Elephant!: Know Your Values and Frame the Debate
Shared via Kindle. Description: <p><strong>“[Lakoff is] the father of framing.”—<em>The New York Times</em></strong></p><br /><br /><p><strong>“An indispensable tool for progressives—packed with new thinking on framing issues that are hotly debated right no…

Book - Peopleware: A classic text mentioned by the speaker, presumably relevant to engineers or managers.

Peopleware: Productive Projects and Teams
Shared via Kindle. Description: <br /> <p> </p> <p>Few books in computing have had as profound an influence on software management as <i><b>Peopleware</b></i>. The unique insight of this longtime best seller is that the major issues of software develop…

Book - Slack: A classic text mentioned by the speaker, presumably relevant to engineers or managers.

Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency
Shared via Kindle. Description: To most companies, efficiency means profits and growth. But what if your “efficient” company—the one with the reduced headcount and the “stretch” goals—is actually slowing down and losing money? What if your employees are bur…

Book - Mythical Man Month: A classic text mentioned by the speaker, presumably relevant to engineers or managers.

Mythical Man-Month, The: Essays on Software Engineering, Anniversary Edition
Shared via Kindle. Description: <p>Few books on software project management have been as influential and timeless as<b> The Mythical Man-Month</b>. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for any…

Book - Good Strategy, Bad Strategy: A classic text mentioned by the speaker, presumably relevant to engineers or managers.

Good Strategy Bad Strategy: The Difference and Why It Matters
Shared via Kindle. Description: <b><i>Good Strategy/Bad Strategy</i> clarifies the muddled thinking underlying too many strategies and provides a clear way to create and implement a powerful action-oriented strategy for the real world.</b><br /> <br />…

Book - Five Dysfunctions of a Leadership Team: A classic text mentioned by the speaker, presumably relevant to engineers or managers.

The Five Dysfunctions of a Team: A Leadership Fable, 20th Anniversary Edition (J-B Lencioni Series Book 43)
Shared via Kindle. Description: <p><b><i>The New York Times</i> best-selling team leadership handbook for modern executives, managers, and organizations</b></p> <p><i>After her first two weeks observing the problems at DecisionTech, Kathryn Petersen, its ne…

Book - The Staff Engineering Book: Recommended by the speaker for engineers aiming to reach a staff level position.

Staff Engineer: Leadership beyond the management track
Shared via Kindle. Description: At most technology companies, you’ll reach Senior software engineer, the career level for software engineers, in five to eight years. At the career level, your company’s career ladder won’t require that you work towards the n…

Subscribe to SmartJots newsletter and stay updated.

Don't miss anything. Get all the latest posts delivered straight to your inbox. It's free!
Great! Check your inbox and click the link to confirm your subscription.
Error! Please enter a valid email address!