FANTSの開発技術・開発組織を紹介します!

f:id:kuracux:20220118153237p:plain

目次

  • はじめに
  • FANTSとは
  • 技術について
  • 組織について
    • 開発体制
    • エンジニア
  • おわりに

はじめに

FANTS事業部の開発部の部長をしている田中(@sukesan_st)です。2021年9月から開発部門の部長としてチームのマネジメントをしています。去年は料理とサウナにハマった1年でした。

私の経歴を簡単に紹介しますと、以下の通りです(FANTSに関連する出来事を抜粋)

  • 2019年4月にスタメンに入社
  • 2020年3月〜6月にFANTS立ち上げの開発メンバーとして参画
  • 2020年7月からFANTS提供開始
  • 2021年1月よりFANTSの開発チームに異動し、マネージャーに就任
  • 2021年9月よりFANTS事業部に開発部が新設され、部長に就任

本記事ではスタメン第2の事業であるFANTSについて、事業や利用している技術・開発組織の紹介をしたいと思います。

FANTSとは

はじめに、FANTSについて紹介します。 FANTSは「オンラインコミュニティ運営において必要なプラットフォームシステム」と、「全体ディレクションやコミュニティ運営のコンサルティング⽀援」の2軸をワンストップで提供し、コミュニティのエンゲージメントを⾼めていくサービスです。

f:id:kuracux:20220118152404p:plain

プラットフォームとして様々な機能を提供しており、例えばサブスクリプション型の決済システムと会員管理が連動していたり、専用アプリがあったり、タイムラインに様々な内容を投稿できたりします。

先日、運用サロン数が100サロンを突破し、サービスとしても大きく成長しています。

代表的なサロンを紹介すると、以下のサロンがあります。一覧ページもあるので、気になる方は是非チェックしてください。 f:id:kuracux:20220118152438p:plain

技術について

FANTSのアプリケーションはTUNAGのコードを再利用しているため、基本的には弊社の創業事業であるTUNAGとほぼ同じです。ここにFANTS固有の機能として、決済サービスであるStripeを利用したり、ライブ配信サービスであるVimeoを利用しています。 f:id:kuracux:20220118152524p:plain スタメンのエンジニア採用サイトより引用

先日TUNAGで行なったRails6.1へのバージョンアップであったり、インフラ環境をEC2からECSに移行したりといった対応がFANTSにも適応されているため、バックエンドやインフラも少しずつ昨今のトレンドに乗りつつあります。 バージョンアップやコンテナ化への道のりを綴った記事があるので、ぜひ見ていただきたいです。

また、FANTSではオーナー様向けの機能であるダッシュボードが先日リリースされ、その中ではNext.jsを採用しています。フロントエンドの技術スタックとしては新しいものとなっているので、こちらもぜひ記事を見ていただきたいです。

そして、ダッシュボード開発を進めるにあたり、スキーマ駆動開発にて開発を進めました。開発体験としてとても良く、全体の開発効率が感覚的ではありますが上がったように思います。こちらも紹介記事を見ていただければと思います。

弊社の技術記事の紹介ばかりとなってしまいましたが、このように開発を行い、その過程や結果によって得られた知見をアウトプットして共有するのは弊社の良い文化の1つだと思っています。

組織について

2022年1月時点ではエンジニアが私含めて7名在籍しています。スタメンのエンジニアが全員で21名なので全体の3分の1がFANTS事業部に所属している形となります。また、平均年齢が27.3歳と若手のメンバーで開発を進めています。

エンジニア

FANTSの技術構成については上記でお伝えしたとおりですが、開発メンバーの職能については以下の通りとなっています。 f:id:kuracux:20220118152601p:plain

  • フロントエンド: 1人
  • フロントエンド・バックエンド兼任: 3人
  • バックエンド: 3人

上記のように分かれてはいますが、フロントエンド・バックエンドの両方の開発経験もある人が5名いるため、プロジェクト状況に応じて柔軟に開発を進めています。

開発体制

現在FANTSの開発は2週間を1スプリントとしたスクラム体制で開発を進めています。開発プロジェクトが大小さまざまあるので、現時点では以下のようにスクラムイベントを行なっています。

  • 全員参加
    • デイリースクラム(毎朝)
    • スプリントレビュー(2週目の金曜日)
    • スプリントレトロスペクティブ(2週目の金曜日)
  • 2グループに分かれて実施
    • スプリントプランニング(1週目の月曜日)
    • プロダクトバックログリファインメント(2週目の水曜日)

タスク管理ツールはAsanaを、スプリントレトロスペクティブについてはFigJamを使って行なっています。 以下の画像は2021/11/22〜12/3のスプリントのスプリントレトロスペクティブの様子のスクショです。スプリント内で起こった出来事と共に個人やチームの視点で各項目を振り返っています。 f:id:kuracux:20220118152649p:plain

元々は全てのスクラムイベントを2チーム体制で行なっていたのですが、同じ開発チームなのに互いの開発状況が分からなかったり、同じサービスを作っているのに距離が遠く感じることがありました。 そこで、チームとしての一体感の醸成やお互いの情報共有の場が必要だと考え、少しずつですが一緒に行うようにしました。 結果としてはお互いの開発状況はもちろんのこと、何が良かったのか、改善すべき点は何かが全体として認識できるようになったので良かったです。 この辺り、いきなり全てのスクラムイベントを統合するのも手ではありますが、これまでよりも全体的に時間がかかるようになってしまうので、どこに時間を使うべきかと期待する結果を意識して体制を作っています。

おわりに

FANTSの事業や開発技術・開発組織について、手短ではありますが紹介しました。 まだまだ少人数のチームですが、1人1人がFANTSをより良いプロダクトにするために日々開発を進めています。 一人でも多くの人に、感動を届け、幸せを広めるために、FANTSをもっと多くの人に利用されるサービスとなるように引き続き成長させていきます。

最後になりますが、この記事を見てFANTSの事業・技術・組織に興味・関心を持っていただいた方は、ぜひ下記の採用サイトからご連絡ください。一緒に FANTS を作っていきましょう!