![見出し画像](https://assets.st-note.com/production/uploads/images/22451662/rectangle_large_type_2_1099369ebd76ad2884aaea38b7dce493.jpg?width=1200)
【CTOにきく:2】「BASE」「VOYAGE GROUP」「Zコーポレーション」が考える「学び」
「BASE株式会社」、「株式会社VOYAGE GROUP」、ヤフーの100%子会社である「Zコーポレーション株式会社」の各CTOを迎え、「CTOが考えるエンジニアの学びとは?」をテーマにディスカッションを行いました。
「学ぶ」ときにCTOが大切にしていること
量を質に転換させる(BASE株式会社:藤川さん)
エンジニアは、コードをきれいに書けるとスキルが高いとされる面もあるように思います。ですが、いきなりきれいなコードを書けるかというとそうではありません。
たとえば料理で考えてみると、同じメニューを何度も作ることで、スムーズな段取りやきれいな盛り付けがスムーズにできるようになるのだと思います。そして、誰かに食べさせたいと思ったら何度もその料理を練習しますよね。
エンジニアが書くコードもそれと同じです。何度もコードを書いて、その量を増やしていくことで熟練され、きれいなコードが書けるようになるというプロセスが大切だと思っています。
また、理解が難しい技術も世の中にはあります。私は以前、わからない分野があったとき、その分野の本を3回読みました。繰り返して読むことで、頭に入り、整理して理解できるようになります。
これらが、「量が質に転換する」ということです。
興味があるものや、目的意識が明確な「こと」「もの」について、より理解を深める(Zコーポレーション株式会社:明石)
「学ぶこと」が目的になってしまう勉強は頭に入りにくいので、私は必要に応じて知識を身につけることが多いです。それぞれの分野を深く極めることはあまりないのですが、重要なキーワードを知っていれば専門家に聞くなどして、理解を深めていくというやり方です。
詳細に探究する学習もありますが、理念や概念についての基本的な理解をベースとして、自分で考えたり、実際に活用したりすることで知識を深めていき、それを自分の言葉や文字にして伝えることも「学び」においては大切だと思います。
常に現在の能力をわずかに上回る課題に挑戦し続ける(株式会社VOYAGE GROUP:小賀さん)
以前読んだ「超一流になるのは才能か努力か?」という本に「自然にできるようになってしまうと、そこからさらに何年「練習」を続けても向上につながらないことが研究によって示されている」と書いてありました。この言葉をインターンの学生などに伝えています。自分の得意なことや成果の出しやすい、ストレスのないことを繰り返してやっても、それ以上伸びないと考え、「自分の能力を上回ること、新しいことに挑戦をしないと伸びないよ」と伝えています。
「わずかに上回る」としているのは、全然届きもしないところをゴールにしてしまうと時間がかかりすぎてしまうから。自分の能力をわずかに上回るものにチャレンジして、それがストレスなくできるようになったら、また新しいことにチャレンジする。これを繰り返すことで遠いゴールに近づいていくことが大事だと思っています。
(BASE株式会社 取締役CTOの藤川真一さん)
CTOはマネジメントスキルをどのように身につけているのか
メンバーがどうしたら楽しくコードを書けるか考える(藤川さん)
もしかしたら、エンジニアマネージャーになってコードを書かなくなってしまったらもう未来がない、と考える人もいるかもしれません。でも、エンジニアマネジメントもエンジニリングのひとつであり、人を通じてエンジニアリングを実現する人だという視点で見ると、視野が広がると思います。単に、自分がコードを書いて実現するか、人に書いてもらって実現するかの違いです。
また、脳内がポジティブでなければいいコードは書けないし、人間はポジティブである方が生産性が高いと思っているので、コミュニケーションを大事にし、メンバーがどうしたら楽しくコードを書けるか、その方法を考えるのがエンジニアのマネジメントだと思っています。
メンバーが成長し続けられる環境を作る(明石)
マネジメントをするときは、メンバーの視点に立って、こういうことに困っているのだなと一緒に考えるようにしています。また、その人が成長し続けられる環境を作ることを第一に考えることが多いです。
マネジメントも課題解決のための道具のひとつ(小賀さん)
マネジメントもコミュニケーションも、何かの問題を解決するための道具なので、マネジメントスキルについても技術と同じように学んでいけると思っています。
(株式会社VOYAGE GROUP 取締役CTOの小賀昌法さん)
「会社」または「組織」として新しいことを学習するときの進め方
やる気のある人を重用し、先に進んでもらってから全体に広めていく(藤川さん)
フロントエンドの技術が進化して、システムを作りなおさなければならないこともあります。そのときは、最初に新しい技術を習得してもらうメンバーを決め、そこから他のメンバーに広げていくという方法をとっています。
目指す到達点と自分たちがどこにいるかを可視化する(明石)
学習するのは課題や目的があるからなので、トップダウンでの学習の場合には、その目的や意義について、きちんと説明した上で始めるようにしています。どんな学習でも組織で学ぶときは、学んだ結果どうありたいが重要なので、ゴール設定をして、今どこにいるかを可視化し、意識を合わせていくことが大切だと思っています。
一方、ボトムアップで学習するときは個々のやり方に一任しますが、その成功や失敗については、定期的に振り返りやフィードバックをしてナレッジとして蓄積、シェアしながら次の挑戦者たちの成功率を上げられるような仕組み作りを考えます。
急激な変化にも対応できるチームであり続ける(小賀さん)
毎年、新しいサービスやプロダクトが多く出ていますが、それらを試した結果や失敗から学んだ経験をスキルとして発揮できるようになると、新しいことに適応できると思います。また、それらの変化に適応できるチームでい続けなければいけないと思っています。
ただ、100人以上いるエンジニア全員が一度に足並みをそろえて進むのは大変なので、事業部や子会社という単位の10人前後の小さいチーム単位で学び、学んだことを他のチームに共有していくという方法をとっています。
常に、チーム10人のうち、2、3人は業務を通じて新しいものを試して失敗したり、学べたりできる体制にしています。それを実現するためには、「ここを越えると会社としてまずい」という守るところを隔離した上で、メンバーが自由に動けるところを用意することが大事だと思っています。
(Zコーポレーション株式会社 鎖CTOの明石信之)
エンジニアは「何を」「どう」学んでいくべきか
技術習得に対する楽しさ、ワクワクを失わないこと(藤川さん)
エンジニアとして経験を積んでくると、過去の失敗も多く知っているがゆえに、新しい技術が出てきても「どうせ失敗するんじゃないの?」と軽視してしまう「おっさん化」現象におちいる人も多いのではないでしょうか。経験が、新しい技術へのワクワク感を阻害してしまうんです。その一方で、若い人たちは、新しい技術の誕生を素直に受け止めて、時代の最先端を走っていきます。
いくら経験を積んでも、わかったつもりや「おっさん」にはならず、常に今の時代に何が必要で何がエレガントな技術なのかを受け止めてほしいです。技術の変化に対して追従しようとする意欲をもっていないと、エンジニアは生き残れないと思っています。
インターネットの技術は、誰かが作って、賛同したみんながさらに作っていくというスタイルで普及します。まぎれもない法則があるというより、「みんなが使っているからOK」というものがフレームワークになので、祭りだと思って参加することも大事だと思います。
自分の核となる技術をきちんと身につける(明石)
技術トレンドは変化していきますが、その思想や根幹や原理は大きく変わることは少ないので、自分の核となる技術をきちんと身につけることが重要だと思います。私も「この分野を極めておいて助かった」ということがありました。自分は何が得意なのか、どんな専門性をもっているのかを語れるようになってほしいですし、「技術職」というところに責任を持ってほしいです。
そして、新しい技術を身につける場合には、自分の核となる技術を起点に広げることにより、その理解力は大きく変わるはずです。
また、技術者やクリエイターは仕様や要求どおりにものを作る人たちではなく、その技術や知識をもとに新しい何かを作り出す人たちのこと。だからこそ、技術や知識以外の創造性やいろんな知見、経験が重要だと考えています。
変化のペースを基準に考える(小賀さん)
AWS(※1)、GCP(※2)など、最近のクラウドサービスやウェブのフロントエンドの技術の変化はとてもペースが速くなっています。これらのペースが速いものを追いかけたいと思ったり、面白そうだと飛びついたりすることが大切です。
ただ、一方で変化のペースが遅いものもあります。たとえばUNIX系のOS、リレーショナルデータベースの考え方、プロトコルなどは前からある概念です。これらの技術をしっかり覚えておくと、長く使える技術になります。ペースの速い技術を、長く使われてきている価値がある技術と合わせていくことで、自分の強みができてくるはずです。
そして、今トレンドになっている技術が苦手だとしても、また新しい技術が出てきたときには得意なものになる可能性があるので、学び続けるということが大切です。
※1 AWS:Amazon Web Services。Amazonが提供するクラウドコンピューティング
※2 GCP: Google Cloud Platform 。Google がクラウド上で提供するサービス群の総称
技術選定の際に心がけていること、気になっている技術
技術そのものが「イケているか」を総合的に判断する(藤川さん)
技術選定の際に心がけていることは、以下の3つです。
技術そのものがイケているか(課題解決に最適か、継続性、コミュニティーの充実度、人材採用の可能性、汎用性や未来があるか、などを総合的に判断)
使いたいと思っているメンバーへの信頼感と、メンバー自身の熱意
他の現状メンバーとの親和性(他のメンバーに成長を促すだけのメリットがあるか)
また、最近気になっている技術は、時系列データベースなどに代表されるリアルタイムデータ処理技術です。
「適所適材」の考え方をする(小賀さん)
技術選定では「適材適所」ではなく「適所適材」のような考え方をするように話をしています。「適所適材」はその場に適した人材を登用するということですが、技術も同様だと考えています。何が課題で何が必要なのかを最初に考え、その課題を解くのに最適な技術を選定するということです。現在使っている技術をベースに考えるのではなく、課題から必要なものを導き出すことが重要です。
気になっている技術は、特定の技術ということではなく、チームのケイパビリティーを高める技術群です。「LeanとDevOpsの科学」という本には、デリバリーのリードタイム、デプロイの頻度、サービス復旧の所要時間、変更失敗率の4つの尺度が有効と書いてあり、私もそう考えています。これらを高められる技術として、コンテナや、ペアプロ/モブプロを支援するツールなどに注目しています。
適用プロダクトの課題と将来を見据えた上での選定を心がける(明石)
技術選定を行う際に意識していることは、以下の3つです。
1)プロダクトの現在の課題、トラフィックやキャパシティー、必要とされる機能などに適応できるか、その技術の将来性(コミュニティーや企業の状況)
2)技術の学習コスト、運用やメンテナンス性を含めたツール群の充実度
他に替えのきかない技術を使う場合は、その学習コスト、自分たちで改修や周辺環境を構築できるかも重要だと考えています。
3)プロダクトの将来を見据えた上での機能や拡張性
最近気になっている技術分野は、ソフトウェア無線(SDR)や信号処理、 ブロックチェーンです。
CTOたちの10年、20年後は?
違う業種でも仕事ができる人でいたい(藤川さん)
今の私の課題は、経営における力がまだ足りないこと。また、目の前のサービスを安定運用することが優先になっていて、10年後、20年後どうするかまだ考えられていないのが実情です。
ただ、もしこの会社を首になったとしても、他の会社や全然違う業種でも仕事ができるような人でありたいですね。
原点回帰して、本気でサービスに熱中したい(明石)
この前、エンジニアがいないベンチャーの会社を手伝って久しぶりにコードを書いたら楽しくて楽しくて仕方なかったんです。自分はやっぱりここが原点だなと思いました。
10年、20年後に向けてどこかで原点回帰して、本気で取り組めるサービスに熱中したいと思っています。
ITの力を官の力に生かしたい(小賀さん)
無限ループのプログラムで中学生が補導されるという事件(※3)がありました。この話だけではないですが、官はITの力が弱いと思います。
ウェブ業界がやっているものづくりの力は、他の産業で生かせると考えています。経産省がここ数年、デジタルトランスフォーメーション(DX)(※4)を啓発しているということもありますし、ITの力を官に生かしていきたいですね。
※3 「IT業界の萎縮を招きかねない」“ブラクラURL書き込みで中学生補導”、弁護士に問題点を聞いた
※4 デジタルトランスフォーメーション:「ITの浸透が、人々の生活をあらゆる面でより良い方向に変化させる」という概念のこと。
【CTOのプロフィール】
藤川 真一(BASE株式会社 取締役CTO)
1973年生まれ、埼玉県出身。FA装置メーカー、ウェブ制作のベンチャーを経て、2006年にGMOペパボ株式会社に入社。
ショッピングモールサービスにプロデューサーとして携わるかたわら、2007年から携帯向けTwitterクライアント「モバツイ」の開発・運営を個人で開始し、後に法人化。
2014年8月からBASE株式会社 取締役CTOに就任。
2017年9月に慶應義塾大学大学院メディアデザイン研究科博士課程を単位取得満期退学、2018年1月博士(メディアデザイン学)取得、同学科研究員。
小賀 昌法(株式会社VOYAGE GROUP 取締役CTO)
釧路工業高等専門学校を卒業後、プログラマーとしてNECネッツエスアイに入社。
その後、Yahoo! JAPAN、自身での起業などを経て、2010年に日本最大級のSSPを運営する株式会社fluct(VOYAGE GROUPの100%子会社)に入社。その6カ月後にVOYAGE GROUPのCTOに就任。
エンジニアの採用・育成・評価戦略におけるさまざまな仕掛けを構築・運用し、事業開発会社としてのエンジニア文化の醸成に大きく貢献。また、サービスインフラや社内インフラの構築・運用を手がけるシステム本部長や情報セキュリティ委員長も兼任。
明石 信之(Zコーポレーション株式会社 鎖CTO(※5))
※5「鎖CTO」の由来は、ブロックチェーンに力を入れているところから
株式会社フリークアウト・ホールディングス 執行役員
兼 ヤフー株式会社 Senior Fellow
兼 株式会社TABI LABO 技術顧問
兼 株式会社インフォステラ 技術顧問
兼 ユアマイスター株式会社 技術顧問
兼 Zコーポレーション株式会社 鎖CTO
システム開発会社を経て、2000年、ヤフー株式会社入社。
Yahoo! JAPAN の広告配信基盤、ビッグデータ基盤、および課金システムの開発に従事。
ヤフー広告技術を通じ、日本インターネット広告技術をけん引し、2009年4月に同社 CTO、2013年10月にシニアフェロー就任。
2014年1月には、株式会社フリークアウト執行役員就任し同社のIPO支援、2017年1月より株式会社フリークアウト・ホールディングス 執行役員としてベンチャー投資、支援を中心に行うなかで、2018年8月 Zコーポレーション鎖CTOに就任。
文・写真/Yahoo! JAPANコーポレートブログ編集部