The 5 Elements of Software Engineering Management
The world is becoming increasingly complex. Hybrid work, generative AI, and the constant pressure to deliver require leaders to adapt, and their teams to evolve without compromising their culture and health.
Our years of experience working with elite software engineering teams and their leaders have led us to define these 5 core competencies at the heart of data-driven, developer-first, software engineering success that drives business impact: the Software Engineering Framework.
Make sure engineering team and strategy reflects the needs of the business:
Measure, understand, and communicate the investment of software development efforts and engineering performance in order to drive product strategy and organizational decisions.Engineering Investment Analysis
Where is the team investing its time now?Goals
Understand how the team is investing its capacity in terms of engineering time and cost to inform allocation and headcount decisions of how it should be used moving forward.
Questions to answer
Can we see where everyone’s time and energy is being spent?
Do we know that our teams are focused on the projects that are highest impact to the business?
Can we track our investment of time and cost into strategic initiatives, deliverables, or OKRs?
Executive Reporting & Communication
Does the business understand the state of the engineering organization?Goals
Understand engineering performance, impact, and investment to inform executive communication and influence, strategic planning, and Board reporting.
Questions to answer
Are we able to communicate the state of the engineering function to non-technical stakeholders?
Is Board and executive reporting a relatively low-lift task?
Can we make business cases for our engineering budget, resource, and headcount needs?
Product Planning
What products or features will have the most positive impact on the business?Goals
Optimize the financial impact of product portfolio decisions by understanding ROI and informing tradeoffs in where engineering efforts are expended.
Questions to answer
How much of our budget are we spending on developing and/or supporting different product lines or feature sets?
Are the returns worth the cost?
Do we factor engineering capacity into product roadmap planning?
Organizational Planning
Does the engineering organization meet the needs of our product and business strategy?Goals
Align headcount, team structure, and organizational strengths and capabilities with the needs of the business and strategic product decisions.
Questions to answer
Does our engineering organization support the product and business decisions we have made?
How is our team allocated right now? And what needs to change?
Continuously improve engineering team processes and outcomes:
Measure and mature your team’s processes to enable faster, more reliable, and more efficient software delivery.Time to Market
How fast do we ship value-driving software?Goals
Accelerate the speed with which teams deliver value to customers.
Questions to answer
What is our lead time for delivering software to customers?
Are we able to identify and remediate bottlenecks in our development life cycle?
Delivery Efficiency
Are we doing the most with the resources we have today?Goals
Balance speed and throughput of teams with quality.
Questions to answer
What is our throughput?
How fast do we build?
Are we able to reduce bugs or incidents?
How fast can we fix quality issues when they do occur?
Can we increase our speed without introducing quality problems?
Process Maturity
Are we consistent in our workflows and data hygiene?Goals
Develop team process consistency and improve hygiene and visibility to minimize bottlenecks, maintain workflows and ensure auditability.
Questions to answer
Do we have visibility across our teams’ coding efforts?
Are our systems of record maintainable and auditable?
Do our teams document work consistently, and does the data reflect that?
Planning & Retrospective Analysis
Do we understand our past to inform our plans?Goals
Measure results of past planning ceremonies to inform planning, predictability, tracking, and achievement of goals.
Questions to answer
How predictable are our releases?
Do we complete what we commit to at the team and organization levels?
How often does work carryover from one planned release or sprint to another?
Collaboration
How well do individuals and teams support one another?Goals
Facilitate inter and intra-team collaboration to sustain high code quality and limit knowledge silos.
Questions to answer
Do our teams enable each other by commenting on and reviewing each other’s pull requests?
Do we document our work, thinking, and process, and how much time do we spend doing that?
Are our teams organized in the right way?
Help teams communicate
and deliver on time:
Monitor and communicate software deliverable status, and proactively facilitate on-time delivery of projects and deliverables in flight.
Predictability
Do we meet our delivery commitments?Goals
Forecast accurately and enable on-time delivery of new deliverables by ensuring the team is predictable at delivering what they take on.
Questions to answer
How often do we deliver on time?
What is our say/do ratio?
How predictably do we deliver on our commitments?
Status Tracking & Reporting
Can we communicate project status and forecasts accurately?Goals
Track and communicate the progress and blockers of projects, goals, and deliverables in flight.
Questions to answer
Do we have a good sense for the current status of projects and deliverables in flight?
Can we accurately forecast delivery dates and target dates?
How well do we communicate deliverable progress and forecasts with the business?
Delivery Risk Mitigation
Can we reduce risks to our high impact projects when they arise?Goals
Optimize resources across projects and deliverables to ensure highest priority initiatives meet delivery goals and deadlines.
Questions to answer
Are we able to assess project tradeoffs and staffing scenarios if needed to meet deadlines?
Can we assess the impact of movement of engineers on momentum, wip, and efficiency?
Can we use past work to inform planning, capacity, and scheduling of future work?
Project Management
Are we able to achieve our intended outcomes?Goals
Set and track goals, triage blockers, understand and manage project or deliverable progress to enable on-time delivery.
Questions to answer
How well are we able to set and track progress against goals?
Are we able to document and contextualize deliverable progress and management?
Can we effectively identify and triage stuck work?
Build happy, engaged, impactful teams:
Ensure your teams are engaged and healthy, and their impact is celebrated. Give your teams the support and focus they need to perform their best and achieve their goals.Growth & Development
Are our engineers learning, growing, and getting recognized?Goals
Help teams and individuals grow in their careers. Identify skill gaps and skill development, and potential areas of personal and career growth. Highlight the impact of teams and individuals to management. Identify opportunities for improvement and targeted coaching.
Questions to answer
Can we identify the coding skills, trends, and needs on each team?
Are our individual contributors learning new skills that map to their desired career paths?
Do our teams collaborate and support each other?
Do we use data to contextualize performance conversations?
Do we have benchmarks for performance?
Impact & Context
Does the team understand the ‘why’ behind their work?Goals
Contextualize and tie work to business impact to align interests, motivate engineers, improve job satisfaction, and support growth and development of careers.
Questions to answer
Do our ICs and teams have context for why they are working on projects?
Can we trace individuals’ direct impact on key business initiatives?
Do we know individual time investment into business initiatives?
Focus
Does the team have the space to do great work?Goals
Understand what the team is working on and make sure it aligns with the team’s and the business’s goals. Improve engineer effectiveness by highlighting value of individual work, increasing flow time and focus, and reducing thrash.
Questions to answer
Do teams have enough flow time?
Are we able to analyze work in progress to make sure developers are pulled in too many directions?
Can we limit thrash and context switching?
Can we assess whether individuals are at risk of burning out?
Trust
Do teams trust and support one another and advocate for their needs?Goals
Create a culture of openness by fostering support and transparency. Communicate effectively to align on clear expectations, vision, goals and individual/team needs.
Questions to answer
Are our developers happy? Do they feel supported?
How well do we communicate expectations and goals?
Do we give developers the tools they need to do great work?
Build software strategically
with financial insights:
Automate software development cost analysis and financial workflows to drive more effective R&D and business outcomes.
Budgeting & Forecasting
Can we forecast and predict budget and headcount needs accurately?Goals
Incorporate accurate financial data into product and budgeting decisions and facilitate headcount planning and reporting.
Questions to answer
Do we understand past headcount and budget needs of projects completed?
Can we use past work and planned projects to forecast future headcount needs?
Can we communicate those needs to non-technical stakeholders?
Software Capitalization & Tax Credit Reporting
Are we automating financial processes that can be automated?Goals
Report on the capital costs of product work and product development in a precise and auditable way for software capitalization and tax credit reporting purposes.
Questions to answer
How accurate and auditable is our reporting of development costs?
How much manual time are we spending on producing these reports and managing audits?
Do we require manual time tracking of developers and how much time do they spend on that?
Financial Reporting & Analysis
Can we use engineering realities to inform financial planning?Goals
Generate financial reports on engineering costs including the costs of new development, KTLC, customer support, etc. in order to inform business financials, analysis, and planning
Questions to answer
Do we understand accurate development costs by product, project, business initiative, or work type?
How much time does it take to produce reports on this for Finance?