written by. 기술본부본부장 서영락
팀프레시 뿐만 아니라, IT조직이 있는 기업에서 시니어 IT엔지니어(개발자)는 많은 중요한 역할을 합니다.
주니어 IT엔지니어들을 성장시키고, 프로젝트를 리딩하고, 외부와의 일정 협의, 때로는 코드리뷰나 페어프로그래밍 등 직접적인 실무를 하기도 합니다. 우리는 이런 시니어 IT 엔지니어들이 조직에 많이 있기를 희망하고 있습니다. 그래서 우리는 "시니어가 부족한게 문제"라고 자주 이야기합니다. 그렇다고 시니어를 채우려고 보니 단순히 연차를 기준으로만 시니어를 판단하려고 합니다.
정말로 그런 기준의 시니어가 우리가 기대하는 역할을 할 수 있을지, 우리가 스스로 시니어가 될 수는 없는지 의구심을 가져볼 만합니다. 시니어는 조직에게 많은 기회비용을 수반합니다. 비용 문제도 있지만, 연차가 많을수록 쌓인 지식과 경험에 대한 에고는 조직에 큰 영향을 미칠 수 있기 때문입니다.
우리는 과연 어떤 시니어가 필요하고, 어떻게 시니어가 되어야 하는걸까요?
이 글에서는 우리가 바라는 ‘능동적인’ 시니어의 역량 혹은 이상적인 엔지니어의 모습과 이를 위해 어떠한 관점의 접근이 필요한지를 이야기해보고자 합니다.
기술본부 내에서 시니어라는게 무엇을 의미하는지 모두 생각을 많이 해봐야할 때가 왔습니다.
기술본부 인원이 30여 명을 넘어가는 시점이 올해 안에 발생하고, 내년 초까지는 40명대 채용을 목표로 하고 있습니다. 개개인이 아닌 팀 단위의 성장 관리가 필요해지고 있습니다.
흔히 우리는 지금까지 연차를 기준으로 시니어를 나누었는데, 이런 시니어를 바라보는 관점에서 시니어 채용은 조직 입장에서 상당한 기회비용입니다. 비용적으로는 주니어 대비 몸값에 대한 부담이 있고, 조직의 성향과 문화에 적응하지 못하는 경우 시니어에 의한 조직의 영향력, 특히 잘못된 문화 전파 등으로 많은 후폭풍에 대해 시간을 써버리느니 차라리 주니어에게 시간을 투자해서 업무를 때워줄 수 있도록 하는 게 훨씬 나아보기도 합니다.
또한 머릿수가 많아지는 건, 총 생산량이 늘어날 순 있어도 항상 생산성이 좋아지는 것은 아닙니다. 많은 소통채널이 발생합니다. 기술 스킬만으로는 극복할 수 없습니다. 그래서 기술 스킬보다 중요한 것들이 무엇인지 필수적으로 되새겨봐야 합니다.
현재 우리 본부 내에서는 시니어에 필요성에 대한 언급이 종종 보입니다.
시니어한테 배워서 성장하거나 교류하고 싶다.
알아서 일을 잘해서 업무를 빨리 쳐주면 좋겠다.
경험이나 지식이 풍부해서 영감을 받으면 좋겠다.
리딩을 해주는 사람이 필요하다.
과거부터 현재까지 우리 조직 내에서 시니어라는 평가를 받고 있는 듯한 퇴사자들의 공통적인 의견이기도 합니다. 부서 외적으로는 본부장으로서 내부 체계 정비보다 앞으로의 방향성에 집중하기를 바라기도 합니다.
이렇게 조직 내부에서든 외부에서든 어떤 문제에 대한 원인으로 '시니어의 부재'라는 키워드가 자주 등장합니다.
그래서 우리 본부 인원 중에 본인을 시니어라고 생각하는 사람이 있는지, 아니라면 어떻게 시니어가 되어가는 건지, 왜 시니어가 되어야 하는 건지, 시니어가 아니어도 되는 건지 등등 고민이나 기준을 가진 분이 있다면 의견이 매우 궁금하기도 합니다.
대부분 우리 본부 인원들은 시니어 개발자라고 생각하는 사람을 기술 실력이 좋거나 경험이 풍부한 사람을 언급하는데, 틀린 말은 아닐겁니다. 시니어로 인정받는 사람들 중에는 이런 요소를 갖춘 사람도 있을 수 있지만, 이마저도 매우 막연합니다.
도대체 어떤 지식과 경험들을 기준으로 정의하고 사람을 뽑고,
성장시켜야 하는 걸까요?
*현재 팀프레시의 기술본부(Technical Standard Dept, TSD)는 6개 팀으로 이루어져있습니다.
- 아키텍처팀(Solutions Architecture, SA)
: 전사 관리체제 차원에서 기술 트렌드 파악 및 프로젝트 기술적인 의사 결정 담당
- 시스템개발1팀(System Development 1, SD1)
- 시스템개발2팀(System Development 2, SD2)
- 시스템개발3팀(System Development 3, SD3)
: SD1,2,3은 각각의 시스템(TMS,영차영차,팀플레이스)을 할당해서 담당
- 앱개발팀(Moblie Application, MA)
: 시스템 안에 있는 어플 담당
- 인프라팀(Infrastructure Technology, IT)
: 전사 네트워크 및 서버 구축/유지보수와 장애처리 업무 담당