“Good intentions never work. You need good mechanisms to make anything happen” — Jeff Bezos.
Welcome to this week’s Engineering Manager newsletter.
Leadership roles can be stressful, isolating, and lonely. I recently launched a community for engineering leaders to get training, guidance, and support.
When you join this community, you will get:
Weekly calls to discuss engineering leadership challenges
Direct access to me via DM
A community that can provide advice and support
Courses and training (coming soon)
Thanks for reading.
As a leader, you will encounter many problems that require a systems thinking approach to resolve. Every business is a combination of people and systems.
Your job as a leader is to empower people and improve systems.
Rather than just looking at people as the source of problems, look to the system and environmental factors that impact your business. Generally - “try harder” is an anti-pattern. Everyone is likely already trying to do their best work.
Why Do Systems Matter?
I’ve been responsible for many teams, organisations, and software services in the last five years. One of the big challenges you’ll face as a manager is ensuring things are running smoothly and staying on top of the chaos.
As your scope increases (for example, if you run multiple teams or large organisations), it becomes more important to be able to operate through systems.
Isn’t It All About People?
People are the foundation of any business. However, people operate within a system, and that system can greatly impact their ability to achieve success.
If you hire the smartest and best people but put them in an environment that works against them (bad systems and processes), they will struggle to perform.
The problem
Without well-designed systems:
It will be harder to get things done
Work will be chaotic and stressful
Results will be inconsistent
You won’t be able to scale teams predictably
You cannot consistently achieve success by:
Asking people to “try harder”
Relying on good intentions
Hoping people will remember to do the right things
Forcing people to follow processes that aren’t effective.
Systems
A system is a set of connected parts that work together to achieve a specific goal.
A system contains many processes that work together to achieve the desired goal.
Example
Most businesses need to hire, and it’s a frequent enough task that a clearly defined system should be in place to ensure it is done well and consistently.
Imagine there was no clear system in place. Every time managers needed to hire, they would need to figure out all the steps needed and waste weeks or months figuring out how to perform the correct steps (get approval, what questions to ask in the interview, what to write in the job description).
Without a well-defined system, there would be a huge cost in terms of wasted time and effort. Additionally, candidate experience and the quality of hiring would be wildly inconsistent.
Building this system initially requires a lot of work, but once in place, it ensures that hiring can be done with relatively little effort.
Any system can be measured, documented, and improved. You can review your hiring process and consistently improve speed, efficiency, and candidate experience.
System: Hiring
Goal: Ensure adequate staffing and talent to achieve business goals.
Processes:
Budget approval
Job creation
Candidate selection
Interview scheduling
Interviewing
Candidate pipeline tracking
Offering
Mechanisms
Amazon has a concept it calls a mechanism. This is neither a system nor a process.
Mechanisms help you diagnose the “systematic” problems that are causing problems in your business. Perhaps naively, I would summarise a mechanism systematic solution to a problem that is continually reviewed and improved to ensure it’s effective and adopted.
A mechanism has 6 steps.
Problem
Diagnosis
Solution
Tool
Adoption
Inspection
Example
Customers frequently report performance problems and bugs, but the team doesn’t have visibility or insight into why.
Problem: Customers are consistently reporting problems, but the metrics look fine.
Diagnosis: The team uses average metrics and doesn’t have customer experience dashboards or alerts to detect problems.
Solution: Add customer-centric metrics, dashboards, and alerts. Review weekly.
Tool:
Weekly metrics review
Release checklist to catch performance regressions
Auto rollback in the event of regressions
Adoption: The team attends weekly operations reviews.
Inspection: Review customer metrics in weekly operations review
General Advice
1. Document
Documenting systems and processes is always helpful. This enables everyone to have a clear reference and reduces confusion.
2. Measure
Any system can be measured to understand its performance. For example, a hiring system might have KPIs for how fast candidates can move through the pipeline and the number of candidates interviewed.
3. Visualise
If you can visualise a system, it becomes much easier to understand and reason about.
4. Maintain And Improve
As a leader, it’s important to continually review and improve the systems that drive your business and team. Improving systems has high leverage. For example, a small improvement to how you deliver projects might save hundreds of hours per year for your team.
5. Simplify And Automate
When you have complex systems or processes in your team, eliminating steps is a way to increase productivity.
For example, you might have a complex manual process for gathering status updates from your team. Rather than doing this by hand, you might introduce a system to collect status updates directly from tickets and roll them into auto-generated reports. That might be a minor improvement in a small team, but it could save countless hours of manual work in a large team with hundreds of projects.
Summary
Building and improving systems is hard. But working with ineffective systems is harder. Continually review and improve the key systems in your business, organisation, and teams.
Get In Touch
I’d love to connect on LinkedIn.