4 ms·
I’ve often heard the advice for on all to focus on triage and call in support for big problems. But… doesn’t that mean that everybody is technically on call? T
by parpfish 2y ago
I’ve often heard the advice for on all to focus on triage and call in support for big problems.
But… doesn’t that mean that everybody is technically on call? There the main person answering the pager, but if the expectation is that they can pull in reinforcements as needed, that means everyone should be ready to get pulled in to action at all times.
- skipkey 2y agoDepends on the size of the team. Startup or small team? Yes. Everyone is on call all the time. Large number of developers? Someone on every team is on call all the time, and leads need to be almost always available for large outages. On call pretty much just comes with the job, and always has.
- drewcoo 2y ago> On call pretty much just comes with the job, and always has. If you don't remember the invention of "devops" that's especially true . . .
- mangamadaiyan 2y agoThose who do not know history are doomed to repeat it, or words suchlike (from Santayana, I guess?). I don't know if I'll ever see things like devops and agile die the horrible deaths that they deserve - but I do wish engineers would at least learn to think for themselves and not drink so freely of the kool-aid that CEOs peddle.
- ok_dad 2y agoSad part is that devops was never meant to be a title, just a way to work together effectively as a team that included developers, qa, ops, pm, etc. Devops was much like agile, they were great ideas and ways to work, but then got cargo culted to death and today managers have taken them as buzzwords and thrown away all the stuff you actually needed to do to get good results. Management always takes good ideas and extracts the absolute worst stuff from them, if they don’t just make up shit on the fly that wasn’t even a part of the original good ideas.
- mangamadaiyan 2y agoYes indeed. Management almost always bastardizes good ideas and makes them terrible; and then they take it a notch further by finding and nurturing kool-aid connoisseurs in the levels below. (Edit: grammar)
- lotsoweiners 2y ago> On call pretty much just comes with the job, and always has. Maybe for you but not for everyone and I bet outside Silicon Valley startup land and certain industries it is probably less common than you think. I work in government which is basically 8-5 local business hours. Production issues can take days, weeks, months to fix and deploy depending on priorities. Most of my dev friends have never had on call roles either. Plenty of companies have enough staff to have around the clock coverage. Just trying to add an additional perspective.
- vunderba 2y agoI suppose for the vast majority of software engineers working on online / SaaS type products or ones that silo a lot of customer data, this is true. Always has is a bold assertion. I've worked for companies which produced consumer level software on an annual cycle that was pressed to physical CDs, and there was not even a concept of on-call. Bugs that got reported went from customer support, to QC to corroborate, and finally triaged out to the R&D department where they would be fixed within normal work hours. This idea of 100% 24/7 on-call to fight fires in an industry where the vast majority of engineers are working for insurance companies, social media, e-commerce, etc. This ain't life and death people, let's get some perspective.
- zvr 2y ago> produced consumer level software on an annual cycle This can also be generalized "produced software on a release schedule". I would assume that the vast majority of software engineers are not working on supporting the operation of online/SaaS services, but rather develop products.
- cj 2y agoThere’s a difference between on-call being in your job description and occasionally responding to slack messages to help out during an incident off hours.
- paulryanrogers 2y agoIME triage should mean they can stabilize things long enough no one else needs to be woken up. Ideally they could address further during normal business hours. Reinforcements may get pulled off planned work, but only as a last resort, and only during business hours. Unless the situation would kill the business and the triage isn't enough. Strategies like automated disaster recovery processes (yet with manual initiation), coupled with rotating who walks the DR plan during the periodic practice, can mitigate the absolute worst case scenario.
- deleted 2y ago[deleted]
- toast0 2y agoIf the expectation is that the on-call person should fix all the issues that arise during their shift, you either need a very well defined runbook, or can only have people on-call who have deep understanding of the whole system. I guess that's a model. But every runbook I've seen has a clear call to escalate if the conditions don't seem to match. Sometimes the runbook will have procedures to disable things until the business day, in which case you don't need to page anybody, but the service will be degraded until the responsible party can manage it. If the procedure doesn't work, someone will get paged. IMHO, the most important part of a runbook is the escalation process. And probably the most important meta task of an on-call rotation is tracking escalations and ensuring they're dealt with. Norms depend on your business, but if you get a lot of escalations outside of business hours, you either need to fix your stuff so it doesn't need escalation, or you need to staff your stuff so escalation is to people who are in their business hours. Edit: I'll also add that reducing incident frequency is good, but when it drops from once a quarter to once a year, new hires won't get osmositic training anymore. When it drops from once a year to once every other year, team muscle memory will have atrophied. It's worth doing some periodic training/refreshing when things are running well.
- spike021 2y agoFully agreed with all this. Also, if there's a bottleneck where an oncall needs to rely on a teammate with more experience with the subject matter, then make sure that's noted down in a retro. Hopefully an action item can be made up and completed where said person does some knowledge transfer, at least into a run book or other documentation.
- incidenrly 2y agoIs it worth having psuedo production services that get chaosed monkeyed into another dimension at a random time and pager alerts on them. Effectively: a drill!
- toast0 2y agoI don't think chaos monkey works for incident drills. Anything the monkey can do is going to be easy to detect (probably). You can do some amount of drills with periodic disaster recovery tests --- twice a year do a manual failover of a colo, etc.
- erik_seaberg 2y agoOn call may page teammates for help, but they might be on airplanes or go camping or do other things that take them off the grid (primary and secondary must not). I would really hesitate before paging someone who's on vacation, but he would probably have his phone (not laptop).
- andrewjf 2y agoHaving to page someone on vacation is a very very broken organization. Additionally, paging someone when they should be sleeping is also abusive. If you need 24/7 coverage, pay for follow-the-sun. Most of what we do isn't actually that important.
- matrix87 2y ago> Additionally, paging someone when they should be sleeping is also abusive. My current job does this, they expect you to respond to pages at 4am You're telling me this isn't a thing other places?
- erik_seaberg 2y agoSeems pretty normal from two Bay Area startups and two FAANG-sized orgs. Primary should respond, secondary shouldn't be disturbed unless primary seems incapacitated (no pager ack) or is at wits' end. Edit: I should add that the secondary gets paged more often while the primary is new to the team and doesn't know how to fix everything. In return, you go on call 1/n less often in the future. If I need to sleep in after a bad night, it's always been fine.
- erik_seaberg 2y ago> Having to page someone on vacation is a very very broken organization. I agree, I'd like to see enough written down that no outage ever has a bus number of one. But I haven't been seeing that anywhere. I've resorted to this one time ever, and the super senior founding teammate was very engaged and assured me that it was the right call. > pay for follow-the-sun This seems likely to create a huge team of devs who are seen as interchangeable, no longer paid amazingly well, and don't have enough to do every day.
- wging 2y agoExpectations should be lower as far as responsiveness or even availability, for someone who is not actually on call. The load (and expectation) is also not evenly distributed: IME senior and staff/principal-level engineers (and managers) tend to get paged in when off-call much more frequently, for obvious reasons. It's more likely to be "I need someone who knows XYZ", not "I need absolutely EVERYONE" https://www.youtube.com/watch?v=74BzSTQCl_c https://www.youtube.com/watch?v=74BzSTQCl_c or "I need a random additional pair of competent hands". Also, IME it's been relatively rare for issues outside of business hours to require calling in people who aren't really on call. I think the article is pointing out that it can be the right thing, not that it's necessarily a common scenario. And during business hours, being pulled away from your other work to help handle an incident is obviously a much easier pill to swallow.