Scaling Fast Book

74 articles · all categories

41 articles from 2024 · show all

December 2024

Looking for beta readers

Wanna read my hardest engineering lessons learned? You're in luck!

Atoms, molecules, organisms

Here it is: 20+ years of programming experience distilled into 378 words. From the book I'm writing.

Smart core, thin interfaces

Here's an approach to writing code that I've been using for years and couldn't quite put into words until now. One of those _"This feels wrong but I can't explain why"_. Now I can!

Empirical evidence for code modularity

Few of your engineering decisions matter long-term. Software is soft. You can change your mind. But how you structure your components is here to stay.

November 2024

Finding modules in a big ball of mud

Pulling modules out of a big ball of mud is like grabbing a slice of cheesy pizza. It's kinda separate but also not really.

Why you need observability more than tests

Here's a short and sweet story about a Friday deploy. I love Friday deploys.

The swarm doc

Here's a doc I like to use to structure the pre-work design chat that makes later code review a breeze.

Big Ball of Mud – the world's most popular software architecture

Forget Gang of Four, here are the 7 architectural patterns real programmers use:

Why software only moves forward

At scale there are no rollbacks and no cut-overs. Your software only moves forward.

October 2024

"Yes caviar is great, here's a ham sandwich"

Why do some projects ship and others seem to drag on forever? You need 3 people to get this right.

Make mistakes easy to fix

You can't prevent bugs. You'll burn out. Instead focus on making them quick to fix.

September 2024

The Laws of Software Evolution

Manny Lehman was one of the first to notice that software is never done. It just continues to evolve forever.

The Series A inflection point

The Series A inflection point is the most fun time in a startup, if you ask me. Here's what it looks like

You can side-step a yak, they don't all need to be shaved

When yaks aren't procrastination, they might be tunnel vision. You're so focused on the right solution, you miss the good enough solution

Better is good

A small improvement that lands is better than a large improvement stuck in review

How big up-front design fails

A long design phase without shipping kills many software projects. Here's a story from production I haven't shared before.

Why software projects fail

5 common themes

August 2024

Let small fires burn

You can't fix everything. Focus on the next big thing and let the small fires burn.

July 2024

90% of performance is data access patterns

Removing a single line of code slashed database CPU usage by 66% 🤘

DRY – the common source of bad abstractions

Swizec reveals the hidden pitfalls of overusing the DRY principle in coding, leading to bad abstractions. Discover how to write adaptable, efficient code that avoids these common traps.

Scaling Fast, my talk on lessons from tech startups

This talk from C3Fest summarizes the key lessons I've learned in the past ~15 years of working in tech startups. It's a high level overview of a new book I'm writing (60% done).

You can't side-quest a product

Here's a trap that talented engineers fall into all the time. It creates frustration, burnout, and the genre of tweets that read like "Why don't people care about the amazing work I'm doing".

June 2024

The dangers of spurious automation and how to automate anything

Discover the potential pitfalls of spurious automation and learn a foolproof three-step process to automate any task effectively. Don't miss out on understanding when automation is truly beneficial and when it can become a hindrance.

It’s okay to just do the work

Not everything needs to work forever. Start by solving the problem

Notes for my Scaling Fast talk next week

Decided to publish my notes because they look pretty useful on their own. Although I hope my stage presence adds a little something something. Enjoy :)

How to use feature flags

All the hard lessons learned using feature flags in production. Skips the why and gets to the how.

May 2024

Validate your assumptions early

here's war story from last summer. I've talked about it in workshops but haven't written it down before. It's for a book I'm working on.

A better roadmap solves many issues

Many engineering challenges start with your roadmap

Get us over the water, not build us a bridge

effective engineering teams should work *with* their product owner/manager, not *for* them

April 2024

Coordinating at the end is too late

When working: sync first *then* async