CARTA HOLDINGS・執行役員CTOの鈴木健太氏

鈴木健太氏:「CTOが語る、事業のまんなかでエンジニアリングするキャリアの作り方」ということで、鈴木健太が発表していきます。ぜひ、リラックスして聞いてください。よろしくお願いします。

まず、「概要より」ですね。CARTA HOLDINGSは、20を超える事業を200人弱のエンジニアと一緒に作っています。僕自身は3回CTOをやっていて、10年以上、事業開発の経験があります。なので、それらを踏まえて、事業のコアとしてのテクノロジーにどう携わりながら、価値を届け続けてきたかを伝えていこうと思っています。

チャットやTwitterなどを見ながらインタラクティブにやりたいと思っていますので、よろしくお願いします。

「お知らせ」として、スクリーンショットもぜひ撮ってください。スライドは後でアップロードするので、メモは細かく取らなくて大丈夫です。気軽に聞いてください。よろしくお願いします。ハッシュタグは「#技育祭 #ホールC」です。

ではさっそく、自己紹介ですね。鈴木健太といいます。経歴としては、2011年にスタートアップでCTOをやったあと、2012年に新卒でCARTA HOLDINGSに入社しています。そのあと、いろいろ事業をやり、fluctという事業でCTOをやって、2022年からはCARTA HOLDINGS全体のCTOをやっています。

得意なことは、データエンジニアリングとWeb技術全般ですね。書籍として『みんなのGo言語』というGoの本を書いたことがあったり、『データ分析基盤構築入門』という、これもログ解析の本なんですが、そういうのを書いたりしています。

Twitterをやっています、「@suzu_v」。それから「ajitofm」という、ソフトウェアエンジニアリングについて話しているポッドキャストをやっているので、よかったら聞いてみてください。

そしてCARTAですね。CARTA HOLDINGSの説明をさせてください。CARTA HOLDINGSは、CCIとVOYAGE GROUPが2019年に経営統合して生まれた会社です。

両方ともWeb広告関連の事業をやっていて、VOYAGE GROUPに関しては、技術者がずっとたくさんいて、事業を開発していた会社です。だいたい今、全体で1,500人弱ぐらいいます。

CARTAは、CARTA TECH VISIONというものを掲げています。技術組織、テクノロジーをどういうふうに使っていくかについてビジョンを持っています。未来像は「人にもっと、創造的な仕事を」、「本質志向」「共に信頼し、共に創る」「価値を届け続ける」といったところを価値観にして、これをみんな良しとしています。

事業開発をメチャクチャやっている会社で、創業から20年以上かけて、たくさん事業を作ってきました。過去10年で20個以上の子会社があって、100個以上のサービスをリリースしています。

なにを隠そう、この技育祭を運営しているサポーターズ(株式会社サポーターズ)自体も、こういう事業開発の中で生まれてきたCARTA HOLDINGSの1つの事業だったりします。

大学でプログラミングを始め、スタートアップを立ち上げた過去

今日はせっかくの技育祭なので、みんなの「これからのキャリア」について、参考になる話ができればなと思っています。その中で、僕自身のキャリアの話をちょっとさせてください。

僕自身は、大学でプログラミングを始めました。2010年から本格的に研究室に入って、その時は人工知能やWebの研究をしていました。CARTA HOLDINGSの元の会社のVOYAGE GROUPにインターンに行って、そこでWebプログラミングをあらためてやりました。

そのあと、スタートアップを自分で立ち上げてCTOをやっていたのですが、その翌年に(CARTA HOLDINGSに)新卒として入社しています。

入社した後は、本当にいちエンジニアとしてサービス立ち上げをやっていました。1回マネージャーをやってまた辞めたり、そういうことをクルクルクルクルやりながら、最終的にはfluctという大きな開発チームに入って、そこでマネージャーをやってCTOをやって、CARTA HOLDINGS全体のCTOをやるという、そういう感じのキャリアです。

これまでの詳しいキャリアの話ややってきたことは、前回の春の技育祭でもお話ししたので、興味があればそちらのスライドもぜひ見てみてください。

今日は、僕のキャリアも踏まえながらなんですが、みなさんがこれからキャリアを歩んでいく中で、どういうふうにスキルを成長させていくかという話。それから、チームでどういうふうに価値を出していくかという、この2つにフォーカスして話をしていこうと思います。

今日のアジェンダですね。個人のスキルをどう伸ばすか。そして、チームで価値を届け続けるにはどうしたらいいか。最後にまとめとして、事業のまんなかでエンジニアリングするというのはどういうことか、という話をしていこうと思います。よろしくお願いします。

今使っている言語・ツールをあなたはなぜ選んだのか?

というわけで、さっそく本題ですが、「個人のスキルをどう伸ばすか」ですね。これについて話をしていきます。

みなさんは学生エンジニア、あるいはこれからエンジニアになろうとしていると思いますが、けっこういろいろな悩みがあるんじゃないかなと思っています。

まず、ちょっとアイスブレイク的に、みなさんが使っている技術をぜひ知りたいので、プログラミング言語でもいいし、ツールでもいいです、みなさんが今何を使っているかを教えてください。そして、なぜそれを選んだかを、もしよかったら聞かせてください。

Twitterは「#技育祭 #ホールC」、Zoomのチャットでもいいので、ぜひ書き込みしてください。

(コメントを見て)じゃあ、何を使っていますかね。「Dart、Flutter、Android Studio」、あぁ、いいですね。「JavaScript」。なぜJSを使っているか、Flutterを使っているかも、もしよかったら聞かせてください。きっかけとかですね。

「Go、Ruby、Python」。「Vue。Reactより簡単らしいから」、いいですね。「TensorFlow」。うんうん、うんうん。データ系ですね、なるほど、なるほど、ありがとうございます。なるほどね。

ちなみに、僕自身の経験は、アルバイトの時にExcelを自動化したくてVisual Basicを触ったり、研究室の先輩がPHPが好きで、それでPHPを真似して学んだり。授業でJavaをやったりRubyをやったり、いろいろな経験がありましたね。

よくありそうな技術習得観点は、たぶん「出会っている」だと思うのですが、なんとなく格好いいとか使ってみたいとか、あと、知り合いが使っているとか、わかんないけど儲かりそうとかね、流行っているなとか、そういう要素があるんじゃないかなと思っています。

僕自身も、最初に使う技術とか、その後に出会う技術もそうなんですが、けっこうそういうきっかけでなんとなく使い始めるケースが多いんじゃないかなと思っています。

就職する時に感じていた「社会で通用するのかな」という不安

でね、技術をどう身に付けていくかという観点でまず話をしたいんですが、そういう時に、例えば大学のカリキュラムは1つの参考になるかなと思っていて、ちょっと持ってきてみました。

これは東京大学の情報科学科のカリキュラムの例です。例えば最初にアルゴリズムとデータ構造をやって、そのあとにハードウェアとか計算システムとかやる。

翌年は、OSとか離散数学とか、あとインタプリタ、言語処理系とかですね、コンパイラとか。その次の年では、分散システムとかコンピューターグラフィックスとか、より応用領域に進んでいくという、こういう進め方もあるんじゃないかなと思っています。

ですが、だいたいみんな行ったり来たりするというか、わかりやすくフローで進むというよりは、その時々の興味で移ることが多いんじゃないかなと思っています。

僕自身、過去10年間かけてそうだったのですが、やはり理想の知識習得経路どおりにはなかなかならないんですよね。いろいろな技術領域をカバーしていこうと思った時に、広く深く知りたいと思っても、やはり「まずは作ってみた」という経験がすごく大事だなと思っています。

技育シリーズを見ても、みなさん、やはりまず作ってみるということを通じて、ツールや言語を学んでいるんじゃないかなと思っています。あっち行ったりこっち行ったりしながら、学んでいるんじゃないかなと思います。

ただ、こういう不安があるんじゃないかなって思っています。僕自身、2012年に就職した時に、「この学び方のままでいいのかな」というのをすごく思っていました。

例えば、PHPを書けるようになって掲示板っぽいのを作れるなとか、ReactでToDoリストを作れるようになったなとかあるかもしれないけれど、社会でそれは通用するのかなとか。

あと、1人では作れるんだけど、複数人数で実際に事業で開発するのがどれぐらい難しいかがわからないという、そういうことってすごくあるんじゃないかなって思いました。

やはり世界には、自分よりできる人がすごくたくさんいるじゃないですか。僕より書ける人だって、たぶんこれを聞いている中にもいると思うし、グローバルに見たらすごくたくさんいると思うんですよね。そういう中に飛び込む。これがソフトウェアエンジニアの世界だなって、僕が就職する時にもすごく思っていました。

(次回につづく)