BackAir Traffic Control: How Engineering Leaders Keep Everything Running Smoothly
In my last post, I introduced the idea that engineering leaders need to be both Air Traffic Controllers and Sherpas. Today, let's look at what it means to be an Air Traffic Controller in an engineering team.
Think about what a real air traffic controller does: they track all the aircraft, check weather conditions, and manage runway space to keep flights safe and on time. As engineering leaders, we do the same thing with projects, teams, and deadlines instead of planes.
While we're not dealing with actual planes, our work is just as important. We need to make sure every project can start and finish without problems. This becomes even more important as teams grow larger and we handle more projects at once.
This approach is crucial because modern engineering teams are complex:
Many Moving Parts: Like an air traffic controller tracking dozens of planes, you're watching many projects, teams, and deadlines all at once.
Changing Conditions: Your teams face changing business needs and technical challenges that require quick adjustments, just like changing weather affects flight paths.
Important Decisions: You must make big decisions quickly, like whether to delay a release or change project direction, often without having all the information.
Wide Impact: Every decision affects the whole organization. When you prioritize one project, it changes the timeline of others, just like routing one plane affects all other flights.
Keeping Things Stable: While software problems rarely risk physical safety, your decisions affect system stability, team happiness, and business success.
The Air Traffic Controller mindset helps us develop:
As teams become more spread out and projects more connected, these skills become essential for good engineering leadership.
The main job of an Air Traffic Controller is deciding what's most important right now. We're always balancing:
Good leaders often use tools like task boards, sprint planning meetings, or custom dashboards to see all ongoing work.
Here's how to get better at setting priorities:
Setting priorities is ongoing work that needs constant attention. The best Air Traffic Controllers develop a good sense for when priorities need to change and how to make those changes smooth for their teams.
Good Air Traffic Controllers don't just fix problems; they prevent them. This means having good systems to spot and prevent issues.
We need good ways to spot problems early. This means watching things like how fast the bug list grows and how often we release code. We also need to watch for signs of team tiredness or low engagement, as these often come before bigger problems. Slow code reviews and delayed releases can show process problems that need fixing. We also need to watch for technical debt to prevent long-term problems.
Managing risks means having a system to find and fix potential problems. Keep detailed lists of risks for big projects. Review system design regularly to spot scaling issues early. Check security and performance regularly. Document and review near-misses to learn from them. Have clear plans for common problems so we can respond quickly.
Managing team resources needs both planning and flexibility. Train team members in multiple areas to reduce single points of failure. Have clear backup plans for key people. Build relationships with contractors for extra help when needed. Keep track of team skills to understand capabilities and gaps. Share on-call and support duties fairly while helping everyone learn the system.
Good backup planning starts with adding extra time to project schedules, usually about 20%. Know which work can pause if emergencies happen. Keep emergency contact lists updated and know who to call when. Write down recovery steps for important systems. Practice emergency responses regularly to stay prepared.
Managing deadlines means planning ahead. Set early internal goals to catch delays early. Break big deliverables into smaller checkpoints. Have clear criteria for when things are ready to launch. Roll out risky changes in phases to catch problems early. Build good relationships with stakeholders to get flexibility when needed.
The goal is to create a system where we find and fix potential problems before they affect delivery or team health. This needs both technical knowledge and good organization skills.
In flying, unclear communication can be dangerous. While software has different risks, clear communication is still crucial for keeping projects and teams running well.
Good meetings start with focused daily stand-ups that find real blockers, not just status updates. Regular team meetings should have clear agendas and written action items. After meetings, write down key decisions and next steps. Keep meetings small with only people who need to be there.
Status updates should be short but highlight important changes and areas needing attention. Use consistent formats and channels for different updates to avoid confusion. Make status information easy to find for everyone involved. Be clear about how often and how detailed updates should be.
Be open about decisions by writing down why and how they were made. Use consistent ways to make decisions across the organization. Include the right people at the right times, and keep records of what was decided and why. Be ready to change decisions as things change, while being clear about the changes.
Have clear rules for when to report problems up the chain. Write down specific paths for different types of problems and set clear expectations about response times. Create standard templates for reporting problems to ensure complete information. Build relationships with people you'll need to contact before urgent situations happen.
Choose the right tools for different messages - chat for quick updates, email for formal messages, or documentation for lasting reference. Keep documentation in one easy-to-find place that team members can update. Create templates for common messages to stay consistent. Get feedback to improve communication, and practice good listening throughout the organization.
The hardest part of being an Air Traffic Controller is making quick decisions under pressure. When multiple problems happen at once, you need a fast way to decide what to handle first. And you need to explain why you made those choices to keep team trust.
Have a clear way to quickly assess problems across different areas like customer experience, revenue impact, and team capacity. Use the same criteria to compare different types of issues fairly. Have clear definitions for how serious problems are. Keep a record of decisions to learn and improve. Practice handling different scenarios to build confidence for real emergencies.
Have clear ways to weigh difficult trade-offs. Think about both quick fixes and long-term effects while balancing technical debt and urgent needs. Consider team capacity and burnout risks in decisions. Keep stakeholders informed about priority changes to maintain trust.
During problems, give clear, short updates to everyone affected and explain decisions in terms of business impact. Keep communication channels open but focused on critical issues. Write down decisions and reasons in real-time for transparency. Follow up with detailed explanations after the crisis to build understanding.
Build team trust by being open about tough choices. Admit when things are uncertain while still taking action. Support team members making hard decisions. Share credit for successes and take responsibility for mistakes. Regular reviews after incidents help create shared understanding and stronger teams.
Start learning right after major incidents while details are fresh. Write down lessons learned and update processes. Share insights across teams to spread knowledge. Keep building this knowledge base to handle future problems better.
Two big releases are scheduled for the same time, causing a resource problem. As the Air Traffic Controller, we:
The goal is to keep both projects moving while keeping the team healthy. This means carefully balancing resources, adjusting timelines without derailing either project, and keeping the team motivated despite the pressure. We look for creative solutions, like finding shared work or breaking big tasks into smaller pieces. Most importantly, we keep talking openly with both project teams to keep spirits high and prevent burnout while meeting business goals.
A critical system problem happens mid-sprint, needing immediate action. Our job is to:
Here, staying calm, making quick decisions, and keeping the big picture in mind is crucial. We need to balance fixing the urgent problem with keeping team morale high and preventing burnout. This means:
The goal is to solve the crisis while keeping the team effective and trusting. Our calm approach helps the team stay focused and confident in handling the situation.
While the Air Traffic Controller role focuses on keeping everything running smoothly, it's only part of good leadership. I also want to look at how this works with the Sherpa role, where you focus on helping teams grow skills, set goals, and build strength.
Remember, good Air Traffic Controllers create conditions for teams to succeed. By finding issues before they get big, making timely decisions, and communicating clearly, you can help your organization succeed without problems.