投資管理アプリ「マイトレード」をリニューアル。少人数社員で挑むフルスクラッチな内製開発・運用

投資管理アプリ「マイトレード」をリニューアル。少人数社員で挑むフルスクラッチな内製開発・運用

投資管理アプリ「マイトレード」をリニューアル。少人数社員で挑むフルスクラッチな内製開発・運用

  • 情報通信・IT

国内通信キャリア最大手である株式会社NTTドコモ(以下、NTTドコモ)のR&Dイノベーション本部 イノベーション統括部が開発する、個人投資家のための投資管理アプリ「マイトレード」のリニューアルをご支援しました。

プロジェクトの背景

河野氏:マイトレードは個人投資家向けの投資管理アプリで、証券会社のサイトからデータを取得し、様々な数値を計算してグラフやリストなどで表示する「証券口座特化版家計簿アプリ」です。
本アプリの強みとしては、口座を登録する以前のデータに関しても、株価データを元に逆算し過去の資産や損益が分かる仕組みになっていることです。この機能は類似サービスとの大きな違いです。
以前のマイトレードは 2020 年 1 月に惜しくも終了しましたが、再び復活させるために始まったのが今回のプロジェクトです。以前は企画デザイン・PJ推進に徹していた私も今回は開発に参加し、当時の弊社メンバー 4 人で開発運営の大部分を担う弊社でも珍しい少人数体制でスタートしました。チームとしては初でしたが、マネージドサービスが充実している Google Cloud™ を採用し、結果としてクラウドエースさんと出会うことができました。

当初の課題

河面氏:2020 年 4 月にスタートし、学びながらの開発でしたが、やはり最終的にはプロフェッショナルの方々に性能やセキュリティなどを見ていただきたく、昨秋にクラウドエースさんに全体的なアーキテクチャのレビュー、総点検をお願いしました。結果として、堅牢で隙のないサービス基盤になり、安心してリリースすることができました。

〈システム概要〉

Google Cloud のモダンな技術に期待していた

河面氏:最初に導入を検討したのは Google App Engine でしたが、個人的に違和感があり、検討を進める中で Cloud Run の波が来ていることを知りました。タイムアウト時間の延長やインスタンスサイズの増加、VPCへのアクセス等、様々な機能追加がされました。加えて、CI/CDやログ周りが Google Cloud に統合される等、優れた開発者体験を持つ側面もあり、Cloud Run の採用を決めました。
他には Firebase* の存在も非常に大きいと感じています。アプリサービスに必要なツールが一式、マネージドで手に入ることは少人数内製開発にとって重要でした。Cloud Firestore のおかげでアプリチームとの目線が合いやすく、開発が効率的に進んだ面もあります。
加えて、 BigQuery で安価かつ簡易に分析ができることも重要だと感じています。データ分析チームを専属に持てなくても、SQLさえ書ければチームメンバー誰もがサービスの状態を把握できます。
Chromebook を組み合わせた運用も当初から Google Cloud に相談し、結果としてBeyondCorp Enterprise を活用した国内でも最先端事例になり、リモートワークに対応したセキュアな運用も実現できました。

河野氏:アプリ開発も Google がリリースしたオープンソースのアプリケーション プラットフォームで Firebase と親和性の高いFlutterを採用しました。結果的に世の中にもFlutterの波が来ており、良い選択ができたと思っています。
今回、証券データのロジック開発は私が担当しましたが、Goと Cloud Run の組み合わせは非常にパワフルで、旧マイトレードで課題だった並列での計算実行も数十倍に増やすことができました。以前は口座登録日に直近200件の取引を振り返って逆算していましたが、今回は2年間数万件の取引なども素早く計算できています。
アカウント管理や監査など、管理面でも Google Cloud の良さを実感しています。

*Firebase Authentication には、バックエンド サービス、使いやすい SDK、アプリでのユーザー認証に使用できる UI ライブラリが用意されています。

クラウドエースのサービス

河面氏:今回、 Google Cloud を利用した初めての開発だったので、サポートしてくださる開発パートナーを探していました。Google Cloud を活用した実績が豊富にあり、弊社の要件に応じてサービス内容を迅速かつ柔軟に提案していただいたクラウドエースさんと一緒に進めていくことを決めました。
特にセキュリティ面や性能要件を満たしているかに重点を置き、主にアーキテクチャのコンサルティングやレビューを依頼しました。Google Cloud に知見のあるチームに相談しながら進められたことはとても安心感がありましたし、リモート下でありながら些細なことでも気軽に質問できる環境を整えてくださり大変助かりました。
クラウドエースさんからのナレッジトランスファーと自己学習、サービス運用の実践により、Google Cloud に触ってから1年足らずで Google Cloud Day: Digital ’21 に登壇させて頂く等、個人としても成長を実感することができました。

河野氏:ベータ リリース後も、クラウドエースさんに継続して開発支援いただいております。
証券ドメインに近い部分は社員チームで開発しつつ、Google Cloud のジェネラルな部分をクラウドエースさんと進めていくサイクルです。特に、定常的に 1 日 15 分河面とミーティングしていただいており、それがバックエンド開発全体の良いリズムを生み出していると感じます。小さなことも大きな課題も、都度質問することで、スピーディーな開発とスキルアップに繋がっています。
今回の私達のように、内製開発に真剣に取り組み、適切な外部スペシャリストにご支援いただくスタイルは、弊社や弊社のようなエンタープライズ企業にもぜひ広まって欲しいと思いました。

今後の展望

河面氏:本サービスをベータリリースしてからユーザー数も順調に増加しているので、その成長に合わせてスケール出来るような仕組みを整えていきたいと思っています。そのためにも BigQuery を上手く活用したグロース基盤の構築や、マネージドだけでは捌き切れないエッジケースに対応可能なサービス基盤の開発、運用コストの低減、新サービスの導入などを積極的に行なっていきたいです。

河野氏:マイトレードについては、投資をもっとわかりやすい形で表現し、多くの方にとって大切な金融リテラシー、投資リテラシーが自然と高まるような投資教育的なプラットフォームに発展させていきたいと考えています。ぜひ今後の発展を楽しみにしていてください。