Refactoring

Refactoring

Share this post

Refactoring
Refactoring
How to Plan and Execute Software Projects 🚒
Copy link
Facebook
Email
Notes
More

How to Plan and Execute Software Projects 🚒

A no-nonsense guide to build the right things and build them on time.

Luca Rossi's avatar
Luca Rossi
Jan 11, 2024
βˆ™ Paid
124

Share this post

Refactoring
Refactoring
How to Plan and Execute Software Projects 🚒
Copy link
Facebook
Email
Notes
More
4
2
Share
Upgrade to paid to play voiceover

It’s early January, which for many teams means planning projects for the coming months β€” or the full year.

Are these plans usually successful? Do you meet your deadlines? If you are anything like me, your track record on this might be… complicated.

Software projects of any kind β€” new features, internal tools, automations β€” can usually fail in two main ways:

  • πŸ™…β€β™‚οΈ Built the wrong thing β€” everything goes according to the plan, but it turns out the plan was wrong. Users don’t care about the new feature, or the new internal tool doesn’t solve your co-workers’ problems.

  • βŒ› It took too long β€” the project was due in three months, but it took seven to get things done. Scope creep? Wrong estimates? Or is it just the nature of engineering?

Executing software projects right is kind of an art. During these years, thanks to the Refactoring community, I had the chance to meet incredible tech leaders who delivered extraordinary feats, and I learned a lot from them.

To write this piece, I went back to my chats with Aadil, who led programs at Google, Apple, and delivered the insanely complex Humane AI Pin; with James, who designed and delivered the multi-exabyte Dropbox storage system; with Thiago, Rado, and many more.

This edition puts together the best ideas that I learned from tens of such leaders, combined with my personal experience, with the goal of giving you a compact framework for executing projects right.

Here is the agenda:

  • πŸ“ Scoping β€” how to approach estimates, negotiations, and budgets.

  • πŸ—Ώ Milestones β€” how to design checkpoints to remove uncertainty and create progress.

  • πŸš€ Executing β€” how to stay on track on long projects, with divergence and convergence.

  • ⏱️ How much time you have β€” how to take the rest of your work into account.

Let’s dive in!

This post is for paid subscribers

Already a paid subscriber? Sign in
Β© 2025 Refactoring ETS
Privacy βˆ™ Terms βˆ™ Collection notice
Start writingGet the app
Substack is the home for great culture

Share

Copy link
Facebook
Email
Notes
More