How to lead projects from start to finish as a software engineer
The best engineers don't just know how to code.
They know how to bring people together and deliver value.
They know how to:
Today, you’ll learn exactly these skills.
In this article, you’ll learn How to lead a project from start to finish.
Note: Every company will run projects slightly differently. I’m going to share the process I’ve seen the most in my experience that has gone well.
Step 0: Kickoff
A project starts at the “Kickoff” stage. This is when something that was planned on the quarterly or annual level is ready to start.
A Product Manager (PM), engineer, tech lead, or engineering manager usually initiates the kickoff phase. Who starts it depends on the company culture.
We’ll assume you are taking the lead as an engineer.
As the lead, you create a Project Kickoff Document.
The goal of the kickoff is to align on the “Why”, “What”, and “Who.”
Check out the full, free Project Kickoff Template here.
After you write the doc, you’ll schedule a meeting with the stakeholders you listed.
Check out my Guide to Leading Meetings to lead this meeting effectively.
After the meeting, all the key stakeholders should agree on when they will start work on their respective parts. Since this is the early stages, you’ll rely on the Product Manager and Designer to make progress on their parts so the engineering work can progress.
However, there are a few things engineers can do at this stage:
We’ll talk about working with your product manager and designer in the next step.
nbsp;Step 1: Setup
After the kickoff, everyone starts working in their direction.
The problem is that there is no clear way to communicate updates.
To solve this, I recommend a few things:
On 1:1s with your Product Manager and designer:
1:1 meetings with your product manager and designer are a great opportunity for you to provide early feedback or suggestions on the direction of the requirements or designs.
Don’t tell them what to do though. Instead, tell them how certain approaches could impact parts of the project they might not be aware of.
For example, if your designer is between 2 options, you could share that you like one of them because it will cut scope by 1 week and would allow for earlier customer feedback.
The last optional addition for the “Setup” phase of the project is a daily standup.
Daily standups help shorten feedback loops and improve accountability. Many people don’t like them but know they are an option. I recommend using your best judgment to determine if you need them.
nbsp;Step 2: Planning
At this point, you have:
Now, it’s time to plan the milestones and technical approach.
You can do this through a Technical Design Document (or tech spec).
领英推荐
The purpose of the design doc is for 2 reasons:
You can follow my Technical Design Document Template and article on writing better design docs here.
Following the article above will lead to reduced risk in your document and fast approval when you do a group review.
Once the technical approach and milestones are agreed on, you can begin the technical work.
nbsp;Step 3: Execution
Now that you have the technical approach and the milestones laid out, you want to start assigning tasks at the sprint level.
You might have a team sprint planning where you do this for all projects, or a dedicated meeting for it, like the weekly project sync.
With your plan in place, start allocating tasks.
Throughout this process, do 3 main things:
As the project lead, you want to focus your time on guidance and support as much as possible—rather than on nitty-gritty details.
Think of yourself as a map-maker that shows everyone where the treasure is and how to get there, but you can’t go alone. You need everyone to work together to reach the treasure.
A few more ways this may manifest:
For more of the philosophy behind this, check out Addy Osmani’s guest article, The Making of a Senior Engineer.
nbsp;Step 4: Launch
Your code is ready for users! It’s time to ship it
But wait—for any decent-sized feature, you rarely want to jump to 100% of users.
Why? Because new code is risky. It can cause bugs or regress metrics.
Begin by rolling out the feature to a small percentage of users.
I also recommend splitting up your milestones into deliverable units of value to users. This allows you to incrementally ship new behavior to users and get feedback.
So the two things you want to focus on here are:
As you do that, gradually increase it to 100%. At some companies, you might need to let experiments run for multiple weeks before finally getting to 100% rollout.
I’ve had to do a multi-week rollout in some cases, and in others, I’ve been able to go from 1% → 5% → 20% → 50% → 100% in a single week when the feature ships with no bugs and the metrics are moving in the right direction.
nbsp;Step 5: Close-out
Once your project is live, it’s not over yet!
Don’t forget to do these:
nbsp;TL;DR
As a subscriber to High Growth Engineer, this whole guide in checklist format is readily available to you in my Project Leadership Checklist doc.
Here is a quick summary of the steps though:
nbsp;Shout-outs of the week
Finally, I’d like to shout out Irina Stanescu’s Influence Cohort starting in < 2 weeks. I took the cohort and learned a ton of great frameworks for thinking about influence. Plus, it was great to have direct access to Irina and hear stories from all her experiences as both an IC, tech lead, and manager. She also offered a 10% discount for all High Growth Engineer subscribers which you can access via this link.
Thank you for your continued support of the newsletter and the growth to 52k+ subscribers ref credits to : JORDAN CUTLER MAR 10
Delivery Lead & CSA | Strategic Development for SW Projects- Disciplined Agile Practitioner -Tech Lead - DevOps SAaaS PaaS, IaaS, Data Platform .Net Modern Apps || Ex-Optum{UHG} || Ex-Microsoft
11 个月Great post! As a software engineer, I couldn't agree more that leading projects is about much more than coding. It's about bringing people together and consistently delivering value. I'm always looking to learn and improve my leadership skills, so I'm excited to read your article on how to lead projects from start to finish. Thanks for sharing your insights! Well-done Wayam Pro -- Keep it up