culture
버즈니 개발팀, 서울에서 열린 AWS GameDay 에서 우승 차지
4월 14일, 버즈니 개발팀에서 AWS GameDay에 참여하여 1등을 차지했습니다. (팀명: justintime)
WINNERS (왼쪽부터):
- 미키 (software engineer)
- 제임스 (data engineer)
- 파커 (MLOps engineer)
- 토니 (software engineer)
- 찰리 (software engineer)
AWS GameDay 란?
AWS GameDay는 안전한 가상 환경에서 현실 세계의 문제들을 해결하기 위해 AWS solutions를 구현하는 능력을 시험해 볼 수 있는 협동 학습 게임 대회입니다. 기술 전문가들에게는 AWS 서비스, 아키텍처 패턴, 모범 사례, 그룹 협동을 전적으로 직접 경험해 볼 수 있는 기회가 주어집니다. (출처)
AWS GameDay는 2000년 초에 시작하여 현재는 세계 여러 나라에서 열리고 있으며, 소프트웨어 엔지니어, 시스템 관리자, 데브옵스 엔지니어 등 다양한 필드에서 참가자들이 모이는 대회입니다.
행사의 목적은 클라우드 인프라에서 발생 가능한 장애에 대처 가능한 능력을 기르기 위함입니다. 이는 chaos engineering이라고도 하는데, 시스템에 지속적으로 인프라 레벨의 장애를 발생시킴으로써 회복성을 강화하는 방법으로 쓰입니다.
게임이 진행되는 동안에는 주어진 시스템에 장애를 발생시키기 위해 자동화 프로그램이 인프라 구성요소들을 의도적으로 마비시키는데, 장애의 종류는 인스턴스 종료부터 네트워크에 영향을 미치는 인프라 장애까지 다양합니다.
게임은 가상의 시나리오 안에서 시작되는데, 참가자들은 Unicorn Rentals라는 가상의 기업의 직원들이며 CTO의 부재 간 인프라를 관리하는 역할을 맡아야 합니다.
득점 방식
최소한의 비용으로 최대한 안정적으로 들어오는 요청을 처리하는 것이 목표입니다.
즉, 요청을 안정적으로 처리하고 비용을 적게 사용할수록 높은 점수를 획득할 수 있습니다. 한편, 리소스를 너무 많이 사용하거나 너무 많은 요청을 처리하지 못하면 점수는 마이너스가 됩니다.
Unicorn Rentals의 클라우드 관리자로서 수익을 극대화하기 위해 버즈니 개발팀이 모니터링한 목록들은 아래와 같습니다:
- 서비스는 정상적으로 동작하고 있는가?
- 밀린 요청이 있는가?
- 낭비되는 리소스가 있는가?
- 요청을 더 잘 처리하기 위해 개선할 수 있는 것이 있는가?
이 모든 문제를 동시에 해결하기 위해서는 팀워크를 만드는 것이 중요했습니다.
팀워크
가장 중요한 성공 요인 중 하나는 단연 팀워크입니다.
게임 초반에는 이렇다 할 장애가 발생하지 않으나, 시간이 지날수록 참가자들은 무언가 잘못된 상황을 마주하기 시작합니다.
버즈니 개발팀은 먼저 장애의 원인을 파악하고 점진적으로 역할을 분배했습니다.
장애에 더 빨리 대응하고 변동하는 요청을 더 효율적으로 처리하기 위해 책임 역할을 아래와 같이 나누었습니다:
- 코어 인프라 관리
- 장애 원인 파악
- 시스템 모니터링
- 서비스 최적화
버즈니 팀원들은 모든 과정에서 서로 협동할 수 있도록 각자의 지식을 활용해 1~2개의 책임을 맡았는데, 이런 유연한 협동 전략은 각자 역할에 집중하면서 더 회복성 있는 인프라를 구축하는 데 도움을 주었습니다.
또한 서비스 최적화를 위해 AWS에서 제공하는 많은 서비스들을 어떻게 활용할지 고민하고 선택하는 것 역시 커뮤니케이션을 중시하는 버즈니 개발팀에게는 즐거운 과정이었습니다.
AWS GameDay는 팀워크를 통해 현실 세계의 문제를 푸는 게임입니다.
홈쇼핑모아를 안정적으로 운영하기 위해 그동안 쌓아온 실전 경험으로 문제를 풀어갈 수 있었던 매우 재밌고 유익한 경험이었습니다.
This post is contributed by Mickey - software engineer, buzzni
백엔드 엔지니어
버즈니
pr@buzzni.com