MOSH Tech Radio #3「機能開発の進め方と技術課題の解消」
はじめに
今回の記事は、「MOSH Tech Radio」#3のエピソードをもとに執筆しました。機能開発を推進するエクスプレスチーム(以下:EXチーム)のりょうさんと前田さんをゲストに迎え、「機能開発の進め方と技術課題の解消」をテーマに語りました。EXチームのミッション、開発している新機能、そして、開発の裏側にある試行錯誤や苦労話まで…開発現場のリアルな声を聞くことができました。その一部始終を詳しく紹介していきます。
参加メンバー
MC:
Ryo Adachi (X)SIerとしてエンジニアのキャリアをスタート後、コネヒト株式会社に入社。バックエンド/フロントエンド開発に従事しながら、リードエンジニアとして組織の効率改善やプロセスの見直しにも尽力。2021年MOSHにJOIN。
スピーカー:
Ziyang Liao / 廖 子揚 (X)大学院で機械学習、自然言語処理を深掘りした後、freee株式会社に新卒で参画。人事労務ソフト開発、新プロダクト立ち上げ、SRE業務に従事し、技術面での幅広い経験を積む。2024年、MOSHにエンジニアとしてジョイン。
前田 拓矢 (github)SES企業でWebエンジニアのキャリアをスタートし、様々なクライアントのもとWeb広告や不動産など幅広い分野のWeb・iOSアプリの開発に従事。スクラムでのチーム開発をメインにテックリードを担当。2023年7月業務委託でMOSHにJOINし、2024年6月正式入社。
音源紹介
今回の音源は以下になります。ぜひMOSH Tech Radioも聞いていただけると嬉しいです。
MOSH Tech RadioはMOSHの開発に携わるメンバーがプロダクト開発について自由にトークするラジオです。毎回テーマを1つ決めてMOSHのプロダクト開発の中身や業務での取り組み、技術的観点について発信していきます📻EXチームの紹介
まず、EXチームは、クリエイターが自身のノウハウやスキルをエンドユーザーに届けるためのコンテンツ管理機能の開発に直近は注力しています。"エクスプレス"という名前には、特急列車のように迅速かつ的確にクリエイターのニーズに応えるという想いが込められています。具体的には、段階的にコンテンツを配信できる「ステップ配信機能」や、クリエイターと受講者がリアルタイムでコミュニケーションを取ることができる「コミュニティ機能」の開発に取り組んでいます。チーム構成は、PM1名、BizDev1名、エンジニア4名の計6名で、メンバーはそれぞれの専門分野を生かしつつ、職能を横断的に"越境”しながら活動しています。例えば、エンジニアがクリエイターへのインタビューや商談に同席し、技術的な視点から直接課題をヒアリングすることもあります。これにより、開発初期段階で技術的制約や可能性を共有し、クリエイターと一体となって課題解決に取り組むことが可能になっています。
クリエイターのニーズを追求するプロセス
そのように、エンジニア自身とチーム全体でクリエイターが抱える課題を深く理解し、そのニーズに応じたソリューションを提供することを目指しています。前述のエンジニア自身の商談同席といったアプローチにより、より本質的なニーズを引き出し、実際のプロダクトに落とし込むことを可能にしています。いわゆる"価値探索"というフェーズで社内では呼ばれており、顧客からの要望を表面的に捉えるのではなく、その裏にある本質的なニーズを深掘りするようにしています。具体的には、クリエイターのワークフロー理解、行動データやログデータの分析などを通して、より効果的な改善策を導き出しています。
クリエイターの要望とプロダクトの方向性に対して、PM、エンジニア、Bizdevチーム全員で議論し、特定のクリエイターのみに特化した機能ではなく、なるべく多くのユーザーが利用できる汎用的な機能として落とし込むことを意識しています。
直近の取り組み:コミュニティ機能の実装と新旧コンテンツ管理機能の統合
EXチームでは、直近の取り組みとして、新たに開発されたコミュニティ機能があります。既存のコンテンツ管理機能にコミュニティ機能を追加しました。この機能により、ゲスト同士やクリエイターとゲスト間のチャット、コメント投稿、リアクションなどが可能になりました。
開発当初、元々コンテンツ管理機能が存在していましたが、コミュニティ機能を新たに追加し、統合されました。コミュニティ機能の新規機能開発においては、まず効果検証を重視し、スモールスタートでプロトタイピングもおコアにながら、開発を進めました。最初は少数のクリエイターに限定して適用し、データベースや環境変数などの操作においても運用でカバーすることで、迅速なフィードバックサイクルを実現しました。
旧来のコンテンツ管理機能に、ゲスト同士やクリエイターとゲスト間でチャットができるコミュニティ機能を追加するプロセスの中で一定の効果が確認された後、本格的な実装に移行。設定画面を追加し、すべてのクリエイターがコミュニティ機能を利用できるようにしました。最終的には新旧のシステムを統合し、ハードコード部分のリファクタリングやデータ構造の改善などを行いました。この開発プロセスでは、スピードを重視し、必要に応じて一部の技術的負債を許容しながら開発を進めました。
自社開発とSaaSの活用
特に、開発における初期段階で自社開発か既存のSaaSツールを活用するかの選択を迫られました。迅速なフィードバックサイクルを大切にするため、まずは外部のSaaSツールであるまずはTalk.jsというSaaSツールを導入して検証を行いました。しかし、実際に利用してもらう中で当初想定していなかったニーズが明らかになったため、StreamChatという別のSaaSツールに置き換える判断をしました。SaaSツールを活用することで、短期間での実装が可能となり、ユーザーからの具体的なフィードバックを早期に得ることができました。一方で、UIのカスタマイズや機能改善の柔軟性に課題があることも認識しました。将来的には、自社開発による機能実装も視野に入れ、顧客の真のニーズに応えるプロダクトを提供するための手法を常に検討していきます。
まとめ
今回はEXチームのエンジニアをゲストに迎え、「機能開発の進め方と技術課題の解消」をテーマにお話してもらいました。ユーザーニーズを的確に捉え、迅速な開発と検証を繰り返すことで、プロダクト価値を高めていく姿勢はMOSHが最も大事している、開発プロセス・カルチャーであり、今回その中身が少しではありますが、お伝えできたのではないかと思います。迅速なフィードバックサイクルとクリエイターへ価値を提供する為に、外部ツールも活用しながら、プロダクトの成長に応じて技術選定を柔軟に見直していく姿勢が、MOSHの機能開発における強みとなっているのではないかと思います。今後も、クリエイターにとって価値ある機能を届ける努力を続けていきます!
Discussion