2 minute read

인턴 시절 시니어로부터 느낀 개발자의 자세와 자질

스타트업 데이터팀의 인턴으로 지원하던 무렵, 회계사 수험공부를 그만두고 나서 모든 가능성을 열어둔채 이것저것 해보면서 다음 스텝을 고민하고 있었다. 프로그래밍에 흥미가 있었던 것은 맞지만 개발자가 되어야겠다고 마음을 먹지는 않았었다. 인턴 직무도 개발과 관련된 업무가 아니었다.

처음엔 나를 포함해 3명이서 근무하였고 나 빼고는 모두 개발자셨다. 근무한지 한 달쯤 지났을까? 시니어 개발자 한 분이 합류하였다. 결과적으로 난 이분의 영향을 크게 받았다. 짧은 시간 안에 한 사람이 조직 문화에 큰 영향을 미치는 모습을 목격하였고, 개발자는 이렇게 멋진 사람인가? 라는 감명을 받고 개발자의 길을 선택하게 된다.

당시 개발자는 저래야 하는구나! 라고 느낀 두 가지가 있었다. 하나는 늘 WHY에 집착할 것, 나머지는 공유 정신이다. 다른건 못해도 개발자로 일하면서 이 두 가지는 늘 유념하여 일하려고 노력한다.

이전까지 나는 애니멀 스피릿으로 심장이 가는대로 의사결정을 하며 살아왔지만, 이분은 늘 WHY에 집착하였다. 내가 볼 땐 그냥 늘 A라는 것을 해왔으니까 그냥 A를 해도 크게 상관없을 것 같은데, 파트 리더를 넘어 CTO, CEO한테까지 가서 A를 왜 해야하는지 따져물었다. 그리고 어떤 툴이나 기술을 도입하거나, 유명한 프레임워크의 설계 패턴 같은 것을 우리 프로젝트에 적용할 때 이 기술 자체가 어떤 것이 좋아서 현재 우리 프로젝트에 적용하면 왜 좋고 어떻게 적용할 수 있는지 여러 근거를 가지고 적극적으로 쉽게 설명하거나 설득하는 모습은 살면서 경험해보지 못한 방식이어서 놀라웠다. 쥐뿔도 모르는 나를 붙잡고 설명하셨는데도 이해, 공감, 설득이 되었다. 처음엔 저렇게까지 해야하나 싶었지만 시간이 지나 필요없는 업무가 제거되고, 업무 프로세스가 깔끔, 투명해져 효율성이 올라가는 모습을 보며 점차 나도 그 방식에 감응하였다.

그리고 환경 세팅이나 업무 방식 같은 것들이 문서화되어 있지 않거나 통일되지 않은 부분들이 많았는데, 빠른 시간안에 이런 것들을 문서화하고 사내 위키를 만들고, 통일이 필요한 것들은 슬랙을 통해 사내에 공론화시켜 체계를 만들어냈다. 또한, 불편한 점이 있으면 적극적으로 개선하고 공유하였다. 점심에 다른 회사 빌딩에 위치한 함바 집 비슷한 곳에 가서 밥을 먹곤 하였는데, 그분이 오기 전엔 늘 그 식당 블로그나 홈페이지에 들어가서 점심메뉴를 확인하였지만, 심지어 그분은 점심 메뉴 알림 + 점심 메뉴 추천 봇까지 만들었다. 입사한지 한 달이 안되었는데 한 사람이 회사를 뜯어고쳐가고 있구나라는 느낌을 받았다.

나는 지금 회사에서 이렇게 하고 있나?

개선과 공유 정신 : ▲

  1. DB 백업 덤프 파일, 각종 프로그램의 로그성 파일들을 매일 df로 찍어 확인하면서 일정 용량을 넘으면 수기로 지우고 있었지만, 내가 이 업무를 맡고나서 점검 및 삭제하는 스크립트를 작성하고 배치에 등록하였다.

  2. 종종 현업 부서 같은 곳에서 대량의 데이터를 조회할 때 outofmemory가 발생하고 was에 heapdump가 떨어지곤 하는데 이를 분석하는 툴이 존재하지 않았다. 의심되는 지역본부 직원에게 전화해서 무슨 거래하셨냐고 수소문하거나 javacore의 로그를 뒤져가며 범인을 색출하였다. heapdump를 분석하는 툴 같은 것들이 어디 존재하지 않을까 싶어 의심가는 부서에 전화해서 수소문하였고 결국 heapdump analyzer를 제공받아 팀에 공유하였다.

  3. 이번에 사내에서 익스플로러 사용이 금지되고 엣지로 전환이 되었다. 하지만 기존에 운영하는 사이트들이 익스플로러 모드에서만 호환되었는데, 이 경우에 엣지에서 개발자 도구를 사용할 수 없었다. 열심히 구글링해보니 윈도우에 내장된 툴을 이용해서 디버깅을 할 수 있었고, 이를 팀원에게 공유하였다.

  4. 서버 재기동, 오라클 테이블 용량 증설 절차 등이 제대로 문서화되어있지 않아서 이와 관련된 문서들을 작성해 팀원에게 공유하였다.

늘 WHY에 집착 : X

나름 근거와 논리를 가지고 일하고 있다고 자부하고 있었다. 하지만 얼마 전 사건이 하나 있었다. 인수인계 받은대로 서버와 DB 일일/월간 점검을 하고 있었다. 그러다 팀장님이 갑자기 부르셔서 이건 왜 이렇게 점검하냐고 질문을 하셨다. 순간 나도 모르게 그렇게 인수인계를 받아서 그렇게 그냥 하고 있다 말했다가 호되게 질책당하였다. 점검을 한다는 것은 어떤 일을 예방하거나 일이 터졌을 때 빠르고 안전하게 해결하기 위함인데 어떤 기준을 가지고 이걸 점검하고 이 수치가 어느 정도 도달하면 어떤 대처를 하냐고 질문하셨을 때 나는 아무 대답을 할 수 없었다. 그냥 아무 생각없이 일하고 있었던 것이다. 결과적으로 이 부문에서는 낙제점이다.

글을 마치려고 하는데 순간 든 생각 하나는 그 시니어분은 글도 참 잘쓰셨던 것 같다. 그에 반해 난 이 짧은 글 자체도 쓰기도 버겁고 결과물도 엉망이다. 개발자의 자세와 자질에 글쓰기 능력도 추가해서 이 능력 발전을 위해 정진해야겠다.