Discover more from Refactoring
Backward deadlines, performance journaling, and obscure cognitive rules 💡
Monday Ideas — Edition #68
Hey, Luca here! Welcome to the Monday Ideas 💡
Every Monday I will send you an email like this with 3 short ideas about making great software, working with humans, and personal growth.
You will also receive a long-form, original article on Thursday, like the last one:
To receive all the full articles and support Refactoring, consider subscribing if you haven’t already!
p.s. you can learn more about the benefits of the paid plan here.
Real coding interviews that candidates trust.
Join 4,000+ engineering teams (including Netflix, Lyft and Spotify) that have found a better way to hire devs. Skip the algorithm interview questions and use CoderPad's collaborative IDE to actually code with candidates (see the Sandbox)
Coderpad is a sponsor of Refactoring 🙏 check out here how we run sponsorships transparently.
1) ↩️ Work backwards from deadlines
Just tell me how many times have you heard engineers saying something along the lines of: “we should do this but leadership won’t let us”. In many teams, engineers have this feeling that managers are constantly pushing back / negotiating / fighting for deadlines.
Such fights start because, even though both managers and engineers work on the same projects, they have different sets of concerns.
Simplifying a bit:
🎯 Leadership = building the right thing
🔨 Engineering = building the thing right
For big projects, leadership naturally wants to de-risk execution, to make sure they are building the right thing. So, coming back with something that sounds like “hey, just let me do my thing for 1 year” just doesn’t cut it.
When managers push back on estimates, what they are really showing is their appetite for that project/feature.
The guys at Basecamp wrote a great piece about working backwards from deadlines — which I believe is *the* healthy way of using them: as design constraints.
You decide upfront you want to spend 3 months on a problem and figure out what you can get done in that time. Great engineering is literally defined by finding clever solutions against constraints, be they about cost, time, resources, or else.
I have talked more about this idea in various recent articles 👇
2) ✏️ Journaling about your reports
When it’s performance reviews time, as a manager, you can find a lot of advice online that says you should go through everything your reports have done, and review it, just in the weeks/days before the review.
Now, while you definitely need to dig through tools and docs, I have found that if you only rely on this, you are in for a bad experience.
In fact, when you go through stuff (e.g. design docs, emails, issue tracker) that is months old, most often you don’t have the context for a fair judgment anymore. Not to say that it’s a ton of stuff. Multiply that by, I don’t know, 6-7 reports, and it is just unbearable.
As engineers, one of the things we are good at is splitting big tasks into smaller ones that are easier to handle. My preferred way of splitting this is by keeping a journal about my reports.
The journal includes short notes about what they did and how. This isn’t for tracking who did what — you have tools for that — it is just for storing my impressions: how they acted on feedback, how they worked with others, how they handled deadlines, and more.
I use these notes in two ways:
🪴 1:1s — I use my notes to prepare for 1:1s. The 1:1 agenda is mostly set by my report, but if I see that the conversation stagnates, I can route it to some items from my notes.
🏅 Performance reviews — notes give me context about stuff that happened during the period, so I can more easily catch up. They act as anchors to recollect things from my memory, and complement what I can put together from tools and docs.
I don’t have a template for such notes: I just keep a page for each of my reports and jot down quick thoughts there every once in a while, possibly with links to other stuff. Then, a few weeks before the review, I go through the notes and combine them with the rest of the materials. These notes are private and are not shared with my reports, as opposed to e.g. the 1:1 notes.
I have written more about this in a wider article about performance reviews 👇
And this is also similar to what you should do for yourself with an accomplishment journal 👇
3) ⚖️ Illich’s Law vs Carlson’s Law
I admit it — I have a thing for obscure laws about human behavior. I often talk about Conways’ Law, and now it’s the turn of two others, which happen to be complementary
Carlson’s law — or the law of homogeneous sequences — states that:
Interrupted work will always be less effective and will take more time than if completed in a continuous manner.
Sune Carlson (1909 - 1999) was a Swedish economist and a pioneer of what we today call deep work. He preached about doing one thing at a time and minimizing interruptions — and he didn’t have smartphones!
Carlson’s Law may seem at odds with Illich’s Law — a.k.a. the law of diminishing returns:
Optimal productivity is reached with an appropriate balance between working time and resting time, as productivity decreases after a certain period of continuous work.
Illich also created the concept of negative productivity. After a certain amount of time, productivity decreases so much that the mistakes due to fatigue have a higher impact than the actual things you get done.
These laws aren’t really at odds, though. Carlson was against involuntary interruptions that make you switch context, but, like Illich, was all in favor of short breaks that allow you to recharge and regain focus.
I wrote more about how I manage my time and energy in a previous article 👇
And that’s it for today! If you are finding this newsletter valuable, consider doing any of these:
1) ✉️ Subscribe to the newsletter — if you aren’t already, consider becoming a paid subscriber. You can learn more about the benefits of the paid plan here.
2) 🍻 Read with your friends — Refactoring lives thanks to word of mouth. Share the article with your with someone who would like it, and get a free membership through the new referral program.
I wish you a great week! ☀️