←back to thread

210 points dakshgupta | 2 comments | | HN request time: 0.004s | source
Show context
dakiol ◴[] No.41842172[source]
I once worked for a company that required from each engineer in the team to do what they called “firefighting” during working hours (so not exactly on-call). So for one week, I was triaging bug tickets and trying to resolve them. These bugs belonged to the area my team was part of, so it affected the same product but a vast amount of micro services, most of which I didn’t know much about (besides how to use their APIs). It didn’t make much sense to me. So you have Joe punching code like there’s no tomorrow and introducing bugs because features must go live asap. And then it’s me the one fixing stuff. So unproductive. I always advocated for a slower pace of feature delivery (so more testing and less bugs on production) but everyone was like “are you from the 80s or something? We gotta move fast man!”
replies(5): >>41842203 #>>41842403 #>>41842705 #>>41845436 #>>41846116 #
dakshgupta ◴[] No.41842203[source]
This is interesting because it’s what I imagine would happen if we scaled this system to a larger team - offense engineers would get sloppy, defensive engineers would get overwhelmed, even with the rotation cycles.

Small, in-person, high-trust teams have the advantage of not falling into bad offense habits.

Additionally, a slower shipping pace simply isn’t an option, seeing as the only advantage we have over our giant competitors is speed.

replies(2): >>41842557 #>>41845503 #
1. jedberg ◴[] No.41842557[source]
> offense engineers would get sloppy

Wouldn't they be incentivized to maintain discipline because they will be the defensive engineers next week when their own code breaks?

replies(1): >>41842737 #
2. dakshgupta ◴[] No.41842737[source]
I suspect as the company gets larger time between defensive sprints will get longer, but yes, for smaller teams this is what keeps quality high, you’ll have to clean up your own mess next week.