がぶちゃんの日記

札幌からフルリモートCTO

【2024年版】モニクルは何をしている会社なのか

2023年版はこちら

gabu.hatenablog.com

ソフトウェアエンジニア(以下、エンジニア)の方に読んでいただくことを想定しているので、後半は開発プロセス、チーム、プロダクトや技術スタックの話がメインになります。

何をやっているのか

モニクルは、「金融の力で、安心を届ける。」をミッションに掲げ、金融領域で複数の自社サービスを開発・運営しています。

以下に代表的なサービスを紹介します。

マネイロ

マネイロは、お金に関する学び・診断・相談の体験を通じて、自分に合った資産運用がはじめられるサービスです。

monicle.co.jp

ほけんのコスパ

ほけんのコスパは、必要な保障だけを納得の保険料で、自分に合った保険を選ぶことができる、オンライン保険比較・見積サービスです。

hokencospa.jp

LIMO

LIMO(リーモ)は、くらしに根ざした「お金」の情報をもっと身近に、そしてもっと分かりやすく理解してもらうための経済メディアです。

monicle.co.jp

金融DX

自社サービスの開発や運用を通して培ってきた技術やノウハウの社外への提供も進めており、パートナー企業様と協業させていただくプロジェクトもあります。

plus.monicle.co.jp

どんな会社なのか

モニクルは各サービスの実務を行う子会社2社と、経営・プロダクト開発・デザイン・マーケティングを行う親会社のグループ体制になっています。 僕らエンジニアは親会社のモニクルに所属しながら、各サービスの開発・運用を行っています。

モニクルグループ体制図

  • モニクル
    • ITベンチャーのイメージ
    • 本社にいるのはバックオフィス(管理部)のメンバーのみ
    • クリエイティブ職(エンジニア、デザイナー、マーケティング、PMなど)はフルリモート
  • モニクルフィナンシャル
    • 営業会社のイメージ
    • 東京と大阪に営業拠点がある
    • 出社とリモートのハイブリッド
    • 証券・銀行・保険業界の出身者がメイン
  • モニクルリサーチ
    • メディア会社のイメージ
    • フルリモート
    • 企画・編集・ライターさんが所属

どんな働き方なのか(ワークスタイル)

ここからはモニクル社のエンジニアに特化した話になります。

時間

クリエイティブ職(エンジニア、デザイナー、マーケティング、PMなど)は、専門業務型裁量労働制なので文字どおり自分の裁量で勤務時間を決められます。エンジニアは All Hands(週1の全社ミーティング)とスクラムイベント以外のミーティングがほぼないので、それらの時間だけ同期的に合わせられたら、業務の開始時間・休憩時間・終業時間は完全に自由となっています。

とあるエンジニアのGoogleカレンダーの1週間の予定です。見てくださいこの美しさ。CTOとしてエンジニアのみんなのこのミーティングの少なさを限界まで守っていこうとめちゃくちゃ意識しています。

とあるエンジニアの1週間

ちなみに、子育て中のエンジニアも多く、彼らの夕方以降のGoogleカレンダーはこんな感じになっています。

家事 & 育児

場所

メンバーは地理的にも分散しています。基本的にオフィスへの出社がないのでどこに住んでもOKです。

  • CTO: 札幌
  • エンジニア: 新潟、岩手、福井、東京、神奈川、高知、沖縄
  • その他の職種も、長野、札幌、アメリカ(日本人です)などにいます

ちなみに CTO 以外の経営陣は関東に住んではいるものの、滅多なことがない限り本社に出社しないため、本社にはバックオフィス(管理部)のメンバーしかいません。管理部メンバーに寂しくないか聞いてみたところ「本社をまるごと占拠しているのでとても快適」だそうです🤣

ビデオチャット

開発チームも含めモニクルメンバーは Gather というバーチャルオフィスに常駐しています。毎朝「おはようございまーす」と各々好きな時間にパラパラと Gather に論理出社(バーチャル出社)するイメージです。

ja.gather.town

Gather 内ではチームごとに島があり、もちろん自席で作業することもできるのですが、各チームに用意されたコタツに集まって雑談したり、スクラムイベントをやったり、ペアプロ・モブプロをやったりと、ほとんどの時間をこのコタツで過ごしていることが多いように思います。

ちなみに、Gather を使っている理由は

  • 以前から気に入って使っていた Around というビデオチャットツールが有償化されることに
  • どうせお金を払うなら Gather でもいいでない?
  • でも Gather って重くない?
  • 数年ぶりに Gather を触ってみる
  • あれ?全然重くない!これならありじゃね?!

ということで、以前から気になっていた Gather を試してみたら意外と重くなくて「これなら常駐しててもそこまでストレスも無さそうだね」と引っ越しを決めました。アバターもかわいいし、自席をデコるのも楽しいし、すぐにお気に入りのバーチャルオフィスになりました。

いろんなコタツがあります

かわいいコタツ(もはやコタツではないけど)

管理部門が一番デコってるかも

ただ見た目が良いだけではなくて、画面共有中に最近はペンが使えるようになったり、頻繁にアップデートされているのも嬉しい点です。

どんな働き方なのか(開発)

開発プロセス

基本的にスクラムを1週間(チームによっては2週間)スプリントで回しています。

  • 月: スプリントプランニング
    • バックログをチームみんなで眺めながらざっくり今週できそうなものをピックアップしてプランニングポーカーをします。
  • 火〜木: 開発
  • 金: ふりかえり

上記は一例で、ポーカーをしないチームもありますし、水曜はじまりにしているチームがあったりと、各チームのスクラムマスターと開発メンバーで話し合ってそれぞれ最適化しています。

開発スタイルは、とても一般的な GitHub を使った PR ベースでやっています。お互いに PR をレビューをして、大きめの機能追加や変更であれば PM にもプレビュー環境で動作確認してもらい(逆に小さい変更であれば PM のチェックなしにガンガンマージしています)、main ブランチに PR がマージされたら自動的に本番環境にデプロイされます。自動テストをしっかり書く文化があるので「基本的には CI が通っていれば本番デプロイしても問題なし」という判断で本番環境への自動デプロイを創業期から今も継続しています。

開発チームと担当プロダクト

2024年9月現在、プロダクトチームが6チーム + 横断SREが1チームの合計7チーム体制になっています。

マネイロチーム

サービスのところでも紹介した「マネイロ」の開発チームです。主には Next.js 製のマネイロのWebサイト上のページやツールを充実させる開発だったり、顧客獲得のための施策のPDCAマーケティング部と協力して行うことが多いです。

plus.monicle.co.jp

コスパチーム

サービスのところでも紹介した「ほけんのコスパ」の開発チームです。こちらも Next.js 製でマーケティング部と協力して機能追加やサイト改善を行うことが多いです。

ADMINチーム

モニクルフィナンシャルのファイナンシャルアドバイザーが利用する、CRM(顧客管理)とSFA(営業支援)の機能を合わせもった社内システムの開発チームです。

こちらのインタビューにもプロダクトの話が少し出てきます。

plus.monicle.co.jp

ZAIMUチーム

モニクルフィナンシャルの金融商品の仲介に関連する収入の自動計算と仕訳作業を自動化する社内システムの開発チームです。

こちらのインタビューにもプロダクトの話が少し出てきます。

plus.monicle.co.jp

plus.monicle.co.jp

金融DXチーム

サービスのところでも紹介したパートナー企業様と共同開発を行っているチームです。

こちらの記事にもプロダクトの話が少し出てきます。

plus.monicle.co.jp

MRチーム

MR は Monicle Research(小会社のモニクルリサーチ)の略です。モニクルリサーチが運営するメディアやサービスに関する開発を行うチームです。

最近では Cloudflare を使い倒してこんな新規サービスを作りました。

speakerdeck.com

SREチーム

横断SREとして各プロダクトチームのSRE活動を支援するチームです。

speakerdeck.com

これから何をやっていくのか

人・チーム

これまでの経験から1チーム3〜4人ぐらいが多すぎず少なすぎず(よくピザ2枚=8人と言われますが個人的には8人は多すぎる気がしています)最も効率的に素早く開発できる規模なんじゃないかと思っているので、今後もこの1チームのサイズをキープしながらスケールしていく予定です。

1年半前は「具体的には4人x2チームの8人から、ちょうど2倍の4人x4チームの16人体制にするのが当面の目標です。」と書いていましたが、1年半後の今、結果的には「3-4人の6チーム + SREチーム = 20人」ぐらいの体制になっています。

プロダクト

既存プロダクトを引き続き成長させていくのはもちろんのこと、特にMRチームでは既存事業の成長のための新規開発のアイデアが沢山あります。これまでどおり仮説検証を高速に回すこと、MVPから小さくはじめて大きく育てる意識でこれからもどんどん新しいチャレンジをしていきます。

技術

  • TypeScript で統一
    • 最も歴史のある Rails 製の社内システム以外はフロントエンドもバックエンドも TypeScript で書いてます。
    • フロントエンドとバックエンドでチームを分けず、全員がフルスタックでフルサイクルでプロダクトエンジニアな僕らにはこの選択が最適だと感じていて、引き続き TypeScript で統一していく予定です。
    • とはいえ、ちょっとした社内ツールや SRE 方面では Go を使うこともあります。
  • Google Cloud と Cloudflare を使い分ける
    • プロダクトの要件、特性やフェーズに応じて Google Cloud と Cloudflare を使い分けています。
    • 例えば、SoR(System of records)なシステムは Google Cloud を、SoE(System of Engagement)なシステムは Cloudflare を採用するなどです。
    • または、新規プロジェクトで MVP を意識したものは積極的に Cloudflare を採用し、開発スピードや少人数でのサービス立ち上げを狙うなどを考えています。
  • Deno を試す
    • Node.js を運用していて明確な問題がある訳ではないのですが、自分たちの未来への投資も兼ねて新規プロジェクトの1つで Deno を採用する予定です。
    • 今後エンジニアブログでも Deno の知見を共有していきたいと思っています。

CTO としては

会社や事業の成長に比例して、それを支えるエンジニアリングチームもスケールしていきます。CTO としてはこの事業とエンジニアリングチームのバランスを保つことがとても重要だと考えていて、日々いろいろと試行錯誤しています。そして何より、みんなの働きやすさ!そのためにやれることは全部やっていくぞ。という気持ちで毎日過ごしています。

おわりに

会社や事業については会社紹介資料の方が詳しく書いてありますので興味を持っていただけた方は是非こちらもご覧ください。

speakerdeck.com

マネイロも普通に使ってみてください!まずは3分診断をどうぞ!

moneiro.jp

それでは!