本連載では、第一線でご活躍されているエンジニア組織のリーダーをお招きして、対談形式でこれまでのキャリア、組織のリーダーとして大切にしていること、組織課題などを語っていただきます。ナビゲーターは元DMM.comCTOで、現在は株式会社デジタルハーツでCTOを務める城倉和孝氏です。
第1回目は、福利厚生として人気の高い、健康的で美味しいお惣菜を全国のオフィスや従業員の自宅に届けてくれる置き型社食®︎サービス「オフィスおかん」を提供する、株式会社OKANのCTO 川口登氏にお話を伺いました。
株式会社OKAN CTO 川口登氏
1995年4月に株式会社オービックビジネスコンサルタントへ入社し、エンジニアとしてのキャリアをスタート。Microsoft Development Ltd.、株式会社セカンドファクトリーを経て、2011年4月にポーターズ株式会社に入社。2014年同社執行役員CTOに就任。2020年1月より株式会社OKANにCTOとしてジョインした。
目次
「お惣菜」は課題解決のためのひとつのツール
城倉さん(以下、「城倉」):今日はよろしくお願いします。はじめに、株式会社OKANの事業内容について簡単に教えていただけますか。
川口さん(以下、「川口」):まず、事業としてはふたつありまして、ひとつめが「オフィスおかん」です。オフィスにお惣菜をお届けして、従業員に購入していただくサービスです。健康で働ける環境の提供や食をきっかけにした職場のコミュニケーションの促進を目的としています。
もうひとつが、人材の活用・定着を支援する組織改善サービス「ハイジ」です。組織の状態を定量的に分析、組織課題を可視化して適切に対処していくためのサーベイのツールです。
「オフィスおかん」の知名度が高いので、お客さまには「惣菜を提供している会社」と捉えられがちですが、我々としてはあまりお惣菜の会社という認識はありません。
OKANのミッションは「働く人のライフスタイルを豊かにする」、ビジョンは「望まない離職を防ぐため、 企業の意識と行動を変容する」を掲げていて、企業としてはそれを実現するためにはなんでもやろうというコンセプトを持っています。
言ってしまえば、お惣菜も職場の課題を解決するためのひとつのツールとして提供しているだけなんです。
城倉:「お惣菜がツール」という考え方は非常におもしろいですね。OKANという社名もやはりお惣菜からインスピレーションを受けているんですか?
川口:そうですね。提供しているお惣菜も和食が多いので、そのイメージを想起させる意味も込められています。
城倉:特にエンジニアは食生活が不規則な人も多いのでうれしいサービスだと思います。
川口:忙しい方はもちろん、お店が開いていない夜間に勤務されている方やシフト制などで24時間稼働しているような職場でも食事が摂れるので、うまく活用していただいています。
置き型社食®︎サービス「オフィスおかん」は全国2500以上の拠点で利用されています。
ものづくりへの興味から、一度は離れたプログラミングを仕事に
城倉:つづいて川口さん自身についてお伺いします。IT業界に入ったきっかけやCTOを担うまでの経緯などをお聞かせいただけますか。
川口:現在CTOをやっている方って、30代半ば~40代くらいの方が多いと思うんですけど、私はもう少し上で小学校のときにPC-6001あたりのパソコンブームがやってきた世代です。そのころBASICで簡単なプログラムを書いたのが最初だったと思います。
実は高校生になってパソコンに興味がなくなり離れていたんですが、Windows 3.0が出たころに再び興味がわいて、大学の専攻は理系ではなかったもののIT企業へ就職しました。
パッケージの会計ソフトを作っている会社で、そこで本格的にCやC++でのプログラミングを始めて、開発の基本について学びました。
2000年ごろに外資系のIT企業へ転職したんですが、外資は日本的な働き方と違いとても合理的で、良し悪しの判断基準もハッキリしていました。当時は相当カルチャーギャップを感じましたね。「いけてる会社ってこうやってものづくりをするんだ」という学びもありました。
いくつかの部門でシステム開発に携わったあと2009年に退職し、興味のあったUXに強い企業へ入りました。ただ、その会社は受託案件が中心だったため自分で考えたもので価値を提供したいと思うようになり、今度は自社でWebサービスを作っている会社へ転職し、最終的にはCTOという役割を担っていました。
そのころにスクラム開発にハマって、それをもっと極めたいと思うようになったんです。スクラムの指標のひとつに「エンジニアの幸福度を最大化することによって、最大の成果を出せる」といったものがあります。自分自身も「エンジニアが幸福感を持って開発ができる社会にしたい」という思いを持っていました。その思いと、さきほど述べたOKANのミッション(「働く人のライフスタイルを豊かにする」)が近いと感じたんですよね。それがあって2020年1月にOKANに入社しました。
城倉:CTOを務めるのはOKANで2社目なのですね。本格的なマネジメントの役割も前職からでしょうか。
川口:そうですね。明確にマネジメント職に就いたのは前職からです。もちろん現場のリーダーや開発チームをまとめる役割はそれまでもやっていましたが。
城倉:経歴からすると川口さんのバックグラウンドはMicrosoft系ですよね。Webサービス開発の企業に転職したとき、扱う技術にはかなりギャップがあったんじゃないですか?
川口:はい、最初に扱ったのがWindowsのソフトウェアだったのでベースはそうですね。おっしゃるとおりで、Web系のスキルセットに切り替えるのは結構苦労しました。
スクラム開発の導入でエンジニア組織を改革
城倉:現在川口さんがCTOとして、エンジニア組織に対して力を入れて取り組んでいることはなんですか?
川口:大きくふたつあって、ひとつめが「組織としての生産性の向上」、もうひとつが「事業を進化させるための技術の適用」です。
OKANという会社はお惣菜の販売をメインの事業としてやっていたので、ITはあくまで補助的な役割でした。そういう事情もあって、開発組織を強化していく取り組みはあまりされておらず、事業部門から依頼を受けてエンジニアが個別に対処していくという進め方をしていたんです。
私がOKANのCTOとして採用された目的もおそらくそのあたりの改善だったと思います。ジョイン後に事業をドライブさせるためのエンジニアの組織づくりを推進し始めました。
まず最初に属人的な開発手法をやめて、チームで開発できる仕組みを整えました。その手法として採用したのがスクラム開発です。
導入にあたっては、私がいきなり「やるぞ」と言って始めたんですけど…(笑)。現在、教科書どおりのやり方はもうできていて、「これからもっと生産性を上げていくにはどうしたらいいか」というのが課題になっています。
成果を最大にするための最適化は組織的な課題であり、現在力を入れて取り組んでいるところですね。
城倉:お話を伺ったところ、OKANの事業としては0→1のフェーズは超えていて、今は1→10もしくは10→100のフェーズなのかなと捉えました。
川口:おっしゃるとおりで、0→1のフェーズはOKANとしては終えていると思います。1→10か10→100かをはっきり言うのは難しいんですが、拡大フェーズに入っているのは確かですね。
オペレーション自体が属人的で力技でこなしている部分があって、そこを改善しないことには急速な事業拡大は望めないと思っています。たとえば、現状のままでは、お客さまがたくさんついたとしても回しきれないので、テクノロジーで解決する必要があります。
そういう観点では、お客さまに適切に商品を提供し続けるために大きなウェイトを占めているSCM(サプライチェーンマネジメント)のシステムからDX化を推進していくつもりです。
城倉:ありがとうございます。今のお話はエンジニアリングチームとしてのフェーズですか?ビジネス的にも同じような段階ですかね。
川口:どちらかといえば、ビジネスのほうが先行しています。サービス内容やお惣菜側のプロダクトはPMF(プロダクトマーケットフィット)のフェーズはもう過ぎていて、よりよいものにしていくという状態になっています。
ただ、そこを高速で進めていくための基盤をシステム化するために最低限解決しなければいけない問題は残っています。いわゆる効率化ですね。
城倉:SREに取り組むのとは少し違いますか?ビジネスシステムをもっと効率化していくということですかね。
川口:今はまだSREを考えるところまではいっていないですね。ビジネスとしてやりたいことはあるんですけど、進めるためにシステムを待つ状態が発生しています。
城倉:なるほど。ビジネスでやりたいことはバックログにたまっているんだけれど、それがなかなかスピード感を持ってできていないと。
川口:そのとおりです。
城倉:そこを解決するのも川口さんの役割として大きいように思いますが、スクラム開発をはじめとして、具体的にどのような施策をおこなっていますか?
川口:直近の重点ポイントとしては、ビジネスを高速で回していくための土台作りに重点を置いています。具体的にはBIの環境を整えたり、POSデータ(販売のデータ)をリアルタイムで取れるようにしたり、あとはSCMまわりのシステムからより人の介在を減らすといったことですね。
現在はシステムやツール、データ同士が適切にリンクしておらずバラバラです。まずはそれらをつなげて、ひととおりの流れを当たり前にできるようにしていこうという目標を掲げています。
城倉:エンジニアとして興味をそそられるテーマだと感じました。技術方針は川口さんが出されるんですか? それとも開発チームがそういうところも話して決めていく土壌があるんでしょうか?
川口:大枠は私が整理して方針を決めています。ただ、実装については基本的には現場のほうで考えながら進めていってもらっています。
もちろん重要なポイントは私も口を出しますけど、基本的に目的をしっかり共有して、相互理解した状態を作っているので、具体的にどう実行していくかはチームに任せています。
編集部:当初の社内受託っぽい体質だった組織を、大幅に改革しDXを推進するにあたって、苦労された点はありますか? たとえば、経営陣との折衝とか。
川口:正直なところ、経営陣との議論で「なぜそれをやるのか」が焦点になったことはあまりないんです。社長含め経営陣がDXを推進したいという思いをもともと持っていたので、進め方を提示したら「それでいこう」とわりとすんなりGOが出たというか。
城倉:やはり世の中のDX化を目指している企業よりは進んでいますよね。経営陣の理解があるのは理想的だと思います。
川口:確かにその点に関してはあまり苦労はなかったですね。
とはいえ、実行部隊は苦労も多いと思います。既存システムは属人的で特定の業務にしか対応できていない部分があるため、それを分解して汎用的かつ抽象度を上げてマイクロサービス化を進めています。将来の変更の可能性を考慮しながら既存事業も継続できる設計は非常に難易度が高いので頭を使います。
城倉:事業を止めずに進めるのは重要ですよね。マイクロサービス化して、振る舞いを守りながら中身のリファクタリングもしているんでしょうか。
川口:そうですね。マイクロサービス化自体が目的ではないんですけど、分割して疎結合の状態を作れば、既存の事業と並行しながらでも改善をおこなえるだろうと判断をしてそのあたりも進めています。
既存システムとは別にスクラッチで作り直すという選択もなくはないんですけど…エンジニアが潤沢にいるわけではないので、リソース的には考えにくいですね。まるごとリプレイスはリスクも大きいのでその選択肢はありませんでした。
城倉:そこは川口さんのほうでCTOとして意思決定されたんですか?
川口:おっしゃるとおりで、私が勝手に決めちゃいました(笑)。
従来のカルチャーで動いている組織って、どうしても既存のものを改善していこうという発想になりがちで、そこを私がくさびを打ち込んででも違うやり方を提示して改革する形を取りました。
城倉:やり方を変えるのって並大抵のことではないですよね。私も過去に経験がありますので、とてもよく分かります。
川口:技術的なところでは、マイクロサービス化にあたって、これまで採用していたRubyではちょっとやりにくいということでNode.jsを選択しました。同時にフロントの言語も検討して、TypeScriptとReactに統一しました。
当然もともとはRubyを書いていたエンジニアが多かったので、一から勉強の必要があり苦労したと思います。ただ、新しい技術を学ぶのが好きな人が多いのでそのあたりは納得してやってくれてたんじゃないでしょうか。
城倉:進め方としてはシステム分離をした部分から、新しいやり方で作り直していくという感じでしょうか?
川口:そうですね。さきほどとも重なりますが、技術方針は私のほうで固めて、現場をつつきながら、実際どうやるかは現場で考えて進めてもらっています。
城倉:CTOはつついて刺激をする役割なんですね。働きかけると現場はスムーズに動きますか?
川口:現在3チームあるんですが、そのうち2つはわりとそうですね。もう1つは基幹システムを開発しているチームなので、「既存業務を止めない」という役割が大きく、守りの姿勢が強くてなかなか進んでいないのが実態です。
やりたい気持ちはメンバーとしてもあるようなんですけど、実作業として組み込んでいくのは二の足を踏んでいる状態が続いています。
城倉:なるほど、ただ改革の意識は各チーム高まっているんだろうなという印象は受けました。
技術選定では「エンジニアが興味を持てるか」も重要
城倉:今回のような技術選定の場面では、どういう点を大切にしていますか。
川口:選択した技術が目的に合ってるかどうかが一番重要だと思います。
城倉:目的というと、もう少し具体的には作るプロダクトに合っているかということですか?
川口:プロダクトというか、アーキテクチャーに合ってるかどうかですね。
今回はマイクロサービス化だったので、たとえばバックエンドのコアサービスの選択において、コンパクトに動かせるランタイムでいきたいというのがあって「NodeでいくかGoでいくか」と対象を絞っていきました。プロダクトの目的からすると言語はなんでもいいのかなと思うんですが。
城倉:おっしゃるとおりですね。
川口:サービスとしては永続性が重要なので、「それを選んで大丈夫かどうか」っていうんですかね。その技術が続くかどうかとか、いっときのはやりで廃れてしまいそうなものはできるだけ避けるようにはしています。
城倉:長い目で見るとエンジニアも集めにくいですよね。いっときはいいと思うんですけど。
川口:そうですね。キャッチーで興味はひくと思うんですけど、事業を永続的に進めていくという観点からすると、おもしろいだけではだめだと思います。とはいえ、枯れたものばかり使っていてもおもしろくないですし。バランスは大切ですよね。
城倉:そこは難しいところですが、おっしゃるとおりですね。
これまで技術選定に関して苦労された経験って他にもありますか?
川口:いろいろ調べたりして時間はかけてますけど、どちらかというと選定よりはチームに本導入するタイミングを決めるのに胃が痛くなります。「えいや」で決めちゃっていいのかどうかは悩むポイントです。
編集部:新しいものに変えるとき、エンジニアからはあまり拒否反応は出ないものなんですか?
川口:あんまりないですね。私が気づいてないだけかもしれませんが…(笑)城倉さんはそのへんご経験ありますか?
城倉:そうですね、まあ楽しく取り組めればいいんじゃないかなと。技術選定って少し宗教的な部分があって、そのときのテックリードが好きな言語になっちゃったりすることもあるじゃないですか。
川口:ああ、そうですね。分かります。
城倉:そう考えると正解はないんですよね。将来入って来る人のことも考えた上で誰もが楽しめる技術を選択するのは難しいですけど、個人的には今いるエンジニアが楽しければいいというスタンスです。もちろん、ビジネスやプロダクトの要件にあった制約をクリアすることは大前提になりますが。
編集部:二人のお話を聞いていると、何を選ぶかということ自体だけでなく、開発するもの・取り組む内容がエンジニアにとって楽しいと思えるかどうかもかなり大事ということでしょうか。
川口:そうかもしれませんね。OKANの場合は、まだ妄想レベルですけど、お惣菜提供というリアルサービスとITを組み合わせて、たとえば冷蔵庫に何かを組み込んでセンサーをつけるといった構想も考えています。
城倉:そうなってくるとおもしろいですね。Web以外の新しい技術を適用していく必要があると思うので、有志で勉強会を開いたりしてもよさそうです。そのあたりもこれから楽しみにしています。
エンジニアの幸福度を上げて、自走力のある組織を目指す
城倉:CTOにとって一番大事な要素についてはどうお考えですか。ここまでのお話から、ときには大胆な変革や、技術の切り替えを推進するのがご自身の役割であると考えていると感じました。
川口:そうですね。なかなか現場がそこまで意思決定するっていうのは難しいので、そこは一定の責任を持ってできる立場である自分が判断しないといけないと思っています。私自身は作ったものを捨てることにためらいがないタイプなんです。今よりよくなる方法であればあらゆる選択肢を考えて、取り組んでいくというスタンスでやっています。
城倉:非常に共感できる点が多いです。解決するべき課題って形は変わりますけど根本的な部分はあまり変わらないんですよね。でもコードはどんどん古くなるので、必要に応じて書き換えていくべきだと思っています。
もう1点お聞きしたいのが、経営に寄り添って変化をしていくというのと同時に、エンジニアの幸福度をとても大事にされてると思うんですけど、それらを両立していくにあたってCTOとして気をつけられていることってありますか?
川口:これは難しい問いですね。これまで私が意思決定して決めちゃうという話をいくつもしたと思うんですけど、本当は何も言わなくても動ける状態が望ましいなとは思ってるんです。なので私がいなくてもよくなって、エンジニアが主体的・自律的に動ける組織になると幸福度が高い状態に近いのかなと考えています。
城倉:なるほど。それに向けてスクラムの導入や改善をしているということですね。スクラムを導入してだいぶチームの雰囲気などは変わりましたか?
川口:うまくいってるチームと、そうでないチームはあるんですけど、言われたことを受け身でやる組織ではもうなくなったかと思います。ようやくですね。1年くらいかかりました。
城倉:最終的には「川口さんは別のことをやってください」と言われるのが目標ですかね(笑)
川口:そうですね(笑)
編集部:組織づくりや技術選定など、OKANにおける川口さんの役割や大切にされていることなどたくさんお話を伺えたと思います。最後に、読者にメッセージをお願いします。
川口:OKANは、主体的に物事に取り組みたい方にはいい環境であると自負しています。組織的、技術的どちらのスキルも合わせて高めていけると思いますので、興味を持っていただけましたら求人票を覗いてみてください。
株式会社OKANの求人情報
対談にご参加いただける方を募集しています!
「Tech × Career Talk」では、数多くの企業でCTOや技術顧問を歴任されてきた城倉和孝氏をナビゲーターに、これまでのキャリアや現在エンジニア組織で取り組んでいることなどをお話しいただけるエンジニアリング組織のリーダーの方を募集中です。
参加を希望される方は、こちらのフォームより必要事項をご記入ください。
皆さまからのご応募をお待ちしております!