全員が「主役」となり開発を進める?リードエンジニアに聞くマッチングアプリ開発の面白さとは?
こんにちは!株式会社with/人事担当の松澤です。
今回は、当社のサーバーサイドエンジニアチームのリーダーである大橋へインタビューをしましたので、その記事を発信いたします。
是非、ご覧ください!
当社は、マッチングアプリ『with(ウィズ)』の開発・運営を行っています。これまで、数あるマッチングアプリと差別化を図るため、ユーザー体験をとことん突き詰めた開発に注力してきました。
その中で、エンジニアたちは実際にどのような動き方をしているのでしょうか。
今回はサーバーサイドチームのリードエンジニアを務めている大橋さんにお話を伺い、業務内容や働き方の特徴、withならではの魅力などについて教えてもらいました。
サービス立ち上げ当初からサーバーサイドチームにジョイン
―最初に、大橋さんのキャリアについて簡単に教えてください。
大橋:私は新卒で受託系の企業に入社してエンジニアとして経験を積み、その後はwithの元親会社である株式会社イグニスに入社しました。当時イグニスのCTOとは大学生時代の知人で、エンジニアリングについていろいろと語り合った経験もあった縁から参画を決めました。
イグニスでは売上管理アプリやソーシャルゲーム、簡単なチャットアプリ開発などに携わった経験があります。
withにジョインしたのは、人事異動の関係です。時期的にはwithのWeb・アプリ版両方のリリースが完了したタイミングですね。サーバーサイドエンジニアのメイン担当が別のプロジェクトに移ることになったので、引き継ぎとして私がジョインしました。当時、サーバーサイドエンジニアは3~4人ほどで開発をしていました。
―withではどのような業務に携わっていますか?
大橋:当初は検索エンジンのアルゴリズム改善のほか、ちょっとした機能改修なども手掛けていました。最近はそのほかにインフラ構築やセキュリティ対策、API開発なども担当しています。特に今は上場を目指している段階なので、セキュリティ基準を高めるのがメインミッションです。
以上は開発面の業務ですが、組織のフェーズが変わるにつれて、徐々に開発フローそのものや開発スタイルの改善なども進めていくようになりました。
実質的にはチームのリーダーを務めています。採用活動やメンバーのメンター、開発スケジュールの策定なども役割の範疇です。
エンジニアフレンドリーな開発環境と社風が特徴
―実際の開発はどのように進めているのでしょうか?
大橋:機能ごとに5名前後の小さなチームを組成し、開発を進めています。
このチームは、デザイナー・プランナー・サーバーサイドエンジニア・モバイルエンジニアで構成されます。
これはイグニス時代から引き継いだカルチャーでもあり、開発面ではさまざまなメリットがあります。例えば素早い意思決定ができるのと同時にPDCAもスピーディに回せる点、メンバーのコミット力を高められる点などです。
当社のプランナーやデザイナーは、エンジニアへの理解が深くリスペクトしながら動いてくれるので、異なる職種が集まるチームであっても、開発がしやすい環境だとも感じます。プランナーが考えた仕様がトップダウンでそのまま下りてくるようなこともまずありません。デザイナーも含めて実装上の難易度やプラットフォームのセオリーなどもしっかり吟味し、どのような仕様が最適なのかをディスカッションしながら開発を進められます。
―技術スタックなどについても簡単に教えてください。
大橋:言語はRailsがベースです。モニタリングや言語チェックなどについては、モダンなツールを導入している傾向です。デプロイについてもGitHub Actionsで自動化されています。
各種ツールについては、エンジニアの裁量で選定・稟議に出し、導入を決定していく文化です。
―働き方についてはいかがですか?
大橋:現在はフルリモートで、月に1回、データの振り返りなどのために出社を推奨しています。基本的にワークライフバランスが非常に取りやすいのが当社の特徴で、残業はほとんどありません(月約5時間/1日約15分ほど)。
開発スケジュール自体をエンジニア主導で優先順位を付けながら組めるので、「スケジュールに追われて疲弊した……」といった状況は皆無です。実際にチームメンバーからも、「休憩時間を調整しやすい」「有休が取りやすい」などポジティブな声が多いです。
評価制度もエンジニア視点で設計されていて、技術スキルが評価基準となっています。そのほかはマネジメントスキル、コミュニケーションスキルなどが評価軸です。
サーバーサイドエンジニアとして幅広い領域を手掛けられる
―すでにいろいろな魅力が伺えていますが、改めてエンジニアがwithで働くメリットや魅力について教えてください。
大橋:サーバーサイドエンジニアに関しては、かなり職域が広いのがメリットです。私の業務内容でもご説明したようなアルゴリズム開発やインフラ構築、セキュリティ対策、API開発といった内容のほか、例えばデータパイプラインの役割なんかもサーバーサイドエンジニアの職域です。データアナリストがデータを加工しやすいように、AWSのAuroraからBigQueryにデータを転送する役割ですね。
逆にいえばサーバーサイドの役割が細分化されすぎると扱える技術が偏って、非常にもったいない状態になってしまうんです。実際に、サーバーサイドエンジニアであるにもかかわらず「全くSQLが書けない」「パフォーマンス・チューニングをやったことがない」「インフラ構築が未経験でAWSに触れない」という方はよくいらっしゃいます。
―では、「マッチングアプリ」を開発する切り口での面白さについてはいかがですか?
大橋:データアナリストと連携しながらアルゴリズムを調整していく中で、どんなユーザーのどんな要素がマッチングに効果的なのかがフィードバックされるのは、開発としてかなり面白い内容だと思います。
また、アプリ内の投稿監視もマッチングアプリならではの開発ですね。例えばwithでは、ユーザー同士がマッチングしてチャットをする際、最初の一言目で自分のLINEのIDを送信するのはNGです。違反行為を機械学習で検出したり、ユーザーの行動や発言データを基に悪徳業者を判定する仕組みを作っています。
ユーザーの声を起点にプロダクト開発をしたい人はマッチする
―大橋さんご自身の今後の目標について教えてください。
大橋:まずはwithの上場を無事に成し遂げることです。当社が上場できた場合、マッチングアプリ業界の企業で単独上場するのは当社が初めてになります。(競合他社様は、大手企業のグループです)
つまり、本当の意味で、マッチングアプリが日本社会で市民権を獲得したと言えるのではないかと考えています。そういった意味でも、上場に向けた動きを一つひとつ確実にこなしていきたいです。
この動きに伴ってメンバーの人数をどんどん増やしていきたいので、体制面の整備も必要ですね。人数が急増したとしても、これまで当社が培ってきた開発組織やメンバー間の雰囲気が損なわれないように配慮しつつ、新しいメンバーが活躍できる場を作っていければと思います。
―ありがとうございます。最後に、withにマッチするエンジニア像について教えてください!
大橋:プランナーやデザイナーと一緒に議論を重ねながらプロダクト開発をしたい方に来ていただきたいですね。
また、自分の作ったものがユーザーにどんな風に使われて、どんな結果が得られているのかに興味があるエンジニアもマッチしていると思います。
例えば当社はデザイン思考の開発を心がけているので、カップルになったり結婚したりされたユーザーの方々に定期的にインタビューを実施しています。インタビューの現場にはインタビュワー合意のうえ、Zoomなどを通してリアルタイムで参加でき、ユーザーがプロダクトを使うときどんな気持ちでいたのか、どんな体験をしたのかがチーム全員に共有されます。エンジニア視点で気になる内容があれば、その場でヒアリングしてもらうことも可能です。
こうしたプロダクトの企画段階から関わる開発が好きな人は、ぜひ一度お話を聞かせてください。