CS/SRE

Ch18. SRE 조직의 소프트웨어 엔지니어링

12.tka 2023. 8. 30. 21:20
728x90

이번 장에서는 SRE 조직 구성원들이 소프트웨어 엔지니어링을 수행한 이유와 결과에 대해서 알아보도록 하자

 

SRE 조직의 소프트웨어 엔지니어링 역량이 중요한 이유

구글은 필요로 하는 규모를 감당할 수 있는 서드파티 도구를 찾기 힘들어서 다양한 형태의 소프트웨어 개발이 내부적으로 이루어지고 있다고 한다. 그리고 SRE는 아래와 같은 이유로 인해서 내부 소프트웨어를 개발하기에 아주 적합하다고 한다. (결론은 잘해서인 것 같다.)

  • 구글만의 프로덕션 환경에 대한 SRE 조직의 폭넓고 깊은 지식
  • SRE들은 중요한 사안에는 모두 참여하므로 개발할 도구의 목적과 요구사항을 손쉽게 이해

 

SRE의 가이드 원리 중 하나는 "팀의 규모는 서비스의 성장률과 직접적으로 비례해서는 안 된다"는 것이다. 폭발적으로 성장하는 서비스에도 불구하고 SRE 조직의 규모를 선형적으로 유지하려면 지속적인 자동화 작업과 능률적인 도구, 절차에 대한 개선 노력이 필요하며 일상적인 운영 업무에 비효율성을 초래하는 부분을 전과는 다르게 바라보는 시각이 필요하다고 한다. 서비스의 규모가 커지면 자연스럽게 팀의 규모도 커진다고 생각했었는데 이를 당연하다고 생각하지 않는 것이 새롭게 느껴졌다.

 

이후로 SRE 조직의 소프트웨어 엔지니어링 중 성공적인 Auxon 사례에 대한 이야기가 이어진다. Auxon에 대한 내용이 궁금하다면 책을 읽어보는 것을 추천한다.

 

목표 이루기

  • 명확한 메시지로 소통하라
  • 조직의 역량을 평가하라
  • 출시하고 반복하라
  • 자신의 표준을 낮추지 마라

 

결론

SRE가 주도하는 소프트웨어 프로젝트는 회사가 서비스의 규모에 관계없이 지속 가능한 모델을 개발하는 데 큰 도움이 되었다고 한다. SRE가 개발한 소프트웨어는 비효율적인 절차를 능률적으로 바꾸거나 반복적인 작업을 자동화하는 것들이 대부분이므로 이런 프로젝트들이 늘어난다고 해서 SRE팀들의 규모가 그에 따라 선형적으로 커지는 일도 없다. 궁극적으로 SRE가 시간의 일부를 소프트웨어 개발에 투자하는 것은 회사와 SRE 조직, 그리고 SRE 본인들에게도 큰 수확이 되었다고 한다.

 

SRE 직군은 아니지만 데이터 엔지니어의 관점에서 데이터 분석가, 데이터 애널리스트 분들의 편의를 높이는 작업을 하는 것도 이번 장에서 말한 내용과 이어진다고 생각한다.

 

728x90