The 9 Characteristics of Effective Systems Leaders
🌍 Think Systemically: Effective systems leaders must see the bigger picture, understanding the complex interplay of history, goals, and varying conditions in their field.
🧠 Have an Open Mindset: Embracing learning, ambiguity, and experimentation is crucial for systems change leaders to challenge the status quo and adapt strategies.
✊ Press for Diversity, Equity, and Inclusion: Leaders should apply a DEI lens to their work, creating constructive discomfort around inequity and championing social justice.
🤝 Build Relationships and Trust: Developing trust and empathy is key for long-term growth and change, understanding and valuing others' emotions and perspectives.
📢 Practice Effective Communication: Listening to diverse viewpoints and crafting narratives that resonate across stakeholders are essential for inspiring collaborative change.
🎯 Focus on Results: Systems leaders should define success and early wins with stakeholders, orienting collaborative activities towards shared goals to break down silos.
🤲 Co-create Support Structures: Joint processes and support infrastructure are vital for deeper collaboration and idea exchange among all involved in the change process.
🌐 Empower the Collective: Distributing leadership and power across multiple levels enhances stakeholder buy-in, decision-making, and the sustainability of change.
💡 Create Opportunities for Participation Benefits: Helping partners see the value of their involvement and the progress made can sustain momentum in systems change efforts.
Engineer Time Saved
How measuring the cost of operations unlocked a quantification of efficiencies and speed of engineering delivery driven by a platform team.
🛠️ Investing in Platform Teams: Platform teams centralize tasks, enabling engineers to focus on their core roles, improving productivity and quality.
⏱️ Measuring Efficiency: Efficiency in engineering is challenging to quantify. It's gauged through the speed of development activities and the reduction of time spent on platform tasks.
📊 Operational Data Analysis: Utilizing data from tools like Jira to measure the time spent on platform-related tasks helps in understanding and enhancing efficiency.
🔄 Transition from Manual to Automated: Shifting platform tasks from manual to self-service and automated processes saves significant time for both platform and product engineers.
🔍 Focus on Micro Efficiencies: Small efficiency gains, like automating tasks or creating a service catalog, accumulate over time, saving considerable resources and improving overall productivity.
🗺️ A project enhancing deployment safety saved 40 engineer years annually, demonstrating the value of precise planning.
⏱️ This project also reduced customer downtime, emphasizing the importance of external impacts in project evaluation.
📈 The platform team's output ratio exceeds 2:1, meaning each month of their effort saves two months of engineer effort, highlighting efficiency and cost savings.
💼 The article suggests proposing headcount requests by demonstrating potential savings in engineer salaries, a strategic approach for team expansion.
🏆 Measuring engineer time saved helps in celebrating project impacts, guiding project priorities, and justifying team expansions.
🚀 Focusing on engineer hours saved has transformed how the team views their work and its value to the company, fostering a productivity-oriented culture.
Manage Your Capacity, Not Your Time
We obsess over managing our time. However, we should focus on managing our capacity instead: it's our ability to do our best work.
🔄 Focus on managing your capacity for work rather than merely managing time.
📚 Quality of time spent on tasks is more critical than the quantity.
🕒 Everyone has a finite capacity for productive work, which varies by individual.
🤹♂️ Avoid the anti-pattern of over-scheduling every minute of the day.
🛑 Leave space in your schedule for unexpected events and tasks.
🚀 Good capacity management makes you available and responsive in times of need.
🔋 Energy levels are variable and directly impact your work capacity.
📉 Tasks that drain energy can reduce your capacity over time.
📈 Engaging in energizing tasks can replenish and even increase your capacity.
🧘♀️ Mindful reflection on energy levels can help maintain high work capacity.
📝 Logging your energy levels and activities can reveal patterns and areas for improvement.
✅ Aim to maintain high capacity to be less reactive and more productive.
How do I progress to the next level in my career?
Let's look at motivation, craft, opportunity and taking ownership.
🧭 Career progression is a personal responsibility and requires taking full ownership.
🔍 Introspection is key to understanding what truly motivates and fulfills you in your career.
🔄 Career paths are often non-linear and unpredictable, resembling a squiggle more than a ladder.
🎨 Focus on honing your craft and aligning your passion to prepare for future opportunities.
💼 Progressing in an organization is a collaborative effort involving your manager, peers, and others.
📈 Understanding the promotion process and visibility within your company is crucial for advancement.
🗣️ Communicating your career goals with your manager can help in creating opportunities for growth.
👥 Building trust and rapport with colleagues is important for both performance and visibility.
🤝 Seek out and model behaviors from those in roles to which you aspire.
🌱 Continual personal development and skill enhancement are central to long-term career success.
Random Thoughts 15 years into Software Engineering
💡 Avoid thinking in absolutes; there are exceptions to every rule and trade-offs in every architectural approach.
🔍 Debuggability is key; consider how you will debug your code in production and leave audit trails.
🕒 Expect projects to be late; keep stakeholders informed of progress and potential delays.
🛑 Aggressively manage your project's scope to avoid overcomplicating or prolonging the project.
🚧 Accept that staging environments will often be broken and that testing in production may be necessary.
🏆 Taking action is more valued than just pointing out problems.
👐 Take ownership of your systems, not just your code, for end-to-end responsibility.
🤝 Understand your role in the larger organization and learn how other departments operate.
❓ Don't hesitate to ask questions, even if they seem simple; it benefits the whole team.
🚫 Technical debt is hard to revisit, so aim to minimize it from the start.
😊 Enjoy your work with code, and appreciate that you can make a living doing something enjoyable.
Beyond Staff Engineer
Some call it “Senior Staff”, some “principal”, others “technical director”, but what comes after Staff Engineer? What are the challenges and tool set to handle higher complexity across a larger org?
💼 The Senior Staff Engineer role is more complex and involves a wider organizational scope than the Staff Engineer.
🛠️ Senior Staff Engineers need a deeper mastery of technologies and must be comfortable with ambiguity.
🗺️ Staff Engineers serve as role models, advisors, and have no direct command over others, much like military staff officers.
🎓 Modern career ladders allow engineers to advance without taking on managerial roles, focusing instead on technical or people skills.
🔍 Senior Staff Engineers must be effective at building trust, finding information, and making decisions without always having hands-on involvement with the code.
🤝 The role is still about leadership, but with a focus on delegating, building alignment, and strategic development.
🌉 Senior Staff Engineers act as a bridge between company leadership and technical staff, often being more involved in business aspects.
🌀 Their interactions with teams are more transient but essential for understanding and impacting technical solutions.
⏳ The role requires thinking strategically over a longer horizon, with less immediate impact from day-to-day initiatives.
📈 Autonomy increases at the Senior Staff level, necessitating better expectation management and task juggling.
🗣️ Communication skills are crucial, especially when explaining complex technical issues to non-technical stakeholders.