株式会社イノベーション 人事責任者の山宮です。 早速ですが、GW明け第一弾のストーリーを公開します!
イノベーション(以下、INV)のエンジニアにはどんなメンバーがいるのか?エンジニア組織のカルチャーとは?そんな疑問を解き明かすべく、3名のエンジニアメンバーにインタビューしました!
今回お話を伺ったのは、開発責任者である中村、サーバーサイドエンジニアの清家、そしてSREチームのリーダーの所賀。3名が共通して抱いている「INVで働く魅力」や、「各チームの技術的な取り組み」について教えてもらいました。
株式会社イノベーション 開発責任者 中村 瑞基 SREチームリーダー 所賀 伸矢 リードエンジニア 清家 章平 INVのプロダクト開発、エンジニア組織を牽引する3名 ーー はじめに、みなさんの自己紹介をお願いします
所賀:私は以前 SIer として開発や運用業務を担当しておりました、その時にINVからお誘いを受けて2016年に中途で入社しました。現在は、SREチームに所属しチームリーダーとしてINVグループ全体のでインフラの運用・保守を担当しています。
清家:私も Sler に新卒で入社し、10年務めた後に退職。当時、フリーランスになろうかと思っていたのですが、ちょうど株式会社コクリポ(※1)の立ち上げに誘われ、共同創業者という形でジョインしました。その後2019年にコクリポはイノベーションの子会社になり私はそのまま籍を移しました。現在はコクリポ事業部に所属し、ウェビナー専用のツール「コクリポ」の開発を全般的に担っています。
中村:僕は2013年にINVに入社し、開発責任者を務めています。それ以前は受託開発会社のエンジニアで、実はINVは重要顧客でした。INVからのお誘いをいただいたタイミングが、ちょうどエンジニア組織の内製化に動き出したタイミングでした。私はエンジニア第一号としてジョインさせていただき、INVのエンジニア組織の変遷に関わってきました。今はIXができたこともあって(※2)INVの第二創業期として、より良いサービスを提供するための組織を創りに注力しています。
(※1) 現 株式会社Innovation X Solutions (※2) 2021年4月、INVはグループが展開するSaaS事業がIXに集約する方針を固め、子会社である株式会社コクリポの社名を変更して、新たに「株式会社Innovation X Solutions(以下、IX)」を設立しました。
圧倒的なユーザーファーストでのプロダクト開発が、エンジニア組織のカルチャーの根底である ーー INVのエンジニアのみなさんが大切にしているカルチャーはどのようなものなのでしょうか?
中村:おそらく、僕も含めてこの3名に共通しているのは、何かトラブルが発生したときにトラブルの状況をすばやく把握し、適切に対処することを非常に大切にしています。
特に清家さんが所属しているコクリポ事業部に関しては、まだエンジニアも少ないので当たり前といえば当たり前のことではあるのですが、何かトラブルが起きた時のレスポンス・対応の早さは、社内から感謝の声も出るほどです。トラブルが発生したときに、周囲から求められている対応力以上を発揮されています。
ーー 自社開発の組織だからこそ、ユーザーファーストの意識が高いのでしょうか?
中村:そうかもしれません。受託開発やSIerだとなかなか「ユーザーの声」が聞けなかったりしますからね。弊社の場合、ユーザーと直接関わるのはCSやバックオフィスのメンバーですが、僕たちエンジニアは「お客様の声」としてユーザーからプロダクトに対してフィードバックをいただいています。なので、実際にサービスを利用してくださっているユーザーの存在はとても近くに感じています。
所賀:それこそ私は前職がSIerで、確かにエンドユーザーが見えず、正直サービスへの愛着はなかなか湧きづらい状況でした。現在は、自社開発なので当然プロダクトは定期的にメンテナンスしなければいけませんが、その分関わる開発者の人数も多くとても楽しいですね。
清家:SIerの構造にもよりますが、二次請け三次請けともなってくると、ユーザーというより元請けに対して仕事をしている感じですからね。自社開発だとそこは大きく違います。コクリポがINVの子会社になる前は、それこそエンジニアである私がCSやメール対応まで担ったりしていました。大変は大変ですが、感謝されることも多いですし、お客様との距離の近さを感じられるのは開発のモチベーションになります。
中村:私は前職の受託開発の会社でINVの「ITトレンド」などのサービス開発に携わっていましたが、やはり社内にいないとわからないことは多いですし、受託開発がどんなに頑張っても超えられない限界値というものがあります。自分たちで作る自分たちのプロダクトに対して、自分の発言で戦略が決まるかもしれない。そんな場面に関われるのは、やはり自社開発のエンジニアならではの魅力です。
インフラのコード化やAWS、Docker……新しい技術の採用や継続的なリファクタリングも実施 ーー SREチームリーダーの所賀さんにお伺いします。SREチームの体制や技術的な取り組みについて教えてください
所賀:まず体制についてですが、メンバーは私を含めた4名です。現在はマンパワー不足で運用・保守がメインになっていますが、SREの本来のミッションはサービスの信頼性を上げること。サービスの安定稼働を前提としつつ、アプリケーションの開発・実行・運用の基盤となるアーキテクチャを全体最適の視点で改善していきたいと考えています。
次に技術的な取り組みについてです。遅ればせながらではあるのですが、SREが取り組んでいるのはInfrastructure as Code(IaC)、いわゆるインフラのコード化です。これまでのサービスはインフラを人力で作っていて、状態は常にAWSのマネージメントコンソールを見なければいけませんでした。今はかなり便利なアプリも登場しているので、積極的にコード化を進めています。
そのほか新しい技術を活用できる場面があれば、エンジニアである自分たちから経営や事業部の意思決定の場で提案をして積極的に導入を進めています。その中でDockerは、割と早期なタイミングで採用しておりWebサービスをDocker化し、AWSを使って運用しています。直近では、SREとして清家さんがリードするコクリポ事業部をフォローアップしきれていない部分がありますので、エンジニアが開発に専念できるよう積極的に関わっていきたいと考えています。
新しい技術を取り入れることに対する責任は大前提としてありつつも、エンジニア自身にキャッチアップする意欲があるのであれば、いろいろなことを提案して取り組んでほしいという考えがINVにはあります。
著名な技術スペシャリストが参画中!エンジニアの技術力向上と競合サービスとの差別化を図る ーー 次に、リードエンジニアの清家さんにお伺いします。コクリポ事業部は現在どんなことに取り組んでいますか?
清家:コクリポは今リニューアルを進めているところです。開発をスタートしたのはもう5年前のことで、その当時でもすでにやや時代遅れなアーキテクチャを採用していました。それを今ようやくモダンな方向に変えつつある状態ですね。技術的にはReactを採用。TypeScriptで綺麗に作り直した上で、バックエンドはAPI化しようとしています。
また、コクリポの競合はスピード感を持って積極的に新機能を実装しているサービスが多いです。今後、そのようなサービスとどう差別化を図るのかが大きな課題です。この状況下において、現在は開発のスピードアップを求めて、コクリポの規模にちょうどいい形でのマイクロサービス化を検討しています。本当に正しい選択かどうかを検証する段階ではありますが、変化が激しい環境の中にいるので、スピードは意識して進めていきたいですね。
ーー コクリポはWebRTCを利用したプロダクトだと思いますが、このあたりの視点での取り組みは何かありますか?
清家:そうですね。これまで配信部分の技術は全て私が見ていたのですが、私自身はWebRTCの専門家というわけではありません。どうしても自分だけでは限界を感じていたのですが、外部のスペシャリストの方に協力いただくことができるようになったので、より一層の品質向上に努めていきたいです。
中村:INVではほかのプロダクト開発でも著名な技術スペシャリストの方に技術的な支援をいただいているんですよ。具体的に「List Finder」というサービスでは、Go言語のスペシャリストの方に直接コードを見てもらっています。やはり技術レベルが高い方と触れ合えるのは、エンジニアのスキルレベルを上げていくという点ではかなり良い取り組みですね。技術アドバイザーなど業務委託や副業的に動いてくれるようなエンジニアの採用は、今後も全社的に進めていきたいと考えています。
いまできることではなく、好奇心を持って新しいことに挑戦していきたいエンジニアは大歓迎!共に、第二創業期のエンジニア組織を牽引してほしい ーー 最後に、読者の方へのメッセージをお願いします!
所賀:SREチームは割とサービスの改修なんかも業務として行っているので、「アプリケーションもインフラも両方スキルを習得して、最終的にフルスタックになりたい」という希望のある方はかなり活躍できる現場かなと。勉強会を通してチームでサポートするのでインフラ未経験でも構いません。SREは業務範囲が多岐にわたるので、勉強したり情報をキャッチアップしたりする意欲のあるエンジニアがマッチすると思います!
清家:どんな人材がINVに向いているかという視点で言うと、抽象的ですが好奇心があり、変化を楽しめる人かなと思います。あとは、コクリポ事業部の目線で言うと自分でウェビナーの発信者側に回りたいエンジニアも大歓迎です(笑)。
やはりサービスとしては、エンジニアが自分で本当に使いたいと思うプロダクトを作るのが一番強いのですが、どうしても今は参加者の目線が強くなっています。「配信をする人が自分でプロダクトを作る」。これができる方は、コクリポの開発エンジニアとして一気にレベルアップできると思います。コクリポのサービスはScalaで開発していますが、ある程度Javaの経験があればScala未経験の方も歓迎です!