Scalaコミュニティ発展の立役者・麻植泰輔がVPoEに就任。CTOとの二頭体制となるエフ・コード開発組織の展望とは?

今回の記事は、2018年2月よりエフ・コードVPoE(Vice President of Engineering)に就任した麻植泰輔(おえ・たいすけ、 @OE_uia)のインタビューです。麻植は一人のエンジニアとしての活躍はもちろんのこと、プログラミング言語「Scala」日本最大級のカンファレンス「ScalaMatsuri」の座長として、日本・世界におけるScalaの発展のため尽力し続けています。

エフ・コードは基幹システムにScalaを採用しており、先にCTOに就任した中村とVPoE麻植の二頭体制のもと、開発組織の構築とともに新規プロダクト開発を鋭意進めています。今回の記事では、麻植自身の今までの歩みから組織についての思いまで、幅広く語っています。

――よろしくお願いします! といっても、麻植さんとは少し前から一緒にお仕事をさせて頂いてますね。

はい、エフ・コードには昨年(2017年)の9月から顧問として関わってきました。今回のVPoE就任に伴って組織の内部に入り、より深くコミットしていく形になります。

――今回はその顧問就任以前の話も含め、いろいろお聞かせいただければと思います。

頭がよくてお茶目な人が好き

エフ・コードには最初に顧問として参画したのですが、その背景には取締役の門田さん――普段は「かどちん」って呼んでますが(笑)――が4年来ぐらいの友人だったということがあります。知り合った当時、彼とはサイドプロジェクトを一緒にやっていました。ヘルスケアのIoTプロダクトを作ろうという話だったのですが、彼が音頭を取っているうちのひとりで、僕はエンジニアとして参加していて。週末などに皆で集まって、わいわい一緒に作っていた感じです。


▲ 取締役・門田(かどちん)のインタビュー。これまでのエフ・コードの歩みについて。


そんな繋がりから、エフ・コードとのご縁をいただきました。そして実際に会社を見てみると、関わっている「人」に魅力を感じました。僕、基本的に「頭がよくてお茶目な人」が好きなんですが、そういう人たちが多く集っている組織だなと。社長の工藤さんをはじめ、たとえば会社の未来について話すときなどものすごくロジカルで、背景と周辺から勝ち筋に至るまでが明確で。一方でカジュアルな飲み会の場などでよくわかるのですが、ユーモアに溢れた人柄が魅力的だったり。そんな方々による会社ですから、将来的にすごく面白く爆発しそうだなという予感がありました。

そんな中で大きいのは、がくぞさん(CTOの中村学、@gakuzzzz)の存在ですね。僕が座長を務めているScalaMatsuriの文脈で、彼とはもう6~7年の付き合いになります。技術的にとても信頼できる方であることは言うまでもないですが、人間的にも魅力的な方だと思っていて、彼と一緒に「CTOとVPoEの二頭体制」という形で働けることは、僕個人にとっても面白い経験になるなと感じました。


▲ CTO中村のインタビュー記事。

CTOとVPoEの二頭体制について

アメリカなどではすでに一般的になっていると思いますが、日本では開発組織における「Vice President of Engineering(VPoE)」という役職はまだ知名度が高くないかもしれません。特に、エンジニアでない方々には耳慣れない言葉だと思います。社内でも全社会議の際に時間をとるなどして、皆さんにご説明しています。


▲(参考記事)CTOとVPoEについて

CTOとVPoEによる二頭体制には大きな意義があると考えています。この体制をとる他社のケースの多くと同じく、エフ・コードでは主にCTOが「プロダクトづくりと技術面におけるリード」、VPoEが「組織づくりという観点からのマネジメント」を行っていきます。役割分担が明確でなければ組織が混乱してしまうリスクもありますが、がくぞさんと僕の場合は大丈夫だと思っています。

というのも、先ほど述べたように、がくぞさんと僕の間にはScalaMatsuriにおいて一緒に動いてきた蓄積があるんです。会社組織とScalaMatsuriの運営には異なる点も多いですが、がくぞさんがScalaMatsuriの技術的コンテンツ面をスピーカーとして牽引して、僕は実運営をやってきたという役割分担は、会社においてもある程度応用が利くと考えています。お互い異なる強みを理解しているし、一緒に働く上での感覚とか癖を知っているから、そういう意味でのツーカー感が最初からあることは大きいですね。

様々な経験を経てエンジニアに

ScalaMatsuriについて少し話させていただくと、これは2013年に「Scala Conference in Japan」という名前で開催したのが始まりです。現在エフ・コードの技術顧問でもある水島宏太さん(@kmizu)がそもそも日本でScalaを広めた功労者だと思うのですが、水島さんがカンファレンスをやろうということで、手伝ってくれる人を募集されたんですね。その時点で僕はScalaをずっとやっていて面白い言語だと思っていましたし、イベントをワイワイやるノリが昔から割と好きだということもあって(笑)、キックオフに参加したんです。すると、役割分担の中で会計をする人が誰もいなくて。じゃあ僕がやります、と。


▲「ScalaMatsuri 2018」は3月16日~18日開催予定。数日後に迫っています(※記事公開日現在)。


実は僕自身、大学や大学院ではプログラミングを学んでいたわけではなく(バイオ系でした)、新卒で入った会社でも経営管理系の仕事をしていたんです。その関係でけっこう得意分野だったので、会計担当に手を挙げたという経緯があります。一見関係がなさそうな経験でも、意外なところで役立ってくるものですね。その他にも、いろんなことが繋がっている感覚があります。

たとえば、最初の会社を辞めたときは、次は自分でビジネスをやりたいと考えたんです。そこで一番魅力的だと考えたのがスマホ業界で、プログラミングを勉強し始めたらめちゃくちゃ面白いなと。JavaやPHPをやって、その後割と早い段階でScalaの楽しさに気づき今に至るのですが、そこでプログラミングの勉強をするときにも、一見関係がなさそうな大学・大学院での経験が活きて学習速度が速くなったと感じています。

今も活きる「対照実験」と「reconciliation」からの学び

大学・大学院では、専門がバイオ系(生化学)でしたから実験を多く行っていたのですが、そこで身に着いた「対照実験」の考え方は後々にも非常に役立っています。対照実験というものをざっくり説明すると……たとえば2つの実験系があるとします。片方の実験は成功して、もう片方は失敗します。ここで失敗したほうにおいて変えてある条件が1つであるという状況にすると、その条件から失敗の原因を類推できるという、基本的にはこのような実験手法です。Webマーケティングでよく行われる「ABテスト」も、同じ考え方に基づいていると思います。

プログラミングにおいてこれが役立つ場面は、たとえばデバッグの作業です。これは「うまくいかない状態をうまくいかせるため」のプロセスですから、当然「うまくいかない理由」を早く調べることが重要です。仕組みが全てわかっているものであれば原因の類推もある程度容易なのですが、開発においては往々にして「全く意味がわからないバグ」というものが発生します。この原因を探る上で、対照実験の手法が使えるんです。

この場合、「うまくいく条件」をなにか自分の中で見つけて、バグが起きる場合の条件をそこに近づけていく、ないしは逆にうまくいく条件をバグが起きる条件に近づけていき、差分をどんどん小さくすることでエラーの大元の原因を探っていくんですね。つまり、対照実験の手法を用いた問題の切り分けです。

それから、新卒で経営管理の仕事をしたときに学んだ考え方にも、今に活きているものがあります。会計・財務の用語で「reconciliation」というものがあり、日本語では一般に「照合」と訳されるのですが、起きた事象を複数の方法で検証してロジックの確からしさを確認したり、ギャップを原因ごとに分割して……という考え方です。これは技術的な講演でお話をする際など、ロジックに説得力を持たせるための検証などに、今も使っています。

ScalaMatsuriの、そして会社組織のマネジメント

任天堂でかつて横井軍平さんが提唱され、今も受け継がれている「枯れた技術の水平思考」という考え方がありますが、僕はこれにとても共感しています。「枯れた技術」というのは、いろんな人によって実証され尽くしている、「うまくいくことはわかっている」ということですから、技術者の世界では大変な褒め言葉です。その「水平思考」、つまりそれを別の場所に持ち込んで全く新しいものを作るということに価値を感じるんですね。たとえば先に挙げた「対照実験」とか「reconciliation」といった考え方も、メソドロジーとして枯れているわけです。だからこそ学ぶことが多いし、応用範囲が凄く広いのだと思います。

このように振り返ってみると、僕はその時々に学んだことを自分の道具にして次のステージに進む、みたいなことをずっと繰り返しているなぁと思います。「ひとつの物事をそれだけやる」というのではなく、まったく関係ないところから持ってきた知見を別の業界に再適用する、という。マネジメントについて言えば、試行錯誤を繰り返し、ある程度成果に結びついているといえるのはまだScalaMatsuriにおいてのみですが、そこで学んだメソドロジーを今回VPoEとして会社の文脈で使い実証していく、ということは面白いチャレンジだと考えています。

もう少し詳しく述べると、ScalaMatsuriというカンファレンスは、ステークホルダーが非常に多様であるという意味において複雑な組織です。ScalaMatsuriは基本的に非営利で運営されており、準備委員会のスタッフは給与の発生している社員というよりも、ボランティア参加が大多数を占める組織なんです。

こうして手伝ってくれる方に対して報いるためには、お金といういわば「最も一般的で強い報酬」を使いにくく、それ以外の部分、例えばプロマネ等のスキルの練習、新しいツールの実験場所、横の繋がり・楽しさなど、別の面でメリットを感じてもらうことが重要です。それに加えて、ビジネス上でもメリットがあると感じて協賛してくださる企業(エフ・コードもそのうちの一社です)がいたり、国内外からスピーカーという形で関わってくれている個人の方もいます。それぞれが異なる利を得ながらも協力してくださることで、ScalaMatsuriというカンファレンスは成り立っています。

ScalaMatsuriの拡大とともにステークホルダーの多様性が増す中で、試行錯誤を繰り返しながらも大事にしている考え方は、「関わってくれる人にとっての利と、組織にとっての利を合わせる」ということです。そして、この根本的な考え方は会社においても重要なことであり、適用できると思っています。


個人の利と会社の利を調整する

この「利を調整する」ということはCTOのがくぞさんもインタビューでおっしゃっていましたが、まったく同じ考えです。エフ・コードにおいては取締役の尾上さんがこのように言語化してくれて、僕にとっても腹落ちがありました。

会社の志向性と個人の志向性が一致しないことなんて、技術の分野に限らずいくらでもある話だと思っています。そうした個々人の志向性を保ったまま、いかにビジネス上のバリューがある役割を担ってもらうか、またそこでバリューを出すためのお手伝いをすることが組織づくりの根幹だと僕は捉えています。

その上で、組織づくりとは「終わらないもぐらたたき」だと僕は思っています。つまり組織というものは、そのサイズやフェーズによって課題感が全く異なってくるということです。今のエフ・コード開発チームのように人が少ない状況では、個々のフォローや採用といった比重がどうしても大きくなりますし、組織が大きくなってくると評価制度などの個々が成果を出すための仕組みづくり、もう少し属人性を薄めた採用といったことがテーマになってくるでしょう。ですから、今の段階から目指す組織像を固定化してしまうことはできないし、すべきではないと考えています。

「今を一緒に楽しめる人」と働きたい

そういうわけで、どんな組織にしたいかというと抽象的で「エモい」表現になってしまうのですが(笑)、やっぱり皆が「今」を面白がれる組織が良いなと思いますね。たとえば「未来にこうなるから今は我慢してこうしよう」みたいな考え方って、個人的にしっくりこなくて。むしろ、今だから得られることがある、今やっていることがこの先ひょんなことで役立つこともある、といったポジティブな側面を意識して楽しみたいと思います。

前段で、組織とはどんどん変わっていくものだというお話をしました。段階ごとに「今はこういう組織だからこのロジックに基づきこういう座組になっている」ということは異なるはずです。組織の空気も違うはずですし、それを一言で表した言葉も多分違っている可能性があるのだろうと思います。だから「どんな組織」というより「どんな人」という意味で、その時ごとの環境を楽しめる人達が集ってくれたら良いなと思っています。その意味でも、今を面白がれるということを、僕は大切にしたいです。「目的を達成するために『今』ベストなのはこういう組織だよね」という感覚をいつも持ちたいなぁと思っています。

今これから入ってくる5人・10人が開発組織という意味ではすごく重要で、その人たちのキャラクターや志向性などなどによって、組織はどうとでも変わり得ると思うんです。だからこそ「より自分を強くしていきたい」といった向上心が強く、加えて周りの人が強くなっていくことも含めて、そんな過程を一緒に楽しみ喜べるような人達に仲間に加わってほしいと心から思っています。

株式会社エフ・コード's job postings
Anonymous
00e58676 90ce 49d9 add0 e76dcb6481c6?1517739742
77b43ce3 6a18 494e 8b8e a96f7a9d13f6
15032788 1110252692376126 7443766035024043500 n
13315736 10153776408153635 7403567511929137087 n
Picture?1523003116
11 Like
Anonymous
00e58676 90ce 49d9 add0 e76dcb6481c6?1517739742
77b43ce3 6a18 494e 8b8e a96f7a9d13f6
15032788 1110252692376126 7443766035024043500 n
13315736 10153776408153635 7403567511929137087 n
Picture?1523003116
11 Like
559493 311575085617343 1819478980 n
Come visit 株式会社エフ・コード!
VPoE麻植・CTO中村のもと、ともに新プロダクトを開発していく仲間を、エフ・コードは大募集しています。まずは気軽... Show more
559493 311575085617343 1819478980 n
Come visit 株式会社エフ・コード!
VPoE麻植・CTO中村のもと、ともに新プロダクトを開発していく仲間を、エフ・コードは大募集しています。まずは気軽にご連絡ください!
C9f4c4e9 4609 455a 9747 988dfb229dbf?1504524944
Web engineer

Scalaで新規プロダクト開発ラインの立ち上げを担うWebエンジニア募集!
View other job postings

Weekly ranking

Show other rankings

Page top icon