Money Forward Developers Blog

株式会社マネーフォワード公式開発者向けブログです。技術や開発手法、イベント登壇などを発信します。サービスに関するご質問は、各サービス窓口までご連絡ください。

20230215130734

マネーフォワード CTO が考えていること(2023 年 3 月)

こんにちは、マネーフォワード CTO の中出(なかで)です。

CTO の私が、普段「なにを感じて、どんなことを考えているか」について、四半期に一回社内へ共有している内容を一部編集し、エンジニアブログに公開したいと思います。

前回はこちら:マネーフォワード CTO が考えていること(2022 年 12 月)

グローバル多拠点開発、グローバルでのツール・プロセスの統一

私たちは、これまで一つのプロダクトを一つの拠点で開発することにこだわってきました。これは、最速でプロダクトを開発するための最適解だと信じていたからです。しかし、エンジニアが限られた状況下では、このやり方が最も良いとは限りません。そこで、複数の拠点にまたがるチームを作り、コラボレーションして開発することにチャレンジしたいと思います。

複数の拠点といっても、日本の各拠点にはチームの余裕がないため、基本的には国をまたいだ拠点とのコラボレーションになることを想定しています。これは、グローバル化にもポジティブな影響があると考えています。今まで、ベトナムでは新規サービスを開発することが多かったため、Goを採用することが中心でした。しかし、日本の各拠点とコラボレーションして開発することを前提に、Railsの採用も増やしていく予定です。

それから、前回にお伝えした通り、日本とベトナムの開発組織をより統合していくために、ドメインの統合やGoogle系のツール、Slack、Githubなどの統合を進めています。それに加えて、プロジェクト管理ツールも統一する予定です。

これらの統一により、開発プロセスや品質評価プロセスを標準化し、全体の生産性を向上させたいと考えています。個々のチームが使い慣れたツールを使わないことで課題も出てくるかもしれません。しかし、私たちは個別最適ではなく、ツールの統一やプロセスの標準化や自動化による全体の生産性向上を目指しています。

運用品質の向上と保守運用スキルの重要性

マネーフォワードは創業以来、急速にサービスを拡充し、その機能も徐々に拡張し、多くのユーザーに利用していただけるようになってきました。もちろん、今後も新規サービスの開発は継続しますが、過去数年の開発ペースに比べると落ち着く見込みです。

今後、私たちの開発組織として注力するべきポイントは、サービスの成長にシフトしていきます。これまでの経験からも、サービスの大規模化にともなって、非機能的な課題が増えたり、アーキテクチャ改善が必要になったりしてきました。サービスが成長するにつれて、安定運用する難易度は上がっていくことになりますし、それに対処できるスキルが重要になります。

適切な運用によって、安定したサービス提供ができなければユーザーに良い体験を提供することはできません。トラブルが頻繁に起こると、調査やリカバリに時間を費やすことになり、開発チームの負担も大きくなります。不安定なサービスは、セールスやカスタマーサービスを始めとする、社内の生産性にも悪影響を与えます。全体の生産性を向上させていくためにも、運用品質の向上が求められます。

エンジニアにとって、サービスを安定運用するスキルは非常に重要なスキルです。開発したサービスが実際に稼働し始めると、想定外の問題がたくさん発生します。特に、多くのユーザーが利用するようになると、非機能的な課題に直面することがよくあります。そのため、エンジニアはサービスの運用面についても深く知っておく必要があります。

しかし、こうしたスキルは簡単に習得できるものではありません。個人開発やアーリーステージのスタートアップでは、このような経験を得ることが難しいのです。もし、大規模サービスのアーキテクチャを設計できるスキルを身につけたいのであれば、一番の近道は成長しているサービスの運用に携わることです。

今後、マネーフォワードではサービスのラインナップの拡充から個々のサービスの成長にシフトしていくことが予想されます。そのため、サービスの安定運用を実現できるスキルを持ったエンジニアの重要性が高まっていくでしょう。エンジニアは、単にコードを書くだけでなく、運用やメンテナンスなどサービスのライフサイクル全体を見据えたスキルを身につける必要があります。

このような状況を踏まえ、グレード要件にサービスの保守運用に関する要件を追加したいとおもいます。サービスの開発だけでなく、保守運用や改善に携わることでエンジニアのスキルセットがより幅広くなり、その経験がサービスの品質向上に繋がります。システムアーキテクチャの設計についても、サービスの保守運用の経験を豊富に持った人にお願いしていくことになるかと思います。

より成長のための異動を推奨する制度

マネーフォワードでは、定期的な配置転換は、若手エンジニアを含めた新卒エンジニアにとって、キャリアの中長期的な成長にプラスの影響を与えると考えています。一つのサービスだけではなく、複数のサービスを経験することで、技術的な選択の幅が広がったり、今までの経験だけではない新しい視点を得られるからです。これまでも社内公募制度「チャレンジシステム」で異動を推奨してきましたし、手を挙げた人がチャレンジできるような機会を提供してきました。

しかしながら、異動するかどうかは本人の意思に任されており、異動先でのチャレンジが成長につながるかどうかも本人次第でした。つまり、自分自身でキャリアの成長につながる機会を積極的に探し、自己決定することが求められていたのです。異動先でより大きなチャンスをつかめるかどうか、本人の能力や運に左右されるものであったため、コントロールしづらい状況であったといえます。

そこで、私たちは従業員の意思を尊重しつつ、より効果的な成長のために異動先を提供し、最適なチャレンジができるよう、制度を変更することを検討しています。特に新卒入社まもない人にとっては、自分自身の成長のために何が最適かを判断することは難しいかもしれません。また、興味のある仕事が必ずしも成長につながるわけではありません。そのため、一人ひとりに合わせた最適な異動先や役割を提案し、理解を得られるようにしたいと考えています。

今後は新卒で入社してから2.5年以上経過した方を対象に、進行中の仕事の状況や状況によっては異動のタイミングを考慮した上で、4〜5年以上同じ場所や役割に留まらないように配慮したいと考えています。ただし、人によっては今の場所での活躍が最適な場合もあるため、柔軟に対応していきます。