개발 – 배민다움 Mon, 08 May 2023 04:02:02 +0000 ko-KR hourly 1 https://wordpress.org/?v=7.0.2 /wp-content/uploads/2021/06/cropped-배민다움_파비콘_가로512px-150x150.png 개발 – 배민다움 32 32 우아한스터디 멤버 모집중! /5870/ /5870/#respond Wed, 03 May 2023 07:15:51 +0000 /?p=5870 #테크 #PM #디자인 #브랜딩 ]]> 우아한스터디1

스터디목록신청하기자주묻는질문

뉴스레터신청

우아한 대규모 시스템 설계 스터디 개인정보 데이터 안전하게 지키기 DDD with 클린코딩 모여서 각자 글쓰기 아키텍처 청소부 모집 제 컴퓨터에서는 되던데, 주도 개발 쏙쏙 들어오는 함수형 코딩 근거있는 코드리뷰를 위하여 오늘의 PM, 내일의 서비스 (사각사각) 배달이 내 손으로 만들기 책에서 배우는 마케팅 뇌가스터디 신청하기 뉴스레터 ]]>
/5870/feed/ 0
우리가 iPhone 14 Pro를 사야하는 이유 /5767/ /5767/#respond Tue, 25 Apr 2023 00:34:37 +0000 /?p=5767 '실시간 배달현황' 개발 이야기 ]]> 작년 연말, 무려 4년 만에 아이폰을 업그레이드했습니다.
바로 iPhone 14 Pro로 말이죠!
바꾸니 뭐가 좋냐면… *^^*
일단 배터리 지속 시간이 아주 길어졌고,
물론 카메라도 좋아졌죠.

그러던 어느 날 같이 아이폰을 업그레이드한 남편이 말했어요. 

“와, 배민 이거 엄청 편하다!”
“뭐가?” 
“잠금화면에서 배달현황을 보여주는데? 앱을 안 열어도 되고, 너무 편해” 

그때는 솔직히 ‘뭐 이런 걸 가지고~ 그냥 알람이잖아’ 싶었어요.
며칠 후 배민으로 점심을 시켰는데, 와… 직접 써보니 알겠더라고요. 이게 뭔데 이렇게까지 편하지? 당황스러울 정도였죠. 

이 기능이 뭐냐구요?
바로 iOS 16.1부터 도입된 ‘라이브 액티비티(Live Activities)’라는 기능입니다. 배달의민족 앱에서는
‘실시간 배달현황’이라고 부르기도 하죠. 

기능은 간단합니다.
아이폰의 잠금화면과 ‘다이나믹 아일랜드(Dynamic Island)’라는 아이폰14프로의 새로운 영역에서 실시간으로 배달의 진행상황을 알 수 있어요. 

이렇게요. 

기능은 간단하지만
이 기능에 대한 사용자들의 반응은 결코 간단하지 않았습니다.
써본 사람만 알거든요.
이제 이전으로 결코 돌아갈 수 없음을.

‘실시간 배달현황’ 업데이트 이전과 이후,
뭐가 달라진 걸까요?

‘실시간 배달현황’ 을 통해 “몇 분 남았지?” 확인할 때마다 1) 핸드폰을 열고 2) 배민 앱을 여는 두 단계가 줄어듭니다.

아마 배민으로 음식을 주문하고 나서 “몇 분 남았지?” 한 번만 확인하는 분은 거의 없을 거예요. 그러니 한 번의 주문에 작게는 두 번, 많게는 수십 번의 행동이 절약됩니다. 극강의 편의성 개선이죠. 그래서인지 포털이나 각종 커뮤니티에 #배민 #라이브액티비티 #다이나믹아일랜드 관련 긍정의 후기와 인증샷이 올라와 있더라고요. 

이렇게 써보기만 하면 열광하는 기능을 만든 사람들은 누구일까요? 배민푸드iOS개발팀의 민하님을 만나 ‘실시간 배달현황’ 개발 후기를 들어봤습니다. 

 

Q. 이 프로젝트를 시작하게 된 계기가 있나요?
매년 6월 정도에 Apple에서 주최하는 WWDC(WorldWide Developers Conference. 세계 개발자 컨퍼런스)라는 행사가 있어요. 신제품 발표와 더불어 소프트웨어 개발자들을 위한 새로운 기술들이 발표되는 행사인데 작년에 진행된 WWDC22 에서는 iOS16에 추가된 새로운 기능과 기술들이 공개되었어요. 그중에서 가장 눈에 들어왔던 건 역시나 *실시간 현황(라이브 액티비티)이었고요. 

*실시간 현황(라이브 액티비티)은 iOS 16.1 부터 제공되는 기능으로 Apple에서 ‘스포츠 게임, 운동, 차량 공유 또는 음식 배달 주문과 같이 실시간으로 일어나는 일을 잠금 화면에서 바로 파악할 수 있도록 도와주는 새로운 기능이다.’ 라고 소개하고 있다.

이건 누가 봐도 배달의민족 앱에 적용되면 좋을 것 같은.. 아니 꼭 적용해야만 할 것 같은 기능이었거든요! (테크 관련 유명 유튜버도 배달의민족 앱에 적용되면 대박일 거 같다고 이야기했다니 저만 그런 생각했던 건 아닌 거 같아요.ㅋㅋ) 

 

Q. 제가 써보고 너무 좋아서 ‘라이브 액티비티’에 대한 걸 찾아보는데 배민 얘기가 많이 나오더라고요. 오, 반응이 대단하구나 느꼈는데 만드신 분들은 사용자 반응을 좀 느끼고 계셨나요?
작년 12월 2일에 업데이트된 배달의민족 아이폰 앱 11.36.0 버전부터 사용자들이 실시간 배달현황을 사용할 수 있게 되었어요. 저희는 보다 안정적으로 서비스를 제공하기 위해 점진적 출시를 하고 있는 상황이라 사실 첫날에 많은 사용자가 있진 않거든요? 근데 클리앙 같은 커뮤니티나 트위터, 유튜브 같은 채널을 통해 빠르게 반응이 오더라고요. 대부분 좋은 반응들이라 프로젝트에 참여하신 모든 분들이 기뻐했던 거 같아요.

 

Q.아직 세상에 공개되지 않은 iOS에 새로운 기능을 만드는 건 쉽지 않은 일 같아요.
아무래도 iOS 16 Beta 환경에서 개발한다는 게 가장 어려웠죠. 레퍼런스를 찾기도 힘들었고, iOS 16 Beta 버전이 새로 나올 때마다 스펙이 달라지거나 기능이 제거되는 웃지 못할 일들도 있었어요. iPhone 14 Pro, Pro Max 가 발표되면서 다이나믹 아일랜드(Dynamic Island) 기능이 추가 되었는데 거의 끝이 보인다고 생각했던 저희에겐 스펙이 추가된 거라 점점 더 멀어져 가는 느낌이 들 때도 있었고요. (실제 개발을 담당하신 저희 팀 선범님이 정말 많이 고생하셨어요. 지금도 고생하고 계시다는 건 비밀) iOS 16.1 이 릴리즈되는 날짜를 저희는 알 수 없기에 프로젝트 일정을 구체적으로 산정하기 어려웠던 것도 있네요!

 

Q. 아이폰 앱은 애플의 가이드를 따라야 해서 답답할 때가 있죠. 아무런 제약이 없었다면, 더 해보고 싶은 게 있었나요?
기술적인 제약이 많은 기능이다 보니 실시간 현황에 표시되는 이미지나 텍스트 등을 저희가 원하는 만큼 풍성하게 꾸미지 못했던 거 같아요. 디자이너 분들이 많은 고민을 해주셨음에도 불구하고 적용하지 못해서 개발하는 입장에서도 사용하는 입장에서도 많이 아쉬워요.

 

Q. 많은 후기에서 “와, 배민이 이걸 만들어 줬어!”하는 반응이 느껴졌습니다. 최근 애플페이 적용도 그렇고 라이브 액티비티도 iOS 업데이트에 맞춰 정말 빠르게 적용한 사례 같아요. 이 프로젝트는 민하님에게 어떤 의미가 있나요?
사용자들에게 계속해서 새로운 경험의 기회를 제공하고 싶어요. 보통 새로운 OS가 나올 때마다 어떤 기능을 우리 앱에 녹이면 좋을지 고민하곤 하는데 생각보다 쉽지 않았던 거 같아요. 새로운 기능이나 기술을 적용하고 싶은 개발자로서의 욕심은 있지만 서비스와 사용자를 모두 고려하면서 유의미한 결과를 만들어내야 하다 보니 어렵더라고요. 실시간 배달현황처럼 모든 것이 딱 맞아떨어지는 경우는 이번이 처음이었던 것 같아요. 

이 기능이 사용자에게 주는 가치에 대해 공감해 주셨기 때문에 프로젝트를 진행하는데 다들 적극적으로 함께 해주셨어요. 정말 바쁜 일정 속에서도 다들 적극적으로 도와주셔서 너무나도 감사하다고 다시 말씀드리고 싶어요. 🙇🏻‍♂️

 

꼭 아이폰 14 Pro를 사지 않아도 iOS만 최신 버전으로 업데이트하면 잠금화면에서 ‘실시간 배달현황’을 확인할 수 있어요!  (그래도 사고 싶긴 하지만요) 

]]>
/5767/feed/ 0
우아한테크코스를 수료하면 우아한형제들에 바로 입사하나요? /2941/ /2941/#respond Tue, 15 Mar 2022 00:47:52 +0000 /?p=2941 얼마 전 한 대기업에서 모집 요강에 우아한테크코스 수료자 우대한다는 항목을 넣어 화제가 된 일이 있었습니다. 덩달아 화제가 된 것은 우아한테크코스 수료자들의 취업률과 그 수료자들이 입사한 회사였어요. 우아한형제들을 비롯해 유명 IT기업과 유니콘 기업, 떠오르는 스타트업까지 라인업이 아주 화려했거든요. 

 

우아한테크코스 수료는 우아한형제들 입사 프리패스일까요? 그게 아니라면 대기업부터 유명IT 기업까지 러브콜을 보내는 중에 어떤 이유로 우아한형제들을 택했을까요? 그에 대한 답을 우아한테크코스 수료 후 우리 회사에 입사한 구성원에게 직접 들어보았습니다.

 

1기 수료자 – 김지희(혜택플랫폼팀), 이영현(시스템신뢰성개발팀)

2기 수료자 – 석태진(혜택플랫폼팀), 진소린(커머스플랫폼팀)

3기 수료자 – 박선희(주문프론트팀), 신세희(커머스플랫폼팀), 조윤호(물류시스템개발팀)


Q. 우아한테크코스에 지원하게된 동기가 궁금합니다.

 

🧒🏻 김지희: 우아한테크코스에서 지원하기 전에 이미 일을 하고 있었는데 실력을 끌어올리고 싶었어요. 우아한테크코스가 생기기 전에 우아한테크캠프(단기 개발 인턴 프로그램)가 있었는데 그 운영이 잘되는 것을 봤어요. 그래서 우아한형제들은 교육을 잘 할 것 같다고 생각했어요. 그보다는 교육기간이 8개월로 길어서 고민했어요.(2기부터는 10개월로 운영) 다른 부트캠프들은 보통은 1~3개월이 많거든요. 

 

🧑🏻 진소린: 저는 우아한형제들만의 위트를 사랑하는 팬 중 한명이었어요. 관심 있는 회사에서 개발자 양성을 위한 코스를 한다고 하길래 지원했어요. 가장 마음을 흔들었던건 지원서에 있던 몰입, 자기주도, 성장, 협업과 같은 키워드였던 것 같아요. 그냥 정답을 알려주는 교육이 아니라 스스로의 기준에 따라 결정을 하고 주체적인 학습을 할 수 있겠구나!라는 느낌을 받아서 지원했습니다.

 

👱🏼‍♀️ 신세희: 저는 개발 비전공자에요. 국문학을 전공하다가 관심이 생겨서 개발 공부를 혼자 시작했는데 잘 공부하고 있는게 맞는지 확인해보고 싶어서 지원했어요. 미션 기반의 교육 과정이 마음에 들기도 했고요. 

 

👦🏻 조윤호: 저는 다른 일을 하다가 개발을 시작했어요. 개발자 커뮤니티에서 우아한테크코스를 알게 되어 지원했어요. 그 커뮤니티에서 스터디를 했는데 우아한테크코스 1,2기들이 있었거든요. 그분들이 우아한테크코스 좋다는 얘기를 많이 해주셔서 지원했습니다. 

 

 

Q. 우아한테크코스 수료하면 바로 우아한형제들에 입사한다고 생각하는 사람도 있을 거 같은데 어떤가요? 우아한테크코스는 우아한형제들 입사 프리패스인가요? 

 

🧒🏻 이영현: (웃음)아니오. 우아한테크코스 수료자 중에서도 우아한형제들의 가치관과 좀 잘 맞는 크루들이  뽑히는 거 같아요.  

 

 

Q. 회사가 우아한형제들과 여러분의 핏을 살펴보았던 것처럼 여러분도 우아한형제들이 가도 좋을 회사인지 고민했을 거 같은데 많은 회사들 중에서 우아한형제들을 선택한 이유는 무엇인가요?

 

🧒🏻 이영현: 우아한테크코스에서 우아한형제들의 문화를 직, 간접적으로 경험할 수 있었어요. 그러면서 다른 회사랑 좀 다르다는 생각을 했고요. 회사의 철학이나 분위기 문화 이런 것에 호감이 생겼어요. 또 우아한테크코스라는 교육을 제공한다는 자체가 직원들의 성장에 관심이 있는 거잖아요. 

 

👱🏼‍♂️ 석태진: 저는 회사를 평범한 사람들이 모여서 비범한 성과를 만들어 내는 곳이라고 정의하는 게 와 닿았어요. 우아한테크코스 미션은 페어나 팀 단위로 진행돼요. 혼자서는 해결이 안된 것들이 집단지성으로 해결되는 경험들이 축적되면서 자연스럽게 회사 가치관을 공감할 수 있었어요.  

포수타

아한 임의 우아아한테크코스 버전 비와

 

🧑🏻 조윤호: 우아한형제들의 문화를 엿볼 수 있는 게 많았어요. 교육장에도 송파구에서 일 잘하는 11가지 방법 같은 것도 걸려있고요. 그런데에서도 영향을 받았고요. 교육 받는 도중에 우아한형제들 프론드엔드 개발자 밋업에도 참여할 수 있었는데요. 발표하시는 개발자 분들을 보면서 이 회사 가고 싶다는 생각을 했습니다. 

 

 

Q. 그럼 혹시 우아한형제들과 같은 선상에 두고 고민한 회사가 있나요? 이 질문은 오프 더 레코드입니다.

 

(일동 웃음, 우아한형제들만 지원한 경우도 있고, 아닌 경우도 있었습니다.)

 

 

Q. 우아한테크코스와 우아한형제들이 공통점이 많을 거라고 생각했다고 말씀하신 분들이 많은데 어떤 점이 같고, 어떤 점이 다른가요?

 

🧒🏻 김지희: 가장 비슷한 건 분위기나 문화예요. 그래도 일은 일이고 교육은 교육이더라고요.(웃음)

 

👦🏻 석태진: 문제를 동료들과 함께 고민하고 토론을 통해 함께 해결한다는게 가장 비슷해요. 다른점은 함께 문제 해결을 고민할 동료들이 현업에서는 훨씬 다양하다는것? 현업에서는 훨씬 직군이 다양한만큼 커뮤니케이션을 위한 노력이 더 크더라고요. 그만큼 다양한 각도에서 문제를 접근하고 해결할 수 있고요.

 

 

Q. 우아한테크코스의 교육과정이 독특하다라고 들었습니다. 직접 경험한 입장으로 가장 좋았던 것과 이유는 무엇인가요?

 

🧑🏻 신세희: 페어 프로그래밍이 가장 좋았어요. 한 명과 계속하는 게 아니라 2주마다 짝이 계속 바뀌면서 다양한 사람들을 만나요. 다들 개발수준도 다르고 성격, 특성이 달라요. 프로그래밍 습관같은 걸 흡수하면서 커갈 수 있는 것도 좋았지만 안 맞는 부분을 맞춰가는 방법을 배울 수 있었어요. 또 내 의견을 전달하는 방법도 많이 터득할 수 있어서 가장 의미있었다고 생각해요.

페어프로그래밍

페어 프로그래밍중!!

 

👱🏼‍♀️ 박선희: 레벨3, 4에 하는 프로젝트가 인상 깊었어요. 프로젝트를 제안하고, 투표를 통해서 결정하는데 몇 년 전에 만들고 싶어서 제가 기획해 두었던 프로젝트가 채택이 됐어요. 그래서 기획부터 개발까지 직접 참여할 수 있어서 좋았어요. 

 

🧒🏻 김지희: 커리큘럼 구성 자체요. 레벨별로 과제는 다르지만 그 과정은 반복이 되거든요. 강의가 거의 없고, 답을 알아서 찾아가고 피드백을 받는 과정이 좋았어요. 어떻게든 돌아가는 코드만 작성할 수도 있는데 코드가 작동하는 것은 당연하고, 그 구조에 대한 고민까지 하는 것도 좋았고요. 또 혼자 고민하는 게 아니니까 같이 크루(교육생)들과 같이 알아서 공부하게끔 만든 자체가 좋았던 거 같아요. 

 

 

Q. 우아한테크코스는 점수나 순위가 없다고 들었어요. 그렇다면 ‘내가 잘하고 있다’를 스스로 어떻게 알게 되는지 궁금합니다. 

 

🧒🏻 이영현: 페어(둘이 짝을 이루어 하는 프로그래밍)를 한 뒤에 서로 피드백을 써줘요. 미션이 끝날 때 마다 중간점검식으로 코치님들과 한 번씩 이야기를 나누기도 하고요. 그러면서 내가 성장하고 있구나라는 생각을 했던 거 같아요. 

 

👱🏼‍♀️ 진소린: 우아한테크코스에 유명한 말이 있는데요. ‘어제의 나와 비교하라!’는 말이에요. 처음에는 이 말이 와닿지 않았는데요. 그래서 매일 학습한 걸 기록했어요. 궁금한 질문을 기록해두면 미래의 성장한 내가 답변을 달고, 그렇게 빈칸을 채워나가면서 스스로 잘 하고 있다고 생각한 것 같아요. 

 

👦🏻 석태진: 같이 미션을 했던 동료들의 피드백을 통해서 성장하고 있다고 느꼈어요. 새로운 기술을 많이 학습했던 레벨2가 끝나고 피드백을 하면서 원래 이 기술을 몰랐는데 이제는 알게되었구나 라고 스스로 인지하게 되어서 좋았어요. 같이 미션을 할 때 동료의 좋은 점을 흡수해서 다음 미션 때 그 장점을 내가 다른 동료에게 피드백 받고 싶다는 목표를 세우기도 했고요.

 

 

Q. 그 목표를 달성했나요?

 

👦🏻 석태진: 단축키를 잘 쓰는 동료가 있었는데 그걸 배워서 다음 미션에서 단축키를 잘쓴다는 피드백을 받았어요. (웃음)사소한 것이지만 기분이 좋았어요. 

 

 

Q. 마지막으로 우아한테크코스가 궁금한 분들에게 한 마디 한다면? 

 

🧑🏻 신세희: 우아한테크코스보다 괜찮은 부트캠프가 있는지 모르겠어요. 일단 회사의 전폭적인 지원을 받기도 하고요. 우아한형제들의 문화를 엿볼 수도 있고요. 커리큘럼도 완벽하지 않나(웃음) 

 

🧒🏻 박선희: 우아한테크코스에 대해 궁금해 하는 친구들에게 케이스를 나눠서 대답을 해줘요. 취업이 급한지 더 깊게 학습을 하고 싶은지요. 충분히 시간을 투자할 수 있고, 더 깊게 학습을 하고 싶다면 정말 추천해요. 개발문화나 언어적인 면으로도 많이 배울 수 있어요. 


우아한테크코스를 이끌고 있는 재성님을 만났을 때도 어쩌면 나의 길이 마케터가 아니라 개발자가 아니었을까… 라는 생각이 들만큼 가슴이 뛰었는데요. 우아한테크코스 수료자들의 이야기를 들으니 우아한테크코스가 더더욱 궁금해졌습니다. 혹시 저와 같은 마음이시라면 우아한테크코스를 한 번 둘러보세요. 숨어 있던 여러분의 개발 본능이 깨어날지도 모르니까요. 

 

 

 

🪐 우아한테크코스 이야기

#1. 우아한테크코스 교장선생님에게 물었습니다.

▶#2. 우아한테크코스는 수료하면 우아한형제들에 바로 입사하나요?

#3. 당신을 최고의 개발자로 만들어드립니다.

#4. 우아한형제들이 개발자를 위해 만든 공간, 테크살롱 오픈!

]]>
/2941/feed/ 0
우아한테크코스 교장선생님에게 물었습니다. /2936/ /2936/#respond Tue, 15 Mar 2022 00:46:13 +0000 /?p=2936 회사 생활의 즐거움이란 종종 스승님 같은 분을 만날 때 아닐까요? 

재성님과 1시간 30분 동안 인터뷰를 하고 나니 우아한형제들에서 또 한 분의 큰 스승님을 만난 것 같아 즐겁고 설레었습니다. 누구보다 개발 교육에 몰입하고 계시면서도, 사실 프로그래밍은 도구일 뿐. 이 도구를 활용해서 학습에 대한 즐거움, 다른 사람들과 협력하는 즐거움을 경험하도록 하는 것이 목표라고 하시는데요. 재성님과 이야기를 나눌수록 어쩐지 이것저것 해보고 싶은 것이 많아지는 희망찬 마음을 덤으로 얻으실 수 있을 거예요.  

 

그럼 우아한테크코스의 교장선생님, 재성님을 만나보겠습니다. 

 

 

Q. 안녕하세요. 재성님 👋🏼  우아한형제들의 재성님은 어떤 분인지 소개 부탁드려요. 

안녕하세요. 저는 우아한형제들에서 우아한테크코스(이하 우테코)를 맡고 있는 박재성이라고 합니다. 

 

Q. 재성님이 우아한테크코스의 교장선생님인 건가요?

네, 그렇겠네요. 학교로 치면 교장선생님.

우테코에서 선생님은 코치, 교육생은 크루라고 불러요. 

저는 백엔드 캡틴이고요. 

 

Q. 그럼 크루들이 재성님을 “캡틴!”이라고 부르나요? 

아 그건 아니고요. 우아한형제들과 다르게 우테코는 영어 닉네임을 쓰고 있어요. 

저는 “포비” 입니다. 포비가 어디에 나온 캐릭터인지 아세요?

 

Q. 설마… 설마…? 뽀로로(맞출 줄 몰랐죠)? 

요즘엔 많이들 그렇게 생각하시더라고요. (웃음)  

뽀로로친구 포비는 아니고요. 미래소년코난의 포비예요. 

포비는 앞뒤를 재지 않는 자유로운 영혼이거든요. 

학생들하고 좀 더 소통하면 좋겠다 싶어서 5년 전부터 포비가 되었습니다. 

 

Q. 아.. 그 포비였군요(당했다…) 영어 닉네임을 쓰면 뭐가 좋은가요?

우테코 크루가 21세에서 36세까지 다양하게 분포되어 있어요. 나이에 대해서나 코치, 캡틴과 크루 사이에 위계가 없길 바라거든요. 배경은 중요하지 않으니까요. 서로를 영어 닉네임으로 부르면 동등한 입장에서 토론할 수 있어서 좋아요. 우테코는 이게 정말 중요하거든요. 

선생님! 캡틴! 재성님! 그리고 포비! 훨씬 만만하게 느껴지죠? 

 

Q. 진짜 그렇네요. 어쩐지 닮으신 거 같기도… 그럼 재성님은 개발자인가요… 교육자인가요? 

음.. 교육하는 개발자? (고민) 점점 개발하는 교육자가 되어가는 것 같기도 하고요. 

처음엔 웹프로그래머로 시작했고, 백엔드 개발자로 12년 동안 살다가 교육자로 산지도 10년이 되었네요. 

 

Q. 개발 교육 분야가 점점 핫해지고 있는데 꽤 일찍 시작하셨네요. 

재성님이 입사하셔서 우테코를 만드신 건가요?

만남의 시작은 우아한테크캠프였어요. 우아한테크캠프는 우테코와는 또 다른 9주 정도 짧은 기간 동안의 프로그래밍 훈련인데요. 우아한테크캠프 2기에 예전에 같이 일하던 분들이 참여하시면서 교수로 참여하게 됐어요. 그래서 인연이 되었는데 범준님이 본격적으로 함께 하자고 제안을 하시더라고요. 

그런데 거절했죠. 

 

Q. 네? ㅋㅋㅋ 이 당당함은 왜때문이죠?

회사에 소속되어 일하는 게 싫기도 했고요. 저는 이미 독립 교육자로 잘 살고 있었어서 굳이… 

 

Q. 와.. (부럽) 우아한형제들은 이런 재성님을 어떻게 설득했을까요?

우아한형제들이 우아한테크캠프를 대하는 진정정이 좀 남다르더라고요. 

아마 우연한 기회에 테크캠프를 경험하지 못했다면 아마 들어올 생각을 안 했을 것 같아요. 내부에 들어와 보니 일하는 사람들이 일에 접근하는 방식이 다른 회사랑 확실히 좀 다르더라고요. 시켜서 한다기 보다 스스로 동기 부여가 돼서 즐겁게 한달까? 테크캠프 덕분에 회사에 대한 신뢰가 좀 쌓였어요. 

 

Q. 휴… 다행입니다. 이 자리를 빌려 재성님을 설득하신 구성원 분들께 감사를 전하고 싶네요 ㅋㅋ 마침내 들어오셔서 본격적으로 우테코를 만들기 시작하셨는데요. 요즘처럼 취업이 어려운 세상에 취업률은 90%에 육박하고.. 심지어 ‘우아한테크코스’ 수료 이력을 개발자 채용 우대자격에 넣은 대기업도 생겼더라고요. 우테코를 딱 한 줄로 설명한다면? 

쉬운 말로 표현하면 우테코는 현장형 인재를 양성하는 일종의 학원이에요. 

 

Q. 우테코 홈페이지를 가보면 우테코만의 철학 같은 것이 느껴지는데요. 우테코를 만들면서, 이것만큼은 꼭 지켜야지! 싶었던 가치가 있으셨나요?

우테코에는 성적과 등수가 없어요. 

경쟁보다는 협업을 가르칩니다. 그래서 우테코에는 경쟁하지 않고 협업할 수 있는 모델들이 많이 들어있어요. 현장에서는 대학의 성적으로 채용하지 않거든요. 성적이 좋다고 일을 더 잘하는 것도 아니고요. 저마다의 장점들이 특정 회사와 잘 맞는다? 그런 장점들 위주로 채용하는 것이 아마 점점 더 활성화될 거라고봐요. 그럼 본인들의 장점(색깔)을 찾아주는 것이 중요하죠. 

 

저는 프로그래밍 교육을 하고 있지만, 사실 프로그래밍은 도구라고 생각해요. 이 도구를 활용해서 학습에 대한 즐거움, 다른 사람들과 협력하는 즐거움을 경험하도록 하는 것이 저의 목표예요. 이런 경험이 쌓이면 주변 환경에 휘둘리지 않으면서 온전히 내 색깔을 유지하면서 살아가는 주체적인 인재가 될 테니까요. 

 

Q. 점수와 등수가 없는 학교! 대한민국 학생들의 오랜 꿈이 이뤄진 곳이군요 (눈물) 그런데 시험도 없고, 점수나 등수 같은 평가가 없으면 실력은 어떻게 검증하나요? 자칫 하향평준화가 되진 않을까 걱정도 되는데요. 

저는 사실 교육을 시작하기 전부터 기존의 교육이 너무 싫었거든요. 그래서 교육자로 살면서 다양한 시도를 많이 해봤어요. 그래서 시험은 없지만 다양한 장치가 있어요. 

 

일단 경험 기반의 커리큘럼을 설계하고 끌어가려고 노력하는데요. 우테코에는 이론이나 강의 위주의 수업을 최소화 하고 있어요. 온보딩부터 협업을 경험하도록 하거든요. 

 

Q. 혹시 연극도 그런 장치인가요?

맞아요. 온보딩 2주 동안 팀을 짜고 연극을 준비해요. 프로그래밍 관련 주제로! 

시작부터 우테코가 얼마나 협업과 커뮤니케이션을 중요하게 생각하는지 피부로 느끼게 하는 거예요. 연극을 하고 나서 꼭 회고를 하는데요. 이런 과정에서 계속해서 협업을 하게 되죠. 

지금은 코로나 때문에 연극이 어려워서 보이는 라디오로 하고 있어요. 보여드릴 수 없어서 아쉬운데 제가 1년 중에 가장 많이 웃는 날이에요. 상상 이상의 작품도 많고 얼마나 재미있는지 몰라요. 

 

Q. 말씀하시는 재성님 표정이 ㅋㅋ 입꼬리가 귀에 걸리셨어요. 진짜 재밌으셨나 봐요. 너무 보고 싶어 지네요! 그런데 개발 배우러 왔는데 웬 연극? 라디오? 반발하는 교육생들은 없었나요? 

아직까지 이거 때문에 그만둔 크루는 다행히 없었어요 ㅋ 

이게 충격요법도 있지만 저희는 그만큼 협업을 중요하게 생각하거든요. 이거부터 시작하니까 크루들도 프로그래밍이 일 순위가 아니구나, 를 바로 느끼더라고요. 이것도 했는데 못할게 뭐가 있어! 용기를 얻는 과정이기도 하죠. 협업을 중요하게 생각하는 우테코의 가치와 뜻에 공감하는 교육생들이 모여 있는 것이 아닐까? 싶어요. 팀의 가치와 교육생들이 지키는 가치가 잘 맞는 것이 아주 중요하거든요.

연극이나 보이는라디오가 관계 형성을 먼저 하게 만들어 주는 과정인데요. 처음에는 같이 밥 먹을 사람도 없잖아요. 작은 관계 형성을 먼저 하게 만들어서 친해지는 거예요. 

 

Q. 짝 프로그래밍도 우테코의 중요한 장치죠?

맞아요. 모든 과제를 짝으로 합니다. 

짝 프로그래밍은 가장 작은 협업이죠. 매번 토론하고 의견 충돌도 하면서 4~5개월 동안 짝 프로그래밍으로 미션을 하고 난 다음에 팀 프로젝트를 하는데요. 이 모든 과정에서 회고를 정말 많이 해요. 

 

Q. 회고 이야기를 진짜 많이 하시는데요. 

우테코에는 프로그램도 정말 다양하게 많은데, 그중에서도 회고가 중요한 이유는 뭔가요?

팀원들 간에 피드백을 주는 문화를 정말 중요하게 생각하거든요. 회고를 하면서 상대방에게 기분 나쁘지 않게 피드백하는 연습을 하는 거예요. 좋은 말만 하는 것은 좋은 회고가 아니거든요. 흔히들 회고를 할 때 개선점을 찾아서 액션 플랜을 만드는 것에 집중하는데 그것보다 더 중요한 게 있어요. 

 

Q. 오! 그게 뭐죠!  

감정 회고를 하는 거예요. 

짝 프로그래밍이나 팀 프로젝트를 할 때 어떤 감정을 느꼈는지, 나는 이런 이런 행동 때문에 상처를 좀 받았어. 앞으로는 이렇게 대해주면 더 좋겠어. 이렇게 감정을 회고하는 것만으로도 사람이 기분이 좋아지거든요. 그럼 점점 서로 캐미가 올라가서 협업이 좋아져요. 정말 기분 좋게, 개운하게 프로젝트가 마무리되는 거죠. 

 

Q. 우테코에 글쓰기 교육도 있다고 들었는데요. 사실인가요? 

네 맞아요. 우테코 수료 조건이기도 하고요. 

전문 글쓰기 코치가 있는 것은 아니고요. 코치가 글쓰기 교육도 하는데요. 요즘 학생들이 최소한의 글쓰기도 안 하고 있는 상태잖아요. 그래서 블로그 글쓰기를 장려하는 편이에요. 글을 쓰면 자연스럽게 회고가 되기도 하니까요. 우테코 수료를 위해서는 주제가 주어지고 A4 1장 이상의 글을 써야 하는데요. 협업에 대해 쓰기도 하고, 학습법이 어떻게 달라졌는지를 주제로 쓰기도 하고요. 모든 글은 크루들끼리 상호 리뷰를 하고 승인을 해요. 이렇게 4편을 쓰는 것이 수료 조건입니다. 그 중에 좋았던 글은 우형 기술블로그에도 올라가는데, 이게 크루들에게 큰 동기부여가 되더라고요. 

 

Q. 이렇게 다양한 활동을 하다 보면 크루들의 개성도 여기저기서 잘 드러날 것 같은데요. 우테코 교육생 중에 기억에 남는 분들도 많을 것 같아요. 특별히 재성님에게 귀감이 되었던 분이 있다면?

음, 우테코 수료까지 본인 공부하기도 참 바쁘거든요. 

그런데 지식을 공유하고, 주변을 챙기고, 위로해주고 하는 친구들이 상상 이상으로 많아요. 심지어 친구들을 챙기다가 ‘이벤트 TF’까지 만들어서 이벤트 한 친구도 있고요 ㅋ 

아! 반말하자고 했을 때 나서 준 친구도 기억에 남네요. 교육자와 교육생 간에 허들을 깨준 경험이었거든요. 

 

Q. 반대로 우테코 크루 중에 좀 힘들었던 경험? 품기 어려웠던 사람도 분명 있었을 것 같은데요. 

당연히 있죠. 우테코에도 지켜야 할 원칙들이 있으니까요. 

다른 교육기관에 비하면 교육생 이탈률이 아주 낮은 편이긴 하지만, 원칙을 위반하면 제적을 당할 수도 있어요. 다른 교육생들을 보호해야 하니까요. 

우테코는 교육기관이기 때문에 할 수 있는 것과 하면 안 되는 것의 바운더리를 제시해야 한다고 생각해요.  소프트웨어는 도구이고, 사람을 변화시키는 것이 교육이라고 생각하거든요. 원칙을 지키면서 본인의 개성을 발휘하는 것을 지향하고 있습니다.  

 

Q. 그런 점들이 우아한형제들이 중요하게 생각하는 문화와 결을 같이 하는 것 같아요. 우아한형제들의 핵심가치 “규율 위의 자율” 처럼요. 혹시 의도하고 우아한형제들과 우테코를 연결하고 있는 걸까요?

의도적인 건 하나도 없어요. 

처음에 합류할 때부터 제가 지향하는 가치랑 회사가 추구하는 가치랑 상당히 비슷하다고 느꼈거든요. 그래서 같이 해도 되겠다 싶었으니까요 ㅋ 그런데 아무래도 우테코는 교육기관이라 아무래도 우형보다 더 개발 문화가 이상적인 모델이죠. 그래서 여기서 훈련된 친구들이 실제로 우형으로 입사해서 개발 문화를 주도하고, 바꾸고 있다고도 생각해요. 

 

Q. 와, 너무 멋진 선순환인걸요? 그렇다면 더욱 우테코 교육생을 많이 뽑고 많이 배출해 주시면 안 될까요? 우테코 들어가기가 점점 너무 어렵다고 하던데요 ㅋ 

네 맞아요. 경쟁률이 20:1 이니까 쉽지 않죠. 교육도 서비스 개발처럼 애자일 방식으로 하고 있거든요. 하나씩 검증하면서 확대하는 식으로요. 그래도 52명으로 시작해서 매년 수료생이 늘어나고 있고, 내년에는 170명 이상 배출할 목표를 갖고 있습니다. 매년 확대해 보려고 하는데요. 사실 교육자가 많아야 교육생을 많이 뽑을 수 있는 건데… 

 

Q. 아, 그렇네요. 코치님을 모시기도 쉽지 않을 것 같아요.  

특히 우테코는 모든 코치가 개발자라는 점이 다른 개발 교육기관과 가장 큰 차이점이라고 하더라고요. 

우테코는 개발자만 코치가 될 수 있고, 교육/콘텐츠기획/개발/플랫폼 운영까지 모두 개발자 출신 교육자가 하고 있어요. 많은 개발 교육 기관들이 전문개발자가 교육하지 않는 경우도 많거든요. 저희는 현장형 교육을 추구하다 보니 개발자가 교육을 하고 있고요. 현장 개발 경험이 많은 코치들이 있다 보니 크루들과 공감대를 잘 형성하더라고요. 우테코에서 교육자 양성과정 프로그램도 곧 오픈하려고 해요. 더 많은 개발자들이 교육자의 길을 가면 좋겠어요. 제가 처음 교육자로 활동할 때 제자들 중에 지금 코치로 함께 하고 있는 분들도 있어요. 

 

Q. 세상에, 제자가 선생님이 되셔서 같은 학교에 계신 거군요!

스승으로서 정말 큰 보람이죠. 우테코 크루들도 교육자를 희망하는 친구들이 있어서 몇 년 후면 교육자가 부족한 문제도 해결될 것 같아요. 

 

Q. 그럼 재성님이 쓸 수 있는 돈이 무진장 많다! 우테코에서 해보고 싶으신 게 있나요?

있죠. 진짜 기분 좋은 상상인데요. 

프로그래머 마을을 만드는 거예요. 

기숙교육기관을 만들어도 좋을 것 같고요! 꿈꾸고 있어요. 상상하면 재밌으니까요. 

 

Q. 마음이 웅장해집니다. 왠지 머지않아 이루어질 것 같아요. 

꿈꾸고 만들어가면 미래가 되는 거니까. 

저는 미래에 대한 예측을 잘 안 해요. 원하는 대로 만들어가면 되니까.  

우테코의 지역을 넓히고 싶기도 한데요. 온라인 강의를 하면서 전국에 오프라인 거점을 만드는 것이죠. 사실 이건 이미 시작을 하긴 했어요. 

 

Q. 혹시 그 프로젝트가 테크살롱인가요? 

네 맞아요. 개발자들이 요즘 카페에 모여서 공부 엄청 많이 하거든요. 

개발자들은 지식 공유를 좋아하는 사람들이라 공간만 만들어 주면 얼마든지 모이고, 선순환과 멘토링이 일어날 것 같았어요. 프랑스의 살롱문화처럼. 우테코 교육생뿐 아니라 모든 개발자들에게 개방해서 소통했으면 좋겠다 싶어서 “테크살롱”이라는 이름을 붙였어요. 작은 규모의 테크살롱이 전국적으로 퍼지는 상상을 하고 있습니다. 그 시작이 이번에 오픈한 테크살롱 선릉캠퍼스고요. 

 

Q. 테크살롱이 드디어 오픈했군요! 당장 가봐야겠어요.

재성님하고 얘기를 하다 보니 어쩐지 마음이 웅장해지면서, 나도 개발자가 될 수 있을 것 같은데? 늦지 않은 것 같은데? 희망이 생겼어요 ㅋㅋ 저도 개발자가 될 수 있을까요? 우테코에 들어가고 싶어요. 

그럼요. 

포기하지 않으면 프로그래밍은 누구나 할 수 있어요. 

포기하지 않는 멘탈이 제일 중요해요. 

 

Q. 교장선생님! 저를 거둬주세요! 

우테코에 지원하기 전에 몇 가지 질문에 대해서 충분히 고민해 보고 오세요 ^^  질문은 여기에 있답니다.

 

 

🪐 우아한테크코스 이야기

▶ #1. 우아한테크코스 교장선생님에게 물었습니다.

#2. 우아한테크코스는 수료하면 우아한형제들에 바로 입사하나요?

#3. 당신을 최고의 개발자로 만들어드립니다.

#4. 우아한형제들이 개발자를 위해 만든 공간, 테크살롱 오픈!

]]>
/2936/feed/ 0
ep.3 훈련은 실전처럼, 실전은…… 싫어요 /2663/ /2663/#respond Mon, 14 Feb 2022 16:03:36 +0000 /?p=2663

소설가가 입사했다

무라카미 하루키가 맥주 공장 이야기를 쓰고, 알랭 드 보통이 히드로 공항 이야기를 쓴 것처럼 소설가가 우리 회사 이야기를 쓴다면? 우리들이 좋아하는 이 시대의 젊은 작가. 소설가 박서련이 직접 경험하고 쓴 다섯 편의 우아한형제들 이야기

 

 

이렇게 시작해보면 어떨까…… 우아한형제들에서 제안한 글감과 가제 가운데에 이런 게 있었다. “흰 것은 코드요, 검은 것은 화면이다”. 반대인가? 까만 것이 코드고 하얀 것이 화면이었던가? 아무튼 그런 제하에 얼렁뚱땅 가짜 개발자 같은 걸로 우아한형제들에 위장 취업을 해 보는 내용. 그런데 그것도 뭘 조금이라도 알아야 하는 거지, 지금 보시다시피 저는 뭐가 까맣고 뭐가 하얀지도 잘 모릅니다. 뭐가 검고 뭐가 희냐면 저의 눈동자가 까맣고 이가 하얗…… 생각해보니까 그렇게 자신 있게 하얗지는 않은데 (적어도 튼튼은 합니다) 아무튼 이와 같이 저는 DNA에도 문과라고 새겨져 있을 그런 문과인이니까요, 이렇게 말하고 보니 오 문과가 DNA도 알아? 라고 하는 이과인 분들이 계실 것 같은 노파심에 덧붙이자면 제가 모든 문과인을 대표하지는 않으니까요…… 내가 모른다고 모든 문과인이 모르는 것은 아니 고 내가 아는 건 문과인 대부분 알고 있음을 미리 밝혀두며 새로운 이야기, 시작.

 

 

우선은 SRE팀으로부터 우아한형제들의 서비스 장애대응 프로세스에 대해 배웠다. 참고로 SRE팀, 즉 테크 기업 내 장애대응조직 자체는 우아한형제들만의 문화는 아니라고 한다. 구글에서 처음 도입했고, 우리가 이름을 아는 국내 포털사이트 기업에도 이제는 다 도입이 되어 있다는 모양. 우아한형제들만의 차별성을 꼽자면 끼니와 긴밀하게 연결되어 있는 분야 다 보니 오류 대응 타임 어택이 매우 중요하다는 점. 또한 대응 전문 팀을 꾸리다 보니 서비스 장애가 발생했을 때의 대응 알고리즘도 이제는 일목요연하게 갖추게 되었다고 한다.

 

🚒 “제 경우 가족들이나 친구들이 넌 대체 배민에서 무슨 일을 하냐고 하면 그냥 불 끄러 다닌다고 해요. 앱 소방관이라고 할 수 있겠죠.”

 

장애대응 업무 담당자로 일하는 주희님이 든 소방관 비유가 무척 직관적이고 이해가 잘 되어서 마음에 쏙 든 김에 계속 활용해보자. 배달의민족이라는 앱이 하나의 건물이라고 생각해보는 것이다. 작은 방의 한 부분에서 연기가 피어오르고 실내 공기가 탁해지기 시작하면 화재감지기가 알림을 울리겠지? 그러면 알림이 울린 방이 어디인가, 큰 불로 발생할 가능성이 있는가를 확인한 다음 달려가는 것이 건물의 자율/자체 소방대가 있다. 그리고 실제 화재 상황에서 불을 잘 끄려면 그에 못지않은 훈련이 필요한 법인데, 우아한형제들은 실제 건물에 위험 부담을 안기지 않기 위해 아예 따로 부지를 구입해 배달의민족과 똑같이 생긴 세트를 세운 다음 거기서 불을 피우고 끄는 훈련을 하고 있었다. 세트라곤 해도 실제 건물과 완전히 똑같이 만든 복제판인지라, 거기서 나는 화재는 얼마든지 오리지널에서도 발생할 수 있다. 그렇게 실제와 무섭도록 유사한 환경 속에서 진행되는 게 바로 모의장애훈련인 것이다.

 

🚒 “실제 장애상황 대응 경험이 많고 장래 장애상황에서도 주도적으로 해결을 맡는 분들을 ‘키맨’이라고 부르는데, 키맨들과 경험이 풍부한 시니어 개발자들은 제외하고, 문제상황 경험이 적은 신규 분들, 주니어 개발자분들을 주로 모의장애훈련에 참여시키고 있어요. 모의장애훈련의 목표는, 기술에 통달하자는 방향은 아니거든요. 더 중요한 건 다른 팀과의 소통, 본인이 목격한 문제를 알리고 공유하는 방법과 능력을 키우는 거죠.”

 

하긴 우아한형제들에 입사할 정도인데 개발 능력이 별로일 리는 없겠지. 체력이 좋은 건 소방관이 되기 위한 기본 조건이지만, 체력만 좋아서는 소방관이 되기 어렵다는 말처럼 들렸다. 사고 현장에서 사람들을 대피시키고 동료와 신속하게 역할을 나누는 소통 능력도 그에 못지않게 중요한 것은 생각해보면 당연한 일이었다.

 

“그러면 소방훈련을 할 때처럼 모든 구성원이 다 함께 참여를 해야 하나요? 일 년에 몇 번 정도 모의장애훈련을 하겠다, 그런 목표가 있나요?”

 

🚒 “실제 업무에는 늘 실시간 모니터링이 필요하기 때문에 회사의 모든 구성원이 동시에 훈련에 참여하는 것은 무리지만 업무 관계상 긴밀하게 연결되어 있는 부서들이 함께 모의장애 훈련을 하는 경우는 많고요. 또 어떤 장애상황이든 항상 소통에 참여해야 하는 커뮤니케이션 부서들은 거의 모든 모의장애훈련에 협조하는 편이죠. 문제상황에서의 소통을 원활하게 하는 게 모의장애훈련의 목표니까요.”

 

듣고 보니 그것도 그랬다, 내 방에서 난 불은 옆방에도 번질 수 있으니 가까운 방 사람들이 모여서 대피와 불 끄는 법을 배우는 것이 효율적일 터. 개념이 잡힐 듯 말 듯해서 모의장애훈련 실제 사례에 대해 듣고 싶다고 요청하자, 주희님이 실제 모의장애훈련에 참여한 설계자 한 분, 참여자 한 분을 대표로 연결해주었다.

 

먼저 설계자 수영님이 직접 설계한 오류를 소개했다.

 

🚒 “발생 가능한 오류 여러 개를 동시다발적으로 일으켰어요. 주문 과정을 상상해 보세요.

사용자는 앱을 열고, 주문을 하죠. 주문을 접수해서 프랜차이즈 본사에 전달하는 게 우리 앱의 정상적인 응답인데, 이 주문이 성공한 주문인지 그렇지 않은지 확인할 수 없게 했어요. 주문 유효성 확인 차단이 첫 번째 장애.”

 

“두 번째 장애는 뭐였죠?”

 

두 번째 장애 설명은 참여자 영일님이 맡았다.

 

🚒 “동시에, 브랜드관이라는 탭에서도 오류가 발견됐어요. 그날 할인율이 가장 높은 메뉴와 쿠폰을 노출해주는 기능이 있는데, 그게 나타나지 않는다는 VoC(Voice of Customer, 고객 의 소리) 가 중간에 치고 들어오더라구요.”

 

과몰입이 특기인 내게는 영일님의 말씀에서 ‘어떻게 그러실 수가 있어요’라는 메시지가 투명도 20% 정도로 겹쳐 들렸는데 설계자인 수영님은 전혀 동요하지 않는 눈치였다.

 

🚒  “첫 번째 장애를 발견하고 해결하고 있는 참에 새로운 유형을 보고하는 VoC가 툭 치고 들 어오니 멘탈이…… 바사삭.”

 

영일님은 웃으며 말씀하셨지만 역시나 투명도 20% 정도의 눈물이 뺨 위를 질주하는 듯 한…… 착시가 있었다.

 

🚒  “이전에 실제로 발생했던 장애를 어떻게 해결했는지에 대한 정보를 복기해보는 게 멘탈을 잡는 데에 도움이 됐어요. 이런 규모의 불이 이런 장소에서 났을 때 이렇게 접근하니 효율적으로 해결이 되더라. 그런 기록들이 있거든요.”

 

“또 다른 장애는 어떤 게 있었나요?”

 

나머지 오류들을 설명하는 역할은 수영님이 맡았다.

 

🚒  “원래는 수많은 요청을 동시에 받아들이고 처리해주어야 하는 서버 프로세스를 인위적으로 줄여서, 실제 처리 가능한 수보다 훨씬 많은 요청이 몰려드는 상황을 만들었어요. 이건 코드를 확인해서 처리 가능한 프로세스를 늘리는 솔루션을 유도한 거고요. 내친김에 네 번째까지 말씀드리면 업체 재고 확인 기능을 고장 냈어요. 정상적인 경우에는 재고가 다 소진되면 자동으로 품절로 전환되고 더는 주문을 할 수 없도록 바뀌는데, 재고 확인 기능에 문제가 생기면 품절된 메뉴인데도 계속 주문을 받아들이게 되죠.”

 

평온한 모습으로 본인이 설계한 엄청난 에러들을 소개하는 수영님이 놀랍게 느껴졌지만, 진행 양상에 대해 듣고 나니 이해가 한결 수월해지는 듯했다. 그러고 나니 훈련 참여자의 심정이 궁금해졌다.

 

“모의장애훈련을 할 때는 일정만 알려주고 구체적인 시간은 알려주지 않는다고 들었어요. 지금부터 훈련 시작합니다, 하고 알려주시나요? 아니면 실제처럼 그냥 바로 상황에 돌입하게 되나요? 다 하고 나서는 어떤 느낌이 드셨나요?”

 

🚒  “오후 2시였나요, 2시 5분이었던가요…… 그 사이쯤이었나 봐요, 첫 번째 장애가 발견된 게. 터지고 나서야 아 지금부터구나, 하고 알았어요. 앞서 말씀드린 것처럼 여러 가지 장애가 동시다발적으로 발생했고, 슬랙 메신저에 제 이름을 멘션한 메시지가 동시다발적으로 올라오니까 띠링띠링띠링띠링 숨 쉴 틈 없이 알람이 이어졌고. 그렇게 되니까 훈련이니까 너무 긴장하지 말자는 마음가짐은 까맣게 잊혀지고 심장이 미친 듯이 두근거리기 시작했어요. 실제 장애를 맞닥뜨렸어도 그렇게까지 긴장되진 않았겠다 싶을 정도로.”

 

‘실제 장애 상황에도 그렇게 긴장되진 않았겠다’는 감상이 귀에 팍 꽂혔다. 바로 그 느낌을 알게 하려고 모의장애훈련을 하는 게 아닐까? 실전에서의 당황을 줄이기 위해.

 

주희님이 보충 설명을 해주었다.

 

🚒  “네, 말씀하셨듯이 훈련 참가자들이 모의장애훈련을 인지해야 하니까 일정까지는 알려줘요. 하지만 언제나 장애는 예고 없이 찾아온다는 점을 감안해 훈련 시작은 불시에, 어디까지나 불시에 합니다. 실제로 누적된 장애 대응 사례보다 훨씬 난이도가 높게 설계하는 것도 사실이에요. 서비스 장애를 대하는 태도에 긴장감을 부여하기 위한 의도도 있지만, 훈련이 너무 빨리 끝나버리면 정말 중요한 소통과 연락 훈련이 전혀 되지 않기 때문이라는 이유가 더 큰 것 같아요. 소통 훈련은 아무리 강조해도 모자라니까요. 영일님이 본인을 찾는 슬랙 멘션이 몰려들어서 긴장되었다고 하셨잖아요, 실제 장애발생 상황에서도 충분히 그럴 수 있거든요. 장애 등급의 위험성이 높지 않은 경우는 괜찮지만, 규모가 크고 파급력이 있는 장애가 발생하면 우아한형제들의 개발자란 개발자는 모두 이 장애에 대응해야 하는데, 그 말은 무슨 뜻이겠어요? 장애를 주요하게 맡는 부서에 우리 회사에 다니는 모든 개발자의 질문이 집중된다는 거죠. 개발자들만이 아니에요. 하물며 홍보팀에서도 연락이 와요. 지금 앱에 오류가 발생했다며 언론사에서 인터뷰를 요청했는데 어떻게 설명하면 될까요? 이런 질문이 충분히 올 수 있다는 거예요. 이렇게 몰려드는 메시지에도 당황하지 않는 것 또한 연습이 필요해요. 그래서 모의장애훈련 상황에서는 일부러 슬랙 메시지를 더 많이 보내기도 해요. 아주 사소한 것까지 꼬치꼬치 질문하면서요.”

 

그런 거구나…… 이 지점에 이르러 모의장애훈련의 목표와 시행방식이 보다 명쾌하게 이해되는 듯한 느낌을 받았다.

설계자 수영님이 덧붙인 말씀도 같은 맥락으로 받아들일 수 있을 듯했다.

 

🚒 “설계자인 제가 봐도 제한시간 1시간 안에 다 해결하긴 조금 빠듯한 장애들이었어요. 그 시간 내에 해결 못한다고 페널티가 주어지거나 하진 않죠. 다만 참여자들에게 ‘이 시간 내에 해결하겠다’는 목표 설정이 있어야 실제상황에서도 신속하게 대응할 수 있지 않을까 해요. 사실 전체 훈련 진행시간은 총 두 시간으로 잡아요. 이유를 설명해 드리자면, 우선 장애를 인위적으로 일으키는 것 자체가 쉽지 않기 때문이에요. 스위치로 형광등 불을 켜고 끄는 것처럼 손쉽게 일어나는 게 아니거든요, 의외로. 그동안의 데이터와 케이스 누적으로 시스템이 이미 많이 튼튼해졌기 때문에 장애를 만드는 것도 어렵다는 말씀이에요. 그래서 모의 장애 적용에 일단 최대 30분 정도를 드리고……”

 

내진 및 방화가 든든하게 설계된 멀쩡한 건물을 사람 손으로 망가뜨리는 건 확실히 어렵겠지. 끄덕끄덕.

 

🚒 “말씀하신 것처럼 훈련 자체를 진행하는 데에 드는 시간이 물론 제일 넉넉하게 부여되고요. 그게 1시간이에요. 장애 상황이 모두 해결된 다음에는 설계자, 참여자, 그리고 이 과정을 지켜본 이들 모두가 ‘회고’ 과정에 참여해요. 남는 시간은 모두 여기에 쓰고요. 이 모든 과정을 합쳐서 2시간을 넘기지 않는 이유는 모의장애 해결에 너무 많은 시간을 소요할 경우 참여자들이 체력적으로도 정신적으로도 탈진하기 때문입니다. 영일님 말씀처럼 실제 장애 상황보다도 더 큰 집중력과 긴장감을 요구하는 과정인데, 참여자들이 이 집중을 너무 길게 가져가도록 만들면 모의장애훈련 이후 업무에 차질이 생길 수 있다는 거죠. 주어진 시간 이내에 모의장애 상황을 다 해결하지 못하는 경우도 물론 있어요. 그럴 때는 참여자들을 책망하는 게 아니라 일단 시니어 개발자들이 해결하는 모습을 보여주고 회고 과정에서 해결책을 더 잘 논의해보는 방향으로 훈련을 마무리지어요.”

 

하긴 참여자들이 아무리 주니어 개발자라지만, 주어진 시험시간 내에 문제를 다 풀지 못 한 학생이 아니지 않은가. 당장 다음 순간에라도 실제 상황에 투입될 준비가 된, 어엿한 프로들이지. 그런 사람들이 가짜 화재를 진압하지 못해 불을 두려워하게 만들어버리는 건 회사 입장에서 분명한 손해겠지.

 

“모의장애훈련 설계를 할 때 ‘있을 법한 장애’라는 건 어떤 기준으로 정해지는 걸까요? 역시 실제 누적된 데이터?”

 

🚒 “말씀하신 대로 실제 사례들 중 대표적으로 여겨지는 케이스가 일종의 기출문제처럼 고안되기도 해요. 꼭 실제 발생했던 사례가 아니어도 있을 법한 장애를 만드는 건 경험이 풍부한 개발자들에게는 어렵지 않은 과제라고 생각하고요. 개발자로서의 경험이 많다, 라는 말은 곧 수많은 장애에 부딪쳐봤다는 의미거든요. 장애가 발생할 수 있는 경우에 대한 상상력이 뛰어나단 뜻도 되죠. 또, 설계자로서 생각해봤을 때 이걸 해결하면 확실히 공부가 되겠다, 자산이 되겠다 싶은 걸 기준으로 장애를 만드는 경우도 많은 것 같아요. 그래서 여담인데 회고에서 나온 말 중 저는 이게 기억에 남아요. ‘저 이제 마음 놓고 휴가 가도 되겠네요!’ 심혈을 기울여 만든 오류를 참여자들이 멋지게 해결했을 때 설계자들이 공통적으로 느끼는 감상이 아닐까 싶어요.”

 

모의장애훈련과는 별 상관이 없는, 아니다, 굳이 따지자면 이용자로서 아예 무관한 것은 아니지만 어쨌든 직접적인 이해당사자는 아닌 나에게도, 그건 역시 뿌듯한 감상으로 들렸다. 그렇지, 그래서 훈련을 하는 거겠지. 그 훈련의 이익은 다른 누구도 아닌 우아한형제들의 구성원 당사자들에게, 또한 나 같은 이용자들 모두에게 돌아가는 거니까 소홀할 수 없는 거겠지.

 

이야기가 끝나가는 시점, 혹시 모의장애훈련 도중 실제 시스템에 장애가 발생한 경우는 없나요? 그렇게 질문하자 놀랍게도 있다는 답이 돌아왔다.

 

🚒 “아무리 훈련이 중요해도 실제로 난 불을 끄는 것보다 급할 수는 없죠. 그런 경우에는 모의장애훈련을 바로 중단하고 실제 장애 상황에 돌입해요. 모의장애훈련 다음날 장애상황을 맞닥뜨린 팀도 생각보다 많아요. 물론 힘든 상황이지만, 오히려 좋다는 반응이 나오곤 했어요. 아 어제 모의장애훈련에서 연습이 참 잘 됐나봐, 문제상황 공유와 전파가 참 빠르고 좋다. 그런 자체 평가도 있고요.”

 

가슴에 오른손을 얹고 남은 한 손으로 타자를 치면서 말하건대 나는 우아한형제들의 장애대응 업무와 모의장애훈련의 의의에 대해 이만하면 잘 알게 됐다고 자부한다. 누가 내게 시험지를 내밀며 모의장애훈련의 프로세스에 대한 이 쪽지시험에서 90점 이상 맞아야 한다는 협박을 할 일은 절대로 없을 것이고, 만일 누가 내게 작가님 배민하고 일한 적 있다면서요? 어떤 일 하셨어요? 라고 물어볼 경우 아 이러이러한 글을 썼고 그중 제일 까다롭게 여겨진 글의 주제는 우아한형제들이 자체적으로 진행하는 모의장애훈련이었는데요 모의장애훈련이란 뭐냐면요, 하고 설명할 수는 있는 상태이며, 이 정도가 딱 내게 요구된 이해도였을 거라는 믿음이 있다. 애초에 이 글의 목적은 “누구나 이해할 수 있는 테크 이야기”이고 그건 테크 문외한 중의 문외한, 선택된 문외한(나)만이 할 수 있는 역할이었을 거라는 굳센 믿음……

 

그러니 이 글을 읽으신 테크 문외한 여러분, 제가 소설가로서의 역할을 잘 해냈음을 증명하는 척도는 여러분이 모의장애훈련에 대해 얼마나 이해했는가에 달려있습니다. 이 글을 다 읽고 뭐 대충 이해했다고 말한다 해서 우리 중 한 사람이 별안간 설계자나 참여자가 되어 모의장애훈련을 겪어야 하는 일 같은 것은 없으니 그냥 부담을 내려놓고 이해만 해 주시면 됩니다.

 

뭐 재미 차원에서 간절한 척 말하고는 있지만 사실 그렇게 신경 쓰이지는 않는다. 왜?

나는 이해했으니까.

내가 이해할 수 있으면 어떤 문과인이나 이해할 수 있다.

즉, 당신도 할 수 있다! 최신 테크 따라잡기.

 

감사합니다. (박수 주세요)

 

 

소설가가 입사했다

ep.1 주문하신 소설가 왔습니다

ep.2 채식도 개발이 되나요

▶ ep.3 훈련은 실전처럼, 실전은……. 싫어요

ep.4 용기를 가져가겠습니다

ep.5 The 큰 집으로, 더 Next Level로

]]>
/2663/feed/ 0