こんにちは、DevBrandingのellyです。11月19日に配信した「マネーフォワード vs freee、もし名古屋で開発するなら?」の様子をご紹介します。
これから名古屋に開発拠点を立ち上げるマネーフォワードと 2020年に拠点を構えたfreee。 なぜ名古屋に開発拠点が必要なのか、作っているプロダクト、本社との関わり方、 両社のエンジニア組織の違い等を対比しながら1時間たっぷり赤裸々に語ってもらいました。
長島圭祐 (Kei) さん: マネーフォワード 名古屋開発拠点 拠点長兼サーバーサイドエンジニア。 福岡でマネーフォワードクラウド債務支払の開発を担当しつつ、名古屋に新設される開発拠点の立ち上げを進めている。最近はサーバーサイドKotlinに夢中。
moai: freee 中部開発組織長。中部開発組織を2020/7に立ち上げた。地域技術イベント『みそかつウェブ』を主催している。普段はfreee会計の開発を行っている。
のぶじゃす (@noblejasper): 写真右下。ラジオパーソナリティ、2017年に中途入社。mixi、ソーシャルゲーム企業でソフトウェアエンジニアを経験し freee に。入社後はエンジニア→エンジニア採用担当→エンジニアと DevBranding を担当。しゃべりたがり。声が大きい。
マネーフォワードについて
Kei:弊社は主に個人や企業のお金の管理に関する悩みを解決するためのサービスを提供しています。開発職・ビジネス職と合わせてだいたい1000名程度の組織になっています。「お金を前へ。人生をもっと前へ。」というミッションを達成するために、すべての人の「お金のプラットフォーム」になる未来を目指して日々仕事しています。
事業領域に関しては BtoCからBtoBまで幅広くやらせていただいています。法人向けにはバックオフィス業務を効率化するためのSaaSサービス、個人向けには自動資産管理サービス、金融機関向けに はDX支援サービスなどを提供しています。
開発拠点は東京だけではなく、福岡・京都・大阪、あとはベトナムにも立ち上げていたりします。その次が名古屋で自分が中心となっていま準備を進めているところです。
—今回なぜ名古屋に立ち上げることになったんですか?
Kei:理由は大きく3つあります。
まず一つ目は、ユーザーの皆さんからの期待や会社の成長スピードに応えていくためです。ありがたい事に全事業領域で毎年ユーザー数が増え続け、日々多くのご要望をいただいています。そのため、毎年5~6個新サービスをリリースしていて、今後もどんどん開発を進めていくために地方在住の方にももっとjoinしてもらいやすい環境を作っていく必要があるなと感じていました。そんな中で人口が大きくて優秀な学生さんもいて、まだ開発拠点を立ち上げていなかったのが名古屋でした。
二つ目は、僕が今まで福岡の開発拠点でエンジニアとして働いてきたんですけど、地方の開発拠点でも日本中で使われるようなプロダクトを作りたいと考えたからです。福岡の拠点ではMoney Forward クラウド経費、債務支払、Pay for Businessという3つのサービスを開発していて、特にMoney Forward クラウド経費は非常に多くユーザーさんがいるサービスに育ってきています。自分はその様子を実際に開発しながら見てきましたし、名古屋でもそれを実現したいと考えています。
三つ目は、リモートワークメインの中であえてオフィスを構えることにした理由なんですが、マネーフォワードはオフラインでのコミュニケーションも結構重視していて、特に地方拠点はオフィスのサイズや人数の関係で、本社と比べて普段仕事では絡みがないようなメンバーとも気軽に話せる良さがあるなと思っています。例えば、開発メンバーが「この機能についてお客さんにヒアリング行きたいんですよね」とぼやいたときに営業の人が「調整しましょうか」と言ってくれたり、そういうふとしたコラボが生まれやすいというオフラインの良さを満喫できる環境を用意したいと思いました。
—コロナ禍でもオフラインのコミュニケーションをしやすくする仕組みはありますか?
Kei:コミュニケーションが生まれやすい導線を意識して、オフィスに入ってきて執務室に入っていくまでに必ず他の部署の人の顔を見れるようなそんな動線を考えたりしてます。
両社が名古屋拠点で作るプロダクト
—名古屋拠点ではどんなことしていく予定ですか?
Kei:法人向けの領域でプロダクトの開発を行っていきます。具体的には、Money Forward クラウドというまさにfreeeの競合になるサービスなんですけども(笑)このサービスの中で新しいプロダクトの開発を推進していく役割を担っていきます。毎年たくさんプロダクトを作っていて、今後も新規プロジェクトの開発の手が止まる事っていうのはないだろうなと思っています。なので0→1フェーズの開発が好きな方にとっては、無限に挑戦の機会が待ってるんじゃないかなと思います。
—無限にあるんですね・・!かっこいいですね。名古屋では新規プロダクトのみを担当するんですか?
Kei:メインの役割は新規プロダクトの開発なんですけど、やっぱりこれだけサービスが増えるといろんな技術負債もあったりしますし、そういったものに取り組む場面も出てくると思います。大きいプロダクトを触る機会ももちろん提供できます。
moai:新規も大きいプロダクトも両方触りたいみたいな人は多いし、行ったり来たりできるのは楽しそうですね。
Kei:そうですね。作っているのがERPで、経理・労務・現場などいろんな業務が交差しますし、サービス同士が連携しているおかげでデータの転記の手間を省く事が出来ていたりするので、他のチームと連携することはいっぱいありますね。
—拠点で新規プロダクトを作る上で、技術選定や開発環境的な部分はどのように決まるんですか?
Kei:基本的に各拠点にかなり大きな裁量が与えられています。これまで複数拠点を作ってきていますが、いずれも本社から降りてきた指示にしたがって開発しているだとか、負債との格闘だけやるみたいなのは全くなくて、支社のメンバーが中心となって企画・開発してやってきていました。
今回名古屋拠点を立ち上げるとなったときも、自分が名古屋で何を作りたいか、マネーフォワードでいま作るべきものって何だっけみたいな話を本社の人たちと会話しながら定めて、プロダクトの方向性が見えてきたら技術選定もそれに合わせて一番適したものを名古屋メンバーで選ぶというやり方をしています。拠点の判断になるべく委ねつつ、かつ丸投げではなく周りからサポートしてもらえる体制がちゃんとあるのがうちの良いところなのかなと思っています。
マネーフォワードは対外的にはRubyの会社というイメージが強いような気がしていて、実際に歴史のあるサービスのサーバーサイドはRubyで動いてるんですけど、最近はGoやJavaなど他の言語も使われていたりします。名古屋の技術スタックは最近採用事例が着々と増えつつあるサーバーサイドKotlinを使っています。
—アグレッシブですね!すでにKotlinで作っているものがあるんですか?
Kei:社内のマイクロサービス中心に採用事例はいくつかあったんですけど、本格的にプロダクトへ導入するのは今回が初めてです。社内で相談した時に関西のチームでもちょうどやってみたいという話が出ていて、一緒にやることになりました。
—Rubyのほうが早いのでは、みたいな話は出なかったんですか?
Kei:僕自身もRubyのエンジニアだったのでそのほうが楽だろうと思ってたんですが、Javaエンジニアの方を母集団として捉えられるという採用面のメリットと、そういう方がこれまでの知見を生かしつつ新しい技術に挑戦しやすいという成長機会を提供できるという面でもメリットがありました。なので僕も踏ん張って挑戦してやろうという決意をしました。
他の技術面で言うと、GraphQLも最近社内で採用しているサービスが増えてきていて、名古屋でもKotlinかつGraphQLのAPI を作っていこうという話をしています。Kotlinで書くとGraphQLの体験が非常に良いというのが分かってきているので、興味ある方がいればぜひ来てほしいなと思ってます。
—freeeの名古屋拠点は何をやっているんですか?
moai:今はfreee会計の税理士さん向け機能に特化して開発していて、freee会計の中で提供している機能を新しい技術でリニューアルしようとしています。これが技術的にめっちゃ面白いチャレンジで、チームで盛り上がっています。
—どう面白いんですか?
moai:一番面白いのは、やっぱり大きなプロダクトの中で新しい技術にチャレンジできるというところです。freeeはfreee会計というプロダクトがめちゃくちゃ大きくて、freee会計のガイドを見ると債権管理、ワークフロー、消込、請求機能など17カテゴリーぐらいあるんですよ(笑)プロダクトのリポジトリもRubyのファイルが1万以上、JSONファイルが6000くらいで合わせて2万近いサイズ感なんですが、やはり開発速度も上げたいしいろんな機能も出していきたいので、そのためにも新しい技術にチャレンジしていきたいと思ってます。
プロダクトが大きいとライブラリのバージョンアップとかが難しくなったりして、新しい技術スタックを使い始めるためにその一部機能を切り出したりするのですが、大きいからこそ難易度が高くやりがいのある課題に取り組めるというところが僕らの面白いところだと思ってます。
—両社違う魅力がありますね。
moai:そうですね。サーバーサイドはでかすぎて切り出せないということが分かってきていて、フロントだけマイクロフロントエンドみたいな形で切り出そうとしていて、そこは既存の技術スタックじゃなくてTypeScriptなどの新しい技術スタックで書き直そうとしています。
—フロントエンドも新しい機能を作ろうとすると切り出しが必要ですか?
moai:JavaScriptのファイル数が6000もあるので、開発のフィードバックサイクルがちょっとずつ落ちてくるんですよね。そこの技術スタックを新しくしてサイクルを速くすると開発体験が良くなるので、新しく切り出すことが開発速度的にも大事だと思います。その際に自分たちで技術スタックを決めていけるのは気持ちがいいし、技術的な裁量を増やすチャレンジができるというところが中部オフィスの開発組織としても面白いと思っています。
—マネーフォワードは新しいプロダクトだから自分たちで決める、freeeは既存の大きいプロダクトから切り出して自分たちで裁量を持って開発速度を上げていけるようにしていくという構図ですね。
moai:切り出しって小さいアプリケーションだとそもそもいらなくて、逆に大企業だとすでに終わってるんですよね。freeeぐらいのサービスだとちょうど切り出しという技術的チャレンジが待っているので、そこはfreeeっぽい魅力だと思います。
—切り出しを通じて、社歴が長い人だけが知っているプロダクトじゃなく、入社して浅い人もプロダクトを育てていける感じがいいですね。
moai:そうですね、その過程も楽しめるっていうところが素敵なやりがいポイントかなと思っています。
Kei:サービスの切り出し方は中部支社のメンバーが決めたんですか?
moai:そうですね、税理士さんに実際にヒアリングして困っているポイントが分かったときに、その機能を古い技術で作っていて、改修するよりも作り直したほうが早いんじゃないかという議論になりチャレンジしました。これまでも開発速度を上げるための切り出しはやってきていて、いままではバックエンド側を切り出してきたんですが、今回はフロントエンド側を切り出していこうというチャレンジです。フロントエンド側は成功したらfreee初のはずだし、日本でも数例しかない分割の仕方になると思います。
—初の取り組みをする中で技術的な特徴や困ったところはありますか?
moai:新しい機能を使うためにwebpackのバージョンを上げないといけなかったんですが、それが大変でした(笑)チームみんなで一緒に解決していけたのはよかったです。
本社や他の支社との関わり方
—東京本社や他の支社とはどんな感じで連携しているんですか?
Kei:業務面に関しては比較的関わりが多いと思っています。特に名古屋拠点だとマネーフォワードクラウドを作っている関係もあって、東京本社に勤務しているメンバーもがっつり関わってもらっているので、毎日夕会で顔を合わせています。名古屋と関西をつないで毎週Kotlin勉強会みたいなものも開いています。
国内の各拠点もそうなんですが、ベトナムの拠点にいる外国籍のエンジニアとコラボするシーンとかも増えてくるかなぁと思います。英語で仕事できるようになりたい、これからチャレンジしたいと思っている人にはおすすめです。
—喋れないけどチャレンジしたいという人でも大丈夫ですか?
Kei:会社として英語のキャッチアップのサポートはこれから手厚くなっていくので、キャッチアップする気概がある人ならやっていけると思います。
—社内のインフラやSREのメンバーとはどのように関わっているんですか?
Kei:本社のほうで一元管理する基盤チームがあるんですが、サービスが増えてそのチームだけではすべて見切れない部分もあり、最近だとプロダクトチームの方でインフラもやれるようにしていこうという流れがあります。名古屋もそのうちのひとつです。インフラに関してはk8sとかを使っていくことになるので、みんなが詳しいわけじゃないと思うんですけど、本社のエンジニアにレクチャーしてもらいながら、みんなでキャッチアップしていこうみたいな感じですね。
—みんな興味ある分野だからやりたい人も多そうですね。freeeはどうですか?
moai:本社でk8sのデプロイ基盤を作ってくれているのでそのあたりはお任せって感じです。コンテナ作ればあとはArgo CDをぽちっとしたら反映してくれるという世界観に会社としては統一してくれています。
—いいですね、ちょっとバチバチしてきましたね(笑)
moai:あとは、リサーチチームと最近密に連携とっているのが面白いです。freeeにはリサーチ専門チームがいて、ユーザーがどこで詰まってるか分からない、この企画の方向性が合っているのか分からないみたいなときがあるんですが、そのあたりを実際にユーザーにヒアリングしながら確度高そうかどうかを検討してくれるチームがあります。実際に機能に実装したときにユーザーテストで確認してくるみたいなフローになっていてすごく助かってます。
—仮説はあるけど本当なの?ってところを一緒に突き詰めてくれるってことですね。
moai:そうですね、そしてこれがすごい当たってると思ってて、ユーザーにとってマジ価値だと思います。
名古屋で働きたいと考えている人へのメッセージ
—今後拠点をどうしていきたいと思っているか、拠点で働きたいと思っている人へのプレゼンをお願いします!(笑)
Kei:名古屋のIT業界とマネーフォワードの成長の両方を加速させるエンジンみたいな存在になりたいねという話をみんなでしています。たくさんの挑戦・成長の機会や働きやすい環境を提供していくのお約束しますし、現時点での経験やスキルだで任せる仕事を決めるのではなく、熱意やポテンシャルがある人が挑戦しているのをみんなで背中を押してあげるようなあったかい雰囲気の組織でありたいなと思ってます。そして困難や挑戦を乗り越えて大きく成長した人にはマネーフォワードのエースとして名古屋のIT業界全体をますます盛り上げていってほしいなと思っています。
今日のこのイベントではmoaiさんとバッチバチな感じでお届けしてきましたけど(笑)名古屋の企業同士でエンジニアを取り合いたいみたいな気持ちは全くなくて、あくまで名古屋のIT業界全体を盛り上げていきたいと思っていますし、freeeは競合であり仲間でもある、みたいなそんな気持ちでいます。
拠点立ち上げかつ新規プロダクト開発っていうなかなかない経験をダブルでできますし、立ち上げ期なのでまだの人は十分にいなかったりするんですけど、拠点を大きくしていく過程自体を楽しむという捉え方をしてもらえるといいのかなと思っています。ERPをゼロから作り上げてきたような本社メンバーが監督してくれている中で、挑戦と守りの両面がいい感じに整った環境で取り組める良い拠点だと思ってます。
—いいですね、エモいですね。freeeからもエモいメッセージをお願いします(笑)
moai:中部から日本中に価値が届くアプリケーションを発信するということを、エンジニアリングを楽しみながらやりたいと思ってます。僕達が楽しみながらマジ価値なアプリケーション開発してるっていうことを示すことで就職の機会がここにもあるということが言えると思うので、そういうことをまずは達成したいです。
具体的には、固定資産台帳をPDF化する機能を出したときに税理士さんがすごいリツイートとかしてくれて楽しかったんですよね。そうやってわーっと喜んでくれるものを作りたいし、これは夢ですけど東京の10%ぐらいの売上を立てて、自分たちで売上も立てられるしユーザーにとっても価値のあるものを作れるという世界を実現したいと思っています。
同時にエンジニアチームとして楽しみたいなと思っていて、技術チャレンジとか成長機会がないとやっぱ面白くないので、中部から東京へ、中部から大阪へ技術チャレンジの良い波及を起こしたいと思っています。
Kei:エモいですねー(笑)
moai:中部でもいままでマジ価値な機能をたくさんリリースして、大阪でもアプリケーションを作ってるし、マネーフォワードも九州でアプリケーションを作ってきた歴史がありますよね。支社が裁量を持ってチャレンジしながら拡大するっていうのはマネーフォワードでもfreeeでもできると思うので、ぜひ比較していただいて、うちが面白いと思ったらぜひうちに来てください(笑)
—このイベントがきっかけでどっちかに誰かが入社したっていうだけで僕はもうめちゃくちゃ嬉しいです(笑)
moai:そうですね!間違いなく面白いと思いますよ!
Kei:面白いですね!
—最後は一緒の目標を目指すということでまとまりましたね(笑)今日はとても面白かったし、名古屋を盛り上げたいというのが2人からとても伝わってきました!
moai:また一緒にイベントやりたいですね!
Kei:ぜひ、またやりましょう!
本編終了後にZoomで開催されたアフタートークでは、Live配信中にたくさんいただいた質問への回答や、両社の違いや次回コラボイベントの構想などを話し、こちらもとても盛り上がりました。
▶次回freee Tech Night
12/20(月)19:00~「本当に怖い障害訓練、犯人はfreeeの中にいる!?」
それは突然起きる。予測不能のシステム障害。そんなとき、みなさんは一体どんなふうに行動し、どう対処するのか!? かねてよりfreee社内で行われている障害訓練。事前に「何かが起こる」ことだけを知らされている社員たち。 今回は、そんな障害訓練を企画しシナリオを作ったPSIRTのメンバーにお話を聞いてみます。