[💻스타트업에서 CTO의 역할]
직접 경험한 내용을 바탕으로 스타트업이 성장하면서 CTO의 역할에 대해 직접적인 경험을 적은 글입니다.
아마도, 커리어리에도 많은 분들이 CTO의 역할이나 어떤 업무를 하는지 궁금하실것 같아서 가져와봤습니다. 스타트업의 발전에 따라 CTO의 역할이 어떻게 진화해가는지를 기술하셨고, 이에 대한 내용은 아래와 같습니다.
✅ 암흑기
MVP 구현, 초기 기술 스택 선정을 하는 초기 시기엔 한치 앞도 알기 힘든 불확실성이 가득한 단계입니다.
가장 찬란하고 두근거리는 시기일 수도 있습니다.
이 시기에 CTO는 많은 결정과 구현에 참여합니다.
MVP를 구현해야하고, 서비스의 서버를 어디에 둘지, 도메인이나 DBMS는 어떻게 할지를 결정하고 실행해야합니다. 또한, MVP를 구현하는 데 있어 필요한 기술스택을 합리적으로 결정해야 합니다.
이 시기에 성능과 확장성은 간과하기 쉬우면서 "마세라티 문제"에 빠지기 좋습니다. 해당 이슈가 언젠가는 발생할 수 있지만, 그 시기에 우리는 이미 성공해서 마세라티를 타고 있을 거라는 문제일 수도 있는 것입니다.
그래서, 합리적인 수준의 기준을 정하는것이 중요합니다.
✅ 성장기
MVP를 구현하고, 투자회사로부터 인정을 받거나 시장에서 인정받은 상태가 됩니다. 이 시기부턴 CTO의 필요성이 점점 더 커지게 됩니다.
주요 해야할 역할은 아키텍처 전략 수립과 개발을 총괄하고, 의사 결정의 기준을 마련해야합니다.
또한, 점점 더 많은 개발자들이 합류함에 따라 개발 문화를 정착시켜야하며, 이때부터 매니지먼트와 관련된 이슈가 발생합니다.
✅ 기술의 르네상스
수십명 이상 혹은 수백명 이상의 규모가 되면, 더이상 CTO 혼자서 모든 내용을 파악하기 어렵게 됩니다.
이 경우 역할을 분리할 필요가 있습니다.
관리(매니지먼트)를 위한 PM과, VP of Engineering이 필요하게 되며, CTO는 좀 더 순수한 의미에 기술적 역할에 집중해야 합니다.
이 시기부턴 모두를 위한 장기 로드맵이 필요하고, 기술에 대한 전략과 비전뿐만 아니라 회사내 기술과 브랜딩을 보호하기 위한 행동도 해야합니다.
✅ 성숙기
더 이상 스타업이라고 부르기 힘든 시기인 성숙기는 수백명 이상의 개발팀을 갖고 있습니다.
이때 부턴, CTO는 경영진으로써 역할을 수행해야합니다. 특히 기술적인 부분에 초점을 맞춰 기업의 경영활동을 수행하거나 지원하게 됩니다.
<📰코멘트>
CTO의 역할에 대해 서술한 글이지만, 이 글을 통해 스타트업의 기술적 발전과정 또한 볼수 있습니다. 아마도 많은 스타트업에 계신 분들이 기술적 의사결정 측면에서 공감할만한 내용이지 않았나 싶습니다.
실제로, 초기 아키텍쳐를 설계하고, 서비스를 발전하는 데 있어서 CTO가 독단적인 결정을 하는 경우가 있습니다. 하지만, 이 글에서 보았듯이, 암흑기를 제외하곤 CTO는 무엇을 하는지에 집중하기 보단 어떻게 할 것인지에 집중해야한다고 합니다. 즉, 기술적 의사결정에 기준을 마련한다거나, 문화를 구축하는 식으로 말이죠. 그렇게 보면, 암흑기엔 직접적으로 행동을 하는 개발 역할("What")을 수행한다면, 그 후엔 기준 마련과 전략 수립("How")을 하고, 다른 사람들이 잘 워킹할 수 있게 돕고, 최종적으로 왜 우리가 이런 결정과 아키텍처를 향하는지에("Why") 대한 비전을 제시함으로써 발전해 간다고 생각합니다.