Watch people work

[name|Friend], we talk a lot about outcomes over outputs and how engineers are supposed to get us over the water, not blindly build a bridge because someone asked for a bridge. But how do you do that in practice?

Watch people work!

We tried this on my team and it has been wonderful.

  1. Grab the person whose work you plan to improve
  2. Sit in a room (or a call) with them
  3. Just watch them work. As close to normal as possible. Ask them to narrate what they're doing

Does it feel annoying? I bet it does. Are they using a bunch of weird workarounds you didn't think of? Bet they are. Dealing with broken shit you long forgot was there? I can almost promise. Get every engineer nice and annoyed. Make them feel the customer's pain (user empathy). Frustration Driven Development is the goal.

Your job's not done until engineers could do this work without throwing their laptop out the window. 😈

We ran 3 of these sessions last week and found all sorts of things:

I wish we could fix everything [name|], but it's like spinning plates. One top priority at a time.

The trick is to find your biggest levers and focus on those.

We could fix the UI our finance team uses, sure, but that doesn't remove the problem. Why are we making them do this work at all? Automate.

We can give support more info on tickets and they'll be marginally faster at resolving. You know what really helps? Helping our users ask fewer questions.

Cheers,
~Swizec

PS: once you've got the frustration, find a way to measure. This lets you track progress over time.