A Guide to Running an Engineering Program

Shopify has a playbook for huge engineering programs in the past that cross over multiple areas of complexity on the platform, and we’d like to share it with you.

Carla Wright
28 min readadvanced
--
View Original

Overview

This article provides a comprehensive guide on running engineering programs, detailing the processes, rituals, and frameworks used by Shopify to manage complex engineering initiatives effectively. It emphasizes the importance of clear definitions, structured rituals, and alignment among stakeholders to achieve successful outcomes in engineering projects.

What You'll Learn

1

How to define a clear problem statement for engineering programs

2

Why establishing a definition of done is critical for project success

3

How to implement weekly and cycle rituals to maintain program alignment

4

When to conduct risk triage and escalation meetings to mitigate project risks

Key Questions Answered

What is the importance of a clear problem statement in engineering programs?
A clear problem statement is essential for gaining buy-in from executives and stakeholders. It defines the issue at hand, clarifies the urgency of addressing it, and outlines the expected outcomes once the problem is resolved, ensuring all parties are aligned on the program's goals.
How does Shopify execute engineering programs effectively?
Shopify executes engineering programs through structured rituals, including weekly updates, cycle kick-offs, and retrospectives. These rituals help maintain alignment among teams, address risks proactively, and ensure that all stakeholders are informed about progress and challenges.
What are the key components of the definition of done?
The definition of done includes a checklist for team contributions, a performance baseline, a resiliency plan, and both internal and external documentation. This clarity helps teams understand their objectives and supports parallel work across different streams.
What are the common rituals performed every six weeks in Shopify's engineering programs?
Common rituals include Cycle Kick Off, Mid-Cycle Goal Iteration, Goal Setting Office Hours, and Cycle Report Card. These rituals help teams reflect on progress, adjust goals as necessary, and celebrate achievements, fostering a culture of continuous improvement.

Key Actionable Insights

1
Establish a clear definition of done at the beginning of your engineering program to align all stakeholders.
This clarity ensures that everyone understands the objectives and deliverables, which can significantly enhance team productivity and focus.
2
Implement weekly rituals to maintain communication and track progress across teams.
Regular updates help identify risks early and keep all team members aligned on goals, which is crucial for large engineering projects.
3
Conduct risk triage meetings to proactively address potential blockers.
By regularly assessing risks, teams can mitigate issues before they escalate, ensuring smoother project execution.
4
Utilize retrospectives to continuously improve team processes and rituals.
Reflecting on what worked and what didn’t allows teams to adapt and enhance their workflows, leading to better outcomes in future cycles.

Common Pitfalls

1
Failing to define a clear problem statement can lead to misalignment and wasted resources.
Without a well-articulated problem, stakeholders may have differing views on priorities, which can derail the program's focus and objectives.
2
Neglecting to conduct regular risk assessments can result in unaddressed blockers that hinder progress.
If risks are not identified and mitigated early, they can escalate into significant issues that impact the overall timeline and success of the project.