「挑戦・ワクワク・自分事化」が大好きなエンジニア求ム! テックフード・シェアダイン開発チーム座談会
今回はシェアダインのサービスを支える開発チームの対談記事をお届けします。シェアダインの開発環境やチームの雰囲気をお届けすることで、「ちょっとお話を聞いてみたいな」と思ってもらえたら幸いです。
参加メンバー
シェアダインのシステムリプレイスは「逆張り戦略」だった
Q:シェアダインの製品開発は、どのように進んでいくのでしょうか?
和田:基本的には、代表の飯田が「こんなサービスを実装したい」と提案してきます。それに対し、開発チームや事業部などが実装可能か議論を重ねて、いけそうだと思ったら開発に着手します。だいたい2〜3週間でリリースをして、そこからはトライ&エラーを繰り返してブラッシュアップしていきます。
花本:和田から各開発メンバーにタスクが振られ、開発に着手します。要件から仕様をある程度決めますが、実装しながら仕様を決めていくことも多いです。
Q:シェアダインでは短中期的な事業展開を成功させるために2021年、バックエンド、フロントエンド、インフラの大規模なシステムリプレイスを行いました。システムリプレイスを行った背景をあらためて教えてください。
和田:サービス開発のスピードアップや顧客満足度の向上のためというのはもちろんなんですけど、エンジニアが挑戦できる環境を整えたかったという思いもあるんです。
シード・アーリーステージのスタートアップではRubyを使った環境で開発をすることが多いんです。アーリーステージではプロダクトに投資できる資金が限られること、RubyやPHPを書けるエンジニアは多いため、コストを抑えながら開発を進められるためです。
ただ、RubyやPHPが書ける優秀なエンジニアをどうやってスクリーニングするのかが課題になっていました。そこまでの採用コストはかけたくないなと。なので、逆張り戦略を狙ったんです。
Q:逆張り戦略?
和田:システムリプレイスにあたって取り入れた主な言語がGoです。メルカリのようなユニコーン企業が2〜3年前から使っている言語で、スタートアップでもフェーズがある程度進んだ企業が使う言語です。
シードラウンドのシェアダインがGoを使って開発をすると宣言することで、「この規模の会社でもGoが使えるんだ」とシェアダインに興味を持ってくれるエンジニアがいれば良いなと思ったんです。たしかに投資面での費用はかかりますが、挑戦意欲もあるエンジニアが採用できるなら費用対効果は高いと思いましたね。
Q:飯田は技術面の投資に関して理解があったんですね?
和田:実は、私がシェアダインに入った当初はプロダクトが不安定な状態になることもありました。それでも依頼者、シェフは増え続けサービスも使われていく。サービス自体の魅力に惹かれて私も入社した経緯があるので、サービスの魅力は世間から見ても相当なものなんだと。だから、プロダクトをきちんと整えればもっと売上を上げることができるとは思いましたね。
ちょうどこの頃、あるベンチャー企業のサービスのプロダクトをめぐって炎上騒ぎが起きていたんです。飯田は感性が鋭いので、すぐに技術面への投資も必要だと判断してシステムリプレイスに舵を切ってくれました。
開発チームの特徴は「裁量の大きさ」「定期的な飲み会」
Q:シェアダインの開発チームの特徴を挙げてもらえますか?
花本:任されている裁量の幅が大きいことですね。開発に関してはチームに任せてもらっているので、開発するプロダクトに新しい技術が必要だと思ったら和田に提案することもあります。
役職に関係なく意見が言えるので3人で計画して、その計画をビズチームに費用や工程などを相談していくので比較的自由な感じで仕事をしています。
和田:最近はコロナ禍なので減らしていますが、エンジニア同士の飲み会を定期的に開いています。普段の業務でどんなことを考えて仕事しているのか、何を大切にしながら仕事をしているのか、そんなことをざっくばらんに話しています。
シェアダインは基本的にフルリモートで仕事しているので、こうしたコミュニケーションを図るのは大切だと思っています。
坪井:私は名古屋に住んでいるので、なかなか参加できませんが(笑)。でも、東京に行く機会があるときは開発チームのメンバーに会ってコミュニケーションを積極的に取っています。
Q:シェアダインの開発で苦労したことはありましたか?
花本:シェフがプラン毎に提供時間を細かく設定できる機能を実装したときは大変でしたね。既存プランのデータにカラムを入れ込んで新しいデータを投入するので、考えながらの作業でした。3ヶ月ほどかけて実装をしていきました。
仕事をする上で心がけているのは「コード量はなるべく少なく、でも効果は最大限」です。ただやみくもにコードを書くと複雑になってしまうので、システムの負荷軽減のためにも、少ないコードで効果を出せるかが大切だと思います。
坪井:実装に苦労しそうな機能の提案が降ってきたら、苦労しないで同じように見える機能を提案するようにしています。同じ機能を提供するのに余計な労力をかけないほうがリソース的にもいいと思います。
和田:飯田からは「もっと頑張ってください」と言われますが(笑)、開発チームとしてはプロダクトの安全性や使いやすさを最優先にしつつ、「頑張らないように頑張る」を大方針に掲げています。
こんなエンジニアに来てほしい!求める人物像は…
Q:シェアダインの開発チームに求める人材像を教えてください。
和田:端的に言うと、開発環境のセットアップを自力でやった上で、プルリクエストを送ってくださる方です。私たちは、自分たちで作ったレガシーコードを日々新しくする環境に身を置いています。日々新しい環境を追い求められるエンジニアと一緒に働きたいという思いは常に持っています。
あとは、やりたいこととやりたくないことをはっきり言ってくれる人も、仕事がしやすいですね。その上で挑戦する意欲がある人と、まずはカジュアル面談からお話ができればと思います。
花本:3つあります。1つ目は新しい技術や知識にワクワクできる人。技術は日進月歩で、入れ替わりの激しい世界です。新しい技術を貪欲に取り入れて、その技術を使える環境が楽しめる人だといいですね。
2つ目はスピード感がある人。シェアダインは意思決定のスピードも早いので実装までのスピード感もかなり早いです。テンポ良くリズミカルに開発するのが気持ちいいと感じている人は、シェアダインの開発チームに入れば楽しく仕事ができると思います。
3つ目は開発チーム以外のメンバーにも敬意を持つことができる人です。テック企業の中には開発チームが一番偉いという意識を持つ組織もあります。開発部門も他の部署に頼って仕事をしているのに、その組織風土はおかしいと思うんです。シェアダインはメンバー同士が敬意を持ってコミュニケーションを取っています。これはある意味シェアダインの風土だと思いますね。
坪井:自分の役割を超えて提案や発信ができる人ですね。それぞれに業務の役割はありますが、「垣根を越えてサービスをいかに良くするか?」を考えてくれる人と一緒に仕事をしたいです。
例えばエンジニアなら、自分が好きな技術や新しい技術を使ってみたいと思ったとき、提案をすれば検討をしてくれる姿勢が常にあります。実際に提案したものが採用され、実際にプロダクトで導入されたという事例もたくさんあります。
シェアダインの開発チームだけでなく、ほかの部署もメンバーの提案を否定する雰囲気はありません。メンバーの提案に対し、できるかどうかをチーム一丸で考えてくれます。
Q:最後に、CTOの立場として今後の展望を教えてください。
和田:Flutterを使ったモバイルアプリの実装がひとつの目標になります。データもかなり集まってきたので、より賢くて使いやすい全文検索機能も実装も実現していきたいです。
いまはGoやScalaを使って開発をしていますが、私の中でもいろいろとやりたいことはあります。もちろん時間とリソースは限られますが、シェアダインをもっと使いやすく、多くのユーザーに満足してもらえるプロダクトを開発していきます。
私がどんな開発をしていくのかに興味がある方もぜひ、カジュアル面談で詳細をお話ができればと思っています。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?