빠른 속도의 팀을 위한 인시던트 관리
대기 중 담당자 관리에 대한 다양한 접근 방식의 장단점
세상은 그 어느 때보다 상시 가동 서비스에 의존하고 있습니다. 서비스 중단이 발생하면 청구서를 지불할 수 없고, 항공편을 예약할 수 없으며, 친구와 화상 통화를 할 수 없는 등 수백만 명의 사용자에게 실질적인 영향을 미칠 수 있습니다.
또한 심각한 버그나 용량 문제가 발생했거나 서비스가 완전히 가동 중단된 경우 모두, 서비스에 의존하는 고객은 즉각적인 대응을 기대합니다. (내부 팀도 마찬가지입니다.)
인시던트는 북미만 해도 비즈니스에 연간 7천억 달러의 비용을 발생시키며, 금전적인 부분뿐만 아니라 회사, 제품 및 팀의 평판에도 실질적인 영향을 미칠 수 있습니다.
이는 중대한 문제이기 때문에, 팀은 IT 및 개발자 팀에 대기 근무를 배정하여 인시던트가 언제 발생하든 상관없이 인시던트 중에 문제를 해결할 수 있는 적절한 인력을 확보했습니다.
대기 근무 보상 계획과 공정한 대기 일정을 함께 사용하여 공동 책임의 문화를 조성할 수도 있으며, 팀이 복원력이 뛰어난 소프트웨어 및 서비스를 만드는 데 필요한 사항에 대해 자세히 알아보고, 전반적인 제품을 개선하고 서비스 중단을 줄이는 데 도움이 될 수 있습니다.
대기 근무란 무엇입니까?
대기 근무란 공식적인 업무 시간이 아니더라도 긴급한 서비스 문제가 발생할 경우 특정 시간에 대응할 수 있도록 담당자를 지정하는 관행입니다.
고객이 연중무휴 가용성을 기대하는 서비스를 운영하는 많은 IT, 개발자, 지원 및 운영 팀의 경우 대기 근무는 아주 중요한 책임입니다. 팀원들은 번갈아 가면서 24시간 내내 또는 정규 업무 시간 이후에만 지원하는 대기 중 교대 근무를 맡습니다. 자동 모니터링 및 알림 솔루션은 대기 중 엔지니어가 서비스 가용성 중단에 즉시 대응할 수 있는 권한을 부여합니다.
IT 및 소프트웨어 팀에서 높아지는 대기 근무의 중요성
대기 중 작업은 평판이 좋지 않은 경우가 있습니다. 일부 베테랑 IT 직원은 팀에 업무가 너무 많은 나머지 인시던트에 적절하게 대응하는 데 필요한 지원을 받지 못한 데 대한 끔찍한 이야기를 하고는 합니다.
대기 근무 지원이 올바르게 이루어진다면 불안감을 크게 해소할 수 있습니다. 효과적인 대기 근무 계획이 마련되어 있다면 확장되는 서비스에 맞게 팀을 확장하여 중요한 IT 기능에 대한 일관성 있는 지원 범위를 제공하고 인시던트에 신속하게 대응할 수 있습니다.
훌륭한 대기 근무 관리 계획에는 단순히 가동 중지 시간을 극복하는 것보다 더 많은 이점이 있습니다. 장애가 발생할 때마다 팀은 중요한 서비스를 더 잘 이해하고, 장애에 어떻게 대응하는지 살펴보고, 장애를 줄이도록 설계하거나 인시던트 대응 계획을 개선하는 방법을 파악하는 것과 같이 새로운 기술을 배울 기회를 얻습니다.
또한 공동 책임의 문화를 기반으로 구축된 훌륭한 대기 근무 프로그램이 있으면 동지애를 높이고 번아웃이 줄어들어 직원 유지율이 높아질 수 있습니다.
대기 근무의 장단점
DevOps를 실행하는 조직에서 소프트웨어 팀은 자신이 구축하는 서비스의 신뢰성과 가용성(이전에는 운영 팀의 전유물)에 대해 많은 책임을 지고 있습니다. 대부분의 팀에서는 “직접 구축하고 운영”하는 것이 새로운 좌우명입니다. 개발자는 코드에 가장 익숙하기 때문에 가장 짧은 시간 내에 문제를 가장 잘 해결할 수 있는 경우가 많습니다.
그리고 이 프로세스를 통해 개발자는 실제로 실패할 가능성이 적은, 더 효과적인 소프트웨어를 구축합니다. 책임 소재의 변화로 인해, 개발자는 서비스에 문제가 있는 경우 실제로 근무 외 시간에 자신이 일하게 될 수도 있으므로 코드를 더 엄격하게 테스트합니다.
그 결과로 시스템의 복원력이 높아지며, 더 많은 직원이 업무 가능하고 인시던트에 대응할 수 있기 때문에 번아웃을 겪는 직원이 줄어듭니다.
적절한 대기 근무 프로그램이 마련되지 않은 조직은 DevOps의 모든 문화적 이점을 실현하지 못하거나 확장하는 인프라의 요구 사항을 충족하지 못할 것입니다. 한 팀이 다른 팀보다 인시던트에 대응하는 부담을 더 많이 진다면 일상적인 업무를 잘 수행할 여력이 없을 것입니다. 개발자는 인시던트에서 오는 피드백을 구현할 수 없고 인시던트 대응자는 시스템을 강화할 수 없게 됩니다.
책임이 한쪽으로 치우치면 대기 일정이 예약된 직원은 사실상 업무에서 벗어날 수가 없어 쉽게 번아웃을 겪을 수 있습니다.
그러나 조직의 진정한 지원 범위 요구 사항을 고려하고 개발자와 IT 운영 팀 사이에서 시간 부담의 균형을 유지하며 지속적인 개선을 위해 데이터를 캡처하는 계획은 전반적인 이점을 가져올 수 있습니다. 더 나은 고객 서비스로 이어질 뿐만 아니라, 직원이 기술과 제품을 개선하고 실제로 대기 근무 시간에 일하기를 기대하도록 만들 수 있습니다.
대기 중 개발자 역할을 개선하는 방법
“제 소중한 저녁 시간을 이 배포를 감독하고 잠재적인 서비스 중단에 대응하는 데 보내고 싶습니다!”라고 말하는 엔지니어는 한 명도 없습니다.
자신이 구축하는 서비스를 유지 관리하는 역할을 맡은 개발자가 많아지고 있기 때문에, 대기 근무 시의 책임에 준비되어 있는지 확인하는 것이 중요합니다. 따라서 이를 평가하기에 가장 좋은 시기는 채용 프로세스입니다.
이제 최고의 엔지니어링 인재를 유치하기 위한 치열한 경쟁이 벌어지고 있다는 것은 모두가 아는 사실입니다. 그리고 모두가 금전적인 것에 의해서만 동기 부여가 되는 것은 아니므로, 근무 시간 외 작업을 위해 개발자에게 더 많은 급여를 제공한다고 해서 거래가 성사되는 것은 아닐 수도 있습니다(대기 근무 보상에 대해서는 나중에 자세히 설명). 소프트웨어 엔지니어는 면접 프로세스에서 대기 일정을 위해 개인적인 시간을 얼마나 할애해야 하는지에 대해 자연스럽게 궁금해 할 것입니다.
유능한 개발자 및 SRE로 구성된 팀에 책임을 공정하게 분산시키는 문서화 된 대기 근무 계획이 있다는 것을 보여주면 조직이 대기 근무를 잘 관리하고 있다는 점을 신규 직원에게 안심시키는 데 큰 효과를 낼 수 있습니다. 문서화된 계획을 통해 면접 프로세스에서 완전히 투명하게 이야기할 수 있으며 지원자가 대기 근무 작업에 전념할 준비가 되었는지 확인할 수 있습니다.
개발자에게 친화적인 대기 근무를 만들 수 있는 5가지 간단한 방법
- 대기 근무의 책임을 명확하게 정의
대기 근무 중의 책임을 명확하게 정의해야 합니다. 그러면 번아웃, 혼란 및 불만을 방지하는 데 도움이 됩니다. 인시던트 대응 프로세스를 비롯해 대기 근무에 대한 기대치를 문서화하는 것이 좋습니다. - 알림이 적절한 담당자에게 할당되고 있는지 확인
알림 도구를 효과적으로 활용하는 것을 간과해서는 안 됩니다. 올바른 알림 및 재정의를 통해 명확한 변경 흐름을 유지하면 여러 골치 아픈 일을 피할 수 있습니다. - 주요 및 보조 대응자 보유
누군가가 대기 근무를 한다고 해서 큰 일이 일어나는 것이 아닙니다. 예상치 못한 개인적인 긴급 상황으로 인해 개발자가 근무일 중에 오프라인 상태가 될 수 있는 것처럼, 대기 근무 중에도 마찬가지입니다. 백업 담당자를 갖추면 이러한 종류의 중단으로 인한 잠재적인 피해를 막을 수 있습니다. - 일정을 세밀하게 조정
팀은 정적인 것이 아니며 대기 일정도 정적이지 않아야 합니다. 대기 중 담당자 관행을 지속적으로 검토, 조정 및 개선하는 문화를 조성하는 것이 좋습니다. - 담당자가 모든 관련 진단 도구에 대한 액세스 권한이 있고 익숙한지 확인
팀마다 운영 상태, 애플리케이션 성능, 리소스 사용률 등을 추적하는 데 사용하는 도구가 다릅니다. 대기 중 엔지니어가 도구에 익숙하고 적절한 액세스 권한을 가지고 있는지 확인하세요.
IT 지원 및 서비스 역할의 대기 근무를 개선하는 방법
대기 근무에 더 많은 시간을 할애하는 것은 개발자뿐만이 아닙니다. IT 지원 및 IT 서비스 팀의 경우 비즈니스 기능에 도움을 주기 위해 24시간 지원이 점점 더 중요해지고 있습니다.
팀은 스트레스, 번아웃, 불분명한 역할과 책임, 도구에 대한 액세스와 같이 개발자가 겪는 것과 똑같은 여러 문제에 직면합니다.
IT 팀은 고객과 같은 건물에 있다는 사실만으로 스트레스를 받는 경우가 많습니다. 고객은 인시던트에 관해 여러 방법으로 IT 팀을 방해(이메일, Slack, 심지어는 대면 방식으로도)하며 결국 팀의 업무 속도를 늦출 수 있습니다.
IT 인시던트를 쉽게 관리하는 데 도움이 되는 몇 가지 전략은 다음과 같습니다.
- 신속하고 투명한 커뮤니케이션: IT 인시던트에 관해 능동적으로 커뮤니케이션하면 관심을 갖고 있으며 담당자라는 사실을 알릴 수 있습니다.
- 중요한 사항 추적: 대부분의 IT 서비스 팀은 일종의 서비스 데스크 소프트웨어를 사용하고 있습니다. 각 티켓의 세부 정보를 캡처하는 데 자유 형식 데이터 입력 필드만 사용하지는 않는 것이 중요합니다.
- 모니터링 시스템 구축: 이전에 많은 IT 운영 팀에서는 서비스 중단이 있는지 주의를 기울이기 위해 성능 대시보드를 개인적으로 모니터링했습니다. 팀에 도움이 되도록 이 작업은 모니터링 및 알림 도구에 맡겨주세요.
대기 근무 보상
적절한 대기 근무 보상 계획은 직원의 전문성과 근무 시간 이후의 일한 시간에 대해 보상을 제공합니다. 직원이 배려를 받는다고 느끼면 비즈니스에 관심을 가지고 성공에 기여할 것입니다.
고용주와 고용인의 최저 임금, 초과 근무 및 최소 연령 요건을 정하는 연방법인 미국 공정근로기준법(FLSA)에 따르면, 직원이 대기 중이지만 자신의 시간에 원하는 대로 자유롭게 행동할 수 있는 경우 일하고 있는 것이 아닌 “참여 대기 중”으로 간주됩니다.
누군가가 자유 시간이 제한되어 있고 근무 외 시간에 원하는 대로 행동할 수 없는 경우, FSLA에 따르면 대기 근무 시간은 “근무한 시간”으로 간주되어 보상을 받을 수 있습니다.
현지 법률은 다를 수 있으므로 전문가에게 문의하세요. 그리고 경쟁력 있고 공정하며 공동 책임의 문화를 지원하는 대기 근무 보상 계획을 목표로 삼으세요.
다양한 유형의 대기 근무 보상 계획
1. 대기 근무 시 인센티브 제공
인센티브형 대기 근무 보상 계획은 대기 근무를 지원하는 직원에게 추가 휴가, 유연한 근무 시간, 더 높은 기본 급여 또는 이러한 것들의 조합으로 보상을 제공합니다.
대기 근무 보상에 대한 이러한 접근 방식의 장점은 서비스에 대한 주인 의식이 높아져 뛰어난 복원력을 갖춘 시스템으로 이어질 수 있다는 것입니다.
또한 충분한 휴가를 제공하고 경쟁력 있는 급여를 지급함으로써 직원은 자신의 업무가 가치 있고 인정받고 있음을 알게 되어 번아웃을 방지하고 이직률을 낮출 수 있습니다.
2. 예정된 초과 근무에 대한 유급 대기 근무
유급 대기 근무 보상은 근무 중에 문제가 발생하지 않더라도 직원이 대기 근무에 할애하거나 근무가 예정된 시간에 대해 직접적인 보상을 받는다는 것을 의미합니다.
이 대기 근무 보상 모델의 분명한 장점은 실질적인 인센티브입니다. 호출기(그보다는 아마 노트북과 휴대폰)를 휴대하는 것에 대한 급여를 받고 있다는 것을 알면 문제가 발생하지 않더라도 대기 근무를 하고 업무 가능한 상태를 유지하는 데 대한 부담이 타당하다고 생각하기가 더 쉽습니다.
3. 문제 해결에 걸린 시간에 대한 유급 대기 근무
대기 근무 보상의 또다른 접근 방식은 직원이 인시던트에 대한 작업을 할 때만 급여를 지급하는 것입니다. 이를 계산하는 몇 가지 방법은 다음과 같습니다.
- 대기 근무에 대해 지급한 총 금액
- 알림/문제 해결에 소요된 시간에 대한 시간당 요금
- 발생한 알림 및 작업한 문제의 개수에 대한 요율
이 모델의 장점은 직원이 정규 업무 시간 외에 쏟은 추가적인 노력에 대해 급여를 지급받는다는 것입니다. 잠재적인 단점은, 알림 및 문제를 줄이는 데 있어서는 의욕을 저하하는 금전적인 요소가 생겨 이에 따라 시스템의 전반적인 무결성을 해칠 수 있다는 것입니다.
4. 예정된 초과 근무 및 문제 해결에 걸린 시간에 대한 유급 대기 근무
이전 두 모델을 조합한 것입니다. 어떤 회사에서는 대기 근무를 맡은 것에 대한 급여를 비롯해 받은 알림과 작업한 문제의 양에 대한 추가 금액을 모두 급여로 제공하기도 합니다. 이 대기 근무 보상 모델의 장점은 조직이 요구하는 추가 시간과 노력에 대해 직원이 충분한 보상을 받는다는 것입니다. 또한 누군가가 개인적인 시간을 잡아먹는 특히 어려운 문제에 막히면 희생한 시간에 대해 금전적으로 보상을 받게 됩니다. 그러나 다시 말하지만, 소프트웨어에 버그가 발생한 것에 대해 간접적인 보상을 제공하는 것이 회사 문화에서 합리적인지 고려하세요.
고려해야 할 기타 사항
대기 근무 보상 계획의 일반적인 모델을 알아봤으며, 적절하게 고려해야 할 그 외의 몇 가지 사항은 다음과 같습니다.
- 근무 시간 중 및 근무 외 시간에 받은 알림의 개수
이 개수는 업무 시간 이후에 대기 일정에 따른 지원이 필요한지 또는 업무 시간 동안 특별 대기 중 팀이 필요한지 판단하는 데 중요합니다.
- 인시던트 작업에 걸린 시간
조직의 인시던트마다 복잡성과 중요성이 다를 수 있습니다. 대기 중 엔지니어는 문제에 몇 분 정도만 할애하게 될 수도 있고, 밤새도록 인시던트를 해결하게 될 수도 있습니다. 일반적인 대기 근무 중에 투입되는 시간과 노력을 고려하고 공정한 보상을 위해 측정해야 합니다.
- 평균 확인 시간 또는 평균 해결 시간
문제 확인까지 걸리는 시간은 에스컬레이션 정책에 따라 시행되며 빠른 해결을 위해 중요합니다. 일정 기간 동안의 평균 확인 시간 및 평균 해결 시간을 측정하면 매니저가 추가 인센티브에 대한 결정을 내리는 데 도움이 됩니다.
결론
올바른 도구를 사용하면 대기 근무 정책을 더 원활하게 수립할 수 있습니다. 더 효과적인 인시던트 관리 솔루션을 통해 대기 일정을 관리하고 알림을 모니터링하며 직원의 만족도와 건강을 유지할 수 있습니다. Jira Service Management의 알림 기능을 사용하면 팀이 모든 모니터링, 로깅 및 CI/CD 도구에서 알림을 중앙 집중화하고 필터링하여 알림 피로를 방지하면서 신속하게 대응할 수 있습니다.