devops & mental 방치하면 녹!

  • 슬픔 덕에 도울 수 있었던 거야 / They came to help because of Sadness.
  • 아래 글을 보시고 또는 너무 길어서 만나서 이야기를 듣거나 나누고 싶다면 22/12/23(금) 선릉역 7시 오세요 - WooUl CON 참가신청open in new windowinsideout sadness

슈퍼 개발자의 커밍아웃

우울증 커밍아웃

가만히 두면 녹쓰는 devops 와 심해지는 우울증

  • 일못하는 사람으로
  • 공부 못하는 학생으로
  • 폐급병사로

회사 학교 군생활 하기는 힘들다. 나는 그런 사람이엇다. 그런 사람이라고 생각해서 우울했다. 우울증 진단도 받고 약도 먹고 심리치료도 받았다.

팀리더에게 감추고 팀원들에게 감추고 긴 시간이 흘러 병가를 내고 돌아오면서 나는 커밍아웃을 하였다.

이 커밍아웃에 용기를 준것은 내가 슈퍼슈퍼 개발자로 생각하는 그의 커밍아웃이 큰 힘이 되었다. 이 글을 빌어 감사와 그에 대한 존경을 표한다. 그리고 긴 터널을 지남에 있어 당신을 리스팩하는 많은 사람들이 있음을 알아주었으면 한다.

그리고 나는 커밍아웃 후에 찾아와준 동료덕분에 많이 좋아졌다.

코로나 시국에 홀로 집에서 참 많이도 힘들었다. 그럴 때 가장 힘든건 파이프라인 장애가 일요일 오전에 발생하게 되면 불안과 초초 우울 무기력이 뒤섞여 꼼짝도 할 수 없었다. 세상의 모든 것이 두려웠다.

Starbucks

전화 공포증

일면 식도 없는 스포츠 웹툰 스마트스토어 부동산 ... 타 부서 개발자들에게 메시지 메일 급기야 전화를 돌려야 했다. 일요일 오전 C레벨 데시보드 아무도 보지 않는 그 화면 하나를 위해 내가 누군가의 달콤한 일요일 오전을 깨워야 한다는 것이 죽고 싶을 만큼의 고통으로 다가왔다. 하루 종일 벌벌 떨었지만 내가 한것은 전화를 하고 채팅을 통해 상황을 전파하는 일이 전부였다. 나의 토요일/일요일/공휴일은 날라갔지만 난 근무시간으로 1시간을 겨우 올리며 또 죄책감에 빠졌다.

회사에서 제일 높은 선배(?)와 2시간 독대 한적이 있다. 어찌 되엇든 그 이후로 누군가를 회사에 초대하먼 어떻게 알았는지 우리가 있는 곳에 인사팀이 내려와 나가달라고도 했고 팀에서는 2년 가까이 일을 주지 않거나 한번도 해보지 않은 검색기술을 배우라며 혼자 떨어트려 놓았다. 이곳의 검색 기술은 어디 검색해서 나오지 않는다.

lhj

구원자와 엉덩이

그러다가 지금은 네이버 자회사 대표로 있는 분의 구원자 같은 손길에 이끌려 네이버 전사 데이터를 모아 데이터 마트를 만드는 엉덩이가 무거워야 버티는 부서로 왔고 왔다. 그곳의 파이프라인은 LUigiopen in new window XML 지옥에 빠져있었다. 300여 데이터 파이프라인을 airflow 로 바꾸고 분석 과정을 통해 3가지 타입으로 표준화 하여 메타 저수지를 만들고 모두 자동화 해버렸다. 코드의 양이 1/300로 줄었다. airflow 의 시작은 옆팀 동료의 네이버블로그open in new window 였다. 어느 정도 진행 되고 옆팀에서 우리쪽 구성에 대해 문의 했고 나도 그 사이 배운 부분을 전파해 드려 기뻣다. 누구엔가 도움이 되는 것은 기쁜일이다.

또 다른 성과로(지금 나 자랑을 하고 있다. 우울 증에는 잘한 것은 잘하라고 배웠다) 리얼에서 직접 XML 코드 수정 배포를 통해 이루어 지던 기존 데이터 입수 처리 작업도 dev stg real 을 나누어 구축하고 테스트를 붙이고 코드리뷰를 진행했다. 설명 하고 또 설명하고 다양한 전술과 전략을 세워서 테스트 커버리지는 자연스럽게 올리도록 유도했다. 경험상 이 부분에 세심함을 발휘하지 않으면 안된다. 이건 글로 배울 수 없다. github(엔터프러이즈)를 쓰고 있었으니 거기에 맞는 브랜치 전략과 릴리즈 전략과 가이드 또 장애를 위한 롤백 전략도 수립하고 팀원들을 위한 가이드 문서와 교육을 반복 진행하고 누구든 물어오는 사람에게는 페어프로그래밍을 하며 친절하게 알려 주려고 노력했다.

하지만 리더의 피드백은 없엇다. 리더의 지시는 그저 주말 또는 새벽에 데이터가 달 들어오는지 모니터링 하고 보증하는 당번 업무를 잘해달라는 것이였다.

.    ヘ  ヘ
   / \/ \
  /     ヽ
  /  ㅇ   ㅇ |
 | ∪ / ̄ ̄T |
 |∪  |  | |
  \  |_ | ノ
  / ヽ| ヽ|、
 (   ||  |||
 |   ヽ二二ノ|
 |  L    」|
 ヽ_ノ    (_/
  |  /  /
  |  /  /
  (__)__)

그 일도 나름 가치를 부여하여 열심히 했다. 공채 신입분들에게 이런 성장과 상관없는 일을 미룰순 없지! 내가 하면서 더 시스템을 단단하게 만들자. 그래서 챗봇도 붙이고 알람 메일도 저 정교하게 바꾸고 하면서 묵묵히 365일 매일 아침 6시에 또는 잠에서 깬 데이터 파이프라인이 한참 돌고 있는 새벽 2시 3시에 챗봇으로 또는 시시템에 접속 해보기도 했다. 잘 도는 구나 다행이다... 이제 자자 ... 그리고 다시 6시와 7시 사이에 다시 잠에서 깬다. 데이터 요청 부서에서 채팅온것은 없는지? 자동화 훅을 걸어 두어 실패 메시지가 챗봇으로 온것은 없는지 확인하고 또 확인했다. 다행히 장애가 없으면 근무 시간은 찍지 않는다. 나는 확인 만 했을 뿐! 회사 시스템에 접속하지 않았고(회사 시스템에 접속하지 않아도 확인이 가능하도록 만들어 두엇다 - 또 자랑) 멋지게 개발자 처럼 코드를 치지도 않았고 다만 불안 불안 초초 했을 뿐이다.

챗봇

하지만 내가 보증할 데이터 파이프라인의 시작은 네이버 전사 개발부서의 개발자들이다. 어느 한쪽의 코드오류나 시스템 장애가 나면 내가 처리 가능한 일을 없었다. 장에에 따라 정확하게 담당자를 자동으로 찾아 메일이 발송 되었지만 오전 9시 까지 C레벨들이 데이터 요약 리포트 대시보드를 보기 위해서는 7시 에는 그들에게 전화를 해야 했다.

쉬어야 치료된다

병이나고 이를 팀원들에게 알리고 병가를 쓰고 나서야 그 악몽에서 벗어났다. 악몽은 내가 누군가의 평온한 아침을 깨워야 한다는 지점이다.

그리고 병가에 돌아오니 내 정신에 쌓인 녹은 벗겨지고 있고 다시 빤짝 거리려고 하고 있었으나 잘 돌아가던 dev stg 는 녹쓸어 있었고 다시 리얼에 직업 데이터 파이프라인 코드가 배보 되고 있었다. 한편 다행이다. 내가 한 일들이 나 없이 돌아가지 않아서 내 손을 타야 다시 회복이 된다 싶어서. 물론 사람을 태우고 우주로 떠나는 로켓의 코드를 만든다면 이렇게 하면 안되겠지만 우리는 인공지능의 시대를 살지만 인간지능이 더더 필요한 시대를 살고 있다. SRC : devOps 에 대한 나의 성공과 한계 그리고 성장에 대한 인사이트라는 물약 아이템을 하나 더 장책했다.

Teheran Road

자 다시 일을 시작하지! 옛 기분을 내려고 쩔뚝이는 몸을 이끌고 일부러 새벽출근 테해란로로 스타벅스로 출근해 보았다. 언제든 날 기다려 주는 스벅! 과 와이파이~~~(시큐어 와이파이를 사용하자 - 따지지 말고 시큐어 - 스벅은 wifi/wifi 로 접근하면 된다.)

Starbucks TeheranStarbucks of Teheran

커밍아웃 이후

  • 동료들이 나를 이해해 주었다. 나를 멀리하지 않아 주어서 감사하다.
  • 내가 한 일에 대한 리스팩을 보내 주었다. 코드리뷰 시간에 내가 만든 부분을 이용해서 쉽게 일처리를 했다는 피드백을 명확하게 해주었다. 감사하다.
  • 노동조합과 민주노총에서 파견된 오월의 노무사분이 안심을 시켜 주셨다.

결론

  • 사람도 시스템도 부하기 지속되면 망가진다.
  • 시스템에는 스트레스 테스트를 하지만
  • 사람에는 하지말자
  • 시스템도 성능 테스트를 많이도 했다. 삼성전자 챗온 장애도 해결했고 캐시슬라이드 150 DAU 도 해결했다. 이때 느낀건 네이버의 오픈소스 nGrinderopen in new window 의 위대함 그리고 기계인 시스템도 일정 시간 피크치의 스트레스가 주어지면 죽는다는 것이다.
  • 가끔은 시스템을 끄고 쉬자! 그래야 다시 켜진다.
  • 당신의 주변에는 좋은 동료가 있다. 다만 지쳐있을 때는 보이지 않는다. 보이지 않는다고 없는 것이 아니다. 분명 있다.
Last Updated: