見出し画像

マネーフォワード クラウド債務支払の誕生秘話

はじめまして、マネーフォワードで2020年新卒としてエンジニアをしている長島です。自分はこの半年ほど『マネーフォワード クラウド債務支払』(以下『クラウド債務支払』)というクラウド型債務管理サービスの開発を担当しており、ちょうど先日1月19日に1stリリースを迎えることが出来ました。そこで『クラウド債務支払』が誕生した背景やリリースまでの開発の様子を皆さんにも共有できればと思い、noteを書くことにしました。
このプロダクトがどんなメンバーによって作られているのか、また『クラウド債務支払』に懸ける想いが少しでも伝われば嬉しいです。

『クラウド債務支払』が生まれた背景

まずは『クラウド債務支払』というプロダクトが誕生した背景に少し触れたいと思います。実はこれは全くのゼロから生まれた新規サービスというわけではなく、『マネーフォワード クラウド経費』(以下『クラウド経費』)の中に用意されていた「支払依頼」と呼ばれる機能を中心に、企業間の請求書払いに関連する機能群を別サービスとして切り出す形で開発されました。なぜそのような事をしたかと言うと、以前よりユーザーの皆さまから「支払依頼だけ使わせて欲しい」という声が多数あがっていたのと、支払依頼だけでなく、債務管理や支払調書の発行といった機能を備えた本格的な債務管理サービスの提供を望む声もたくさん頂いていたためです。そこで『クラウド経費』の一機能としてではなく、独立した一つのプロダクトとして債務管理サービスを提供していこうという機運が社内で高まっていました。
自分は新卒入社以前より『クラウド経費』の開発チームでインターンをしていたので、前々からこの話は小耳に挟んでおり、「へ〜、何だかすごく大変そうなプロジェクトだけど誰が担当するんだろう?」くらいに思っていました。すると新卒研修真っ最中のとある日、プロダクトオーナーを務める黒田さんから「下期からいきなり重要な任務をお願いしたい」という神妙な雰囲気のDMが来て、『クラウド債務支払』の分離プロジェクトの主担当を任せたいと告げられました。当時はまだこのプロジェクトがどれほど大変で重要なものなのか全く分かっていませんでしたが、とりあえず大きなチャンスが巡ってきたことは間違いなさそうだったので二つ返事で「やります!」と答えたのを覚えています。笑

猛者揃いの開発メンバーと新卒の自分

「債務支払分離プロジェクト」と名付けられた今回の開発プロジェクトは、これまで『クラウド経費』の開発をリードしてきたシニアエンジニアの江口さんが副担当に、『クラウド経費』のフロントエンド開発のリーダーで自分のメンターでもある木村さんが画面の実装を中心としたサポートに、『クラウド経費』の支払依頼機能を作った黒田さんがプロダクトオーナーにといった形で、歴戦のエンジニアにサポートしてもらえることになりました。最初にその話を聞いた時は安心感はあったものの、一方で大型の開発プロジェクトに携わるのは今回が初めてだったので、「このメンバーで新卒の自分にリーダーなんて務まるんだろうか...」という不安もありました。

note用加工済み集合写真

リリース後に関係者で開催したリモート打ち上げ

分離プロジェクトならではの困難

プロジェクトが走り出したものの、既存サービスからのスピンアウトというのは、全くのゼロからプロダクトを作りあげる場合とは異なる、独特の難しさがありました。 特に大変だったのは、『クラウド経費』で支払依頼機能を既にお使いのユーザーの方々が、リリース直後から今までの業務フローを大きく変えずに『クラウド債務支払』に移行できるよう、細心の注意を払う必要があった点です。この「今までの業務フローを大きく変えずに」という点を達成しようと思うと、リリース以来5年かけて育った『クラウド経費』が備える数多くの機能のほとんどを数ヶ月という限られた期間で『クラウド債務支払』に移植する必要があり、移植が必要な機能を洗い出すだけでも骨の折れる作業でした。また実装に入ってからも通常の機能開発のようにゼロベースで設計するわけではなく、必ず最初に『クラウド経費』の現在の仕様と実装を調査するところから始め、どう機能移植すべきかをみんなでディスカッションし、今の仕様を維持できるように慎重に移植するという流れをひたすら繰り返し続けました。
ただこのような手順で開発を進める必要があった関係で、スケジュールの予測は通常の新規開発と比べて格段に難しかったのは否めません。特にリリース間際の2ヶ月ほどは、普段『クラウド経費』の開発を担当しているエンジニアにもヘルプに入ってもらい、クラウド経費開発部全体で総力を結集して開発にあたりました。そして、何とかリリース日を迎えることが出来ました。

リリースの様子

リリース作業は深夜に行われたのですが、今回のリリースでは『クラウド債務支払』と連携する複数のプロダクトも同時にリリースを行う必要があったため、自分達だけでなく他チームのエンジニアも大勢待機してくれていました。リリース作業中は大小様々なハプニングに見舞われたものの、リリースを終えた他サービスのエンジニアも動作確認に協力してくれたり、インフラチームが機転を利かせて本番環境ならではの問題を迅速に解決してくれたおかげもあり、何とか明け方には外部公開に成功しました。とはいえリリース後も何かあった時のために、関係するエンジニア全員でSlackのエラー通知チャンネルとにらめっこし続けていました。そして深夜対応組の体力が限界を迎えた8時頃には朝番のエンジニアがしっかりと待ち構えてくれていたので、安心してバトンタッチすることができました。午後からの会議では他のプロダクトのオーナー達にリリース成功について報告し、拍手で祝って頂いたのですが、心の中では「この拍手は本当はこのプロダクトに関わってくれたメンバー全員に送りたい...!!」という気持ちでいっぱいでした。

最後に

『クラウド債務支払』は数多くの困難を乗り越えて生まれたプロダクトですが、一方で今回の1stリリースではあくまでユーザーの皆さんが本当に求めているものを提供していくための下準備が整ったに過ぎません。今後も開発スピードを早めてプロダクトの改善を続け、最終的には取引先から請求書を送ってもらうだけでほぼ何もしなくとも支払業務・債務管理業務・その他関連する経理業務が全て完了するような未来を目指していこうと思っています。ユーザーの皆さんのフィードバックをいただきながら課題を解決し、一緒に最高のサービスを作り上げていけることを心から楽しみにしています!

この記事が気に入ったらサポートをしてみませんか?