CTOの川口 (id:dmnlk) です。 これはBASE Advent Calendar25日目の記事です。 今年も僕は立候補してないのに勝手に日程が組み込まれてました。毎年書いてくれるメンバーが増えていってくれているのになぜ。
CTOについて
自分は2019年からBASE株式会社のCTOをやっています。 気づいたら4年近くやっていることになっていて驚いています。 たまに社外のエンジニアの方とお会いするとCTOになるにはどうすればいいかということを聞かれることがあります。 僕個人のサンプルではありますが、少し書いてみようかと思います。
なぜCTOが必要なのか
必ずしもCTOが必要なのでしょうか。 これに関しては僕は必要であると考えます。 自分がWeb企業にいるという前提条件はありますが、システムやテクノロジーが非常に重要な市場優位性となります。 ただプロダクト開発をするだけでなく最新の技術トレンドを把握し、それらを企業のビジネスモデルに統合することが重要です。CTOは、企業が市場で競争力を保ち、革新的な製品やサービスを提供できるようにするための鍵となる役割を果たします。
CTOは、技術とビジネスの両方の言語を理解し、両者の間のコミュニケーションと協力を促進します。これにより、技術的な洞察がビジネス戦略に統合され、より効果的な意思決定が可能になります。
技術は常に進化しているため、CTOは最新の知識とスキルを維持し、組織を適応させる必要があります。これにより、企業は変化する市場環境に柔軟に対応し、持続可能な成長を達成できます。
CTOの役割は、単に技術的な専門知識を超え、戦略的な思考、リーダーシップ、そしてビジネスと技術の統合を通じて、企業の成功と革新を推進する重要な要素です。
こう書くと自分がこれをちゃんと実行できているかというと大分疑問になりますが、責務としてはこれらがあげられるでしょう。
役割と責任について
会社のフェーズによってここは大きく変わると思います。 初期スタートアップのCTOは経営責任というよりもテックリードに近いポジションになるでしょう。 ひたすらに機能実装をすることが責務となり場合によっては情シス的なポジションも兼任するかと思います。
創業数年経ち、フェーズが変わっていく中で改めてCTOというものの重要性が高まっていくでしょう。 事業戦略と技術戦略を統合し、中長期的視点で技術開発を進めていくことになります。 プロダクトはまだまだグロースさせていくのでメンバーは開発に手一杯でしょう。 その中でCTOは次の未来の開発のためのボトルネックを見つけそれを改善していくための技術検証やロードマップを描いていく必要があります。 組織に関しても着目しなければなりません。 技術チームのリーダーとして、CTOはチームの育成、スキルの向上、そして生産性の最大化を担います。また、組織全体の技術的ビジョンを共有し、異なる部門間での協力を促進することで、企業の目標達成に貢献します。 VPoEのような存在がいると分業しやすいかもしれません。
スキルセットについて
ここが一番よく聞かれるのですが、どのような技術を持っているとCTOになれますかといわれます。 個人的には、特定の技術の専門性というよりは一通りの技術に60点くらいの理解度があることの方が重要です。 特定技術の深掘りは現場のメンバーに任せ、市場の技術動向と自分達のプロダクトやシステムに何が必要かを考えるために分野に寄らない興味関心があるといいでしょう。 インフラやセキュリティについての知識はどちらかというと重要視されると思います。 インフラに関してはサービスキャパシティのプランニングやコスト管理意識を持つのに重要ですし、セキュリティはどうしてもサービスグロースの中で後回しにされがちなので先見性を持って問題意識を持つのに必要となります。 frontend技術に専門性を持っている人がCTOに多くないのは、AWSやGCPのようなクラウドインフラサービスのroot権限を渡しづらいからではと思っているところはあります。感覚値でしかありませんが。
経営スキルについては最初から持っている人は少ないでしょう。僕も当初全く持ち合わせていなかったと思います。 長期的なビジョンを持ち企業戦略を実行するための戦略的思考、コスト効率の高いソリューションを開発していくための財務管理、様々並行で行われる開発を管理するためのプロジェクト管理などが求められていきます。 とはいえこのあたりは、やっていく中で学んでいくしかないように思いますし他の企業の先輩CTOの方と話して学んでいくのがオススメです。
ソフトスキルに関しても重要です。 技術チームを牽引しメンバーのモチベーションを高め生産性を向上させる能力としてのリーダーシップ、技術的な概念を非技術者にもわかりやすく伝え、異なるステークホルダーと効果的にコミュニケーションを取れるようにするなどです。 特にコミュニケーションについては、エンジニアにとっては重要だよねという概念をしっかりと非技術者に伝える事が必要です。 そうでない場合、リファクタリングやアーキテクチャ変更などについて経営陣に伝わらずシステムに問題が起きてプロダクトの成長を阻害するタイミングになってからしか対応が許されないといったことになりがちです。身に覚えがある人も結構いるのではないでしょうか。
CTOになるためには、これらのスキルと経験をバランス良く持ち合わせ、常に最新の技術トレンドに敏感であることが求められます。また、ビジネスと技術の両面で企業をリードするための幅広い知識と洞察が不可欠です。
キャリアパスの通過点としてのCTO
CTOの役割は、単なる終着点ではありません。 それはむしろ、私のキャリアパスにおける重要な通過点であり、成長と発展の旅の一環です。このポジションは、私がこれまでに積み重ねてきた経験と知識を活かし、さらに拡張する機会を提供してくれます。 正直な話をすれば、 IC(Individual Contributor )として働いているときよりも苦手なこともやる必要がありストレスを感じる面も一定あります。 ですがやってみて4年続けてみて、自分がただ働いているだけでは知り得なかった世界や考え方に多く触れ悩み自分の得手不得手を改めて実感できていると感じています。 なってから悩んだときの一つアドバイスをするとすれば、とりあえずCTOが集まるようなイベント(吉祥寺にp2bhausという良いお店があります)などに顔を出して様々なフェーズのCTOに会いざっくばらんに悩みを話してみると良いでしょう。どうしてもこのようなポジションの悩みはオープンにならないことが多く、孤独な戦いになりがちです。会社の他のメンバーに悩んでいるところを多く見せるわけにもいかないでしょう。 その時に同じような悩みを持ち、現在進行系で悩んでいる人や既に解決して次のフェーズを見据えている人たちの話を聞くことは大きなプラスになるでしょう。
まとめ
「CTOになる」という目標は、ただの職業的な到達点ではなく、技術とビジネスの世界で自己を実現する旅の一部です。この役割では、最新の技術トレンドを駆使し、革新的な解決策を生み出し、チームをインスパイアすることが求められます。これは、あなたの技術キャリアにおいて、新たな視野を開き、影響力を拡大する絶好の機会です。 なるチャンスは多くないかもしれませんが、もしCTOになっていきたいという方は自分の意志で掴み取って逃さないようにしてください。 なにより重要なのは、自分がその会社の一部として大きな時間を賭けられるだけ気に入った会社やプロダクトがあるということかと思います。非常に困難な状況になっても、会社やプロダクトがあれば割りとなんとかなります。
というわけでそんな自分がCTOをやっている価値があると思っているBASEではメンバーの募集をしています。 下記からご応募をお待ちしております。