2024年11月12日、スマートバンクはシリーズBの資金調達を発表しました。これを記念して、スマートバンクのメンバーによるアドベントカレンダーを開催しています。
この記事はSmartBank Advent Calendar 2024の22日目の記事です。 昨日はkimiさんの「社員の成長と安心を支える、スマートバンクの入社オンボーディング」でした。
こんにちは!スマートバンクでiOSエンジニア兼EMを担当しているkanekoです。
2024年11月12日にスマートバンクはシリーズBの資金調達を行いました。 その中で、生成AIを活用したユーザー専用の家計アシスタントを実現するというプロダクトの未来について発表されました。プロダクトの構想についてはtakejuneさんのポストもご参照ください。
今日は、そんなまだ世にない機能の開発に挑戦するモバイルアプリ部についてご紹介させて頂きます。
モバイルアプリ部のメンバー紹介
現在モバイルアプリ部はフルタイムのエンジニア4名と外部パートナーの方2名、計6名でB/43のサービス開発にあたっています。
以前メンバーをご紹介した記事から新たにAndroidエンジニアのyokomiiさんを迎えた体制になりました。過去にメンバーをご紹介した記事もご参照ください。
社内プロジェクトとの関わり方
モバイルアプリ部はエンジニアリング本部に所属し、社内の多様なプロジェクトと連携しながら、業務を遂行しています。私たちのプロジェクトへの関わり方についてご紹介します。
ミッションチーム
当社はマトリクス型の組織構造を採用しており、モバイルアプリ部のメンバーはミッションチームと呼ばれる新機能開発や新事業立ち上げなどのミッションを元に構成されたチームにも所属しています。
ミッションチームではサーバサイドエンジニア、デザイナー、PMなど、多様な専門職が一つのチームとなり、各プロジェクトの成功に向けて協力し合っています。各メンバーは(原則)1つのミッションチームにアサインされ、自分の専門分野を活かして日々の業務を担当しています。
具体的には、ディスカバリーフェーズから仕様の策定・アプリの設計・開発・テスト・リリースまでの一連のプロセスに携わっています。特にディスカバリーフェーズにおいて、リサーチャーやPM、デザイナーと協力しながらユーザーのニーズを分析し、機能要件を定義するなどプロジェクトの序盤から深く関与しています。
モバイルチームでの動き方
モバイルアプリ部は、ミッションチームに所属しながらも、部全体としての連携と情報共有を重視しています。
週次で定例ミーティングを実施し、各プロジェクトの進捗状況や技術的な課題について共有しています。また、この定例では他チームが取り組んでいる内容を確認し、各ミッションチームの変更と重複や競合が発生しないよう調整を行い、素早く価値検証を行える環境を整えています。
さらに、ミッションチーム外の業務として、毎週モバイルアプリ部専用の時間を設け、技術課題に取り組んでいます。この時間では、ミッションチームの活動では出来ない技術負債の解消や既存実装のリファクタリングなどを行っています。例えば直近では、UIKitの画面のSwiftUI化をしたり、Androidの遷移グラフの改善を行っています。
これにより、チーム全体の技術力向上を図るとともに、長期的なプロジェクトの成功に向けた基盤を築いています。また、実装面だけでなく、iOSDCやDroidKaigiなどの国内のカンファレンスにモバイルチーム内でレビューを行いプロポーザルを提出するなどの活動も行っています。
これらの取り組みを通じて、最新技術の習得や業界との連携を強化し、部全体の成長を促進しています。
カジュアル面談でよく聞かれる質問とその回答
ここまで、モバイルアプリ部のメンバー紹介と働き方について詳しく説明してきました。 次に、カジュアル面談でよく頂く質問とその回答例をご紹介します。
人員が足りているように見えますが?
実際には、ミッションチーム数に対してモバイルエンジニアが不足している状況です。現在は特定のエンジニアが複数のチームを担当することで対応していますが、結果として片方の施策でモバイルエンジニアの合流を待つ時間が発生し、全体の進行が遅れるという問題が生じています。
また新しいミッションチームが組成された際にも今の人員のままではモバイルエンジニアがアサイン出来ないという問題も発生します。
リリースまでのリードタイムを短縮し、各プロジェクトの質を向上させるために、今後は必要なチームに専任のモバイルエンジニアをアサインすることでフロー効率を高め、各プロジェクトが素早くリリースを行える環境を整えていきたいと考えています。
iOSとAndroidの両方が書けないといけませんか?
いいえ、必須ではありません。
現在のモバイルアプリ部には、iOSとAndroidの両方を扱えるエンジニアもいれば、片方に特化しているエンジニアも在籍しています。両方に対応できるメンバーはもちろん歓迎しますが、特定のOSに特化しているメンバーも、それぞれの強みを活かしてチームに貢献しています。また、現在担当しているOS以外の実装経験がなくても、挑戦したいという意欲があればチャレンジできるようなサポートをしていきたいと思っています。どちらの分野でも、各エンジニアが最大限に活躍できる環境を整えており、専門性を深めることも可能です。
技術負債や課題はどのようなものがありますか?
iOSではSwiftUIへの移行やライブラリの差し替え、Androidではマルチモジュール化などが上げられます。これらには前述の通り、技術面の改善に専念する時間を確保しており、優先順位をつけてタスクを実施しています。
これらの技術負債の解消も重要ですが、より大きなやりがいとして、プロダクトの複雑性に対応することに注力しています。例えばカードの発行状況や本人確認の状態など、ユーザーの状態が多岐にわたるためそれらをどう設計でカバーするのか?という課題はエンジニアとしてチャレンジングな点になると思います。
このような複雑性に対処した例として先日nakamuuuさんがブログにまとめているのでそちらも参考にしてみてください。
これからの挑戦と展望
ここまでモバイルアプリ部のこれまでの取り組みをご紹介してきました。
我々は今後AI × 家計管理というこれまでにない新しい価値の創出に挑戦することを目指しています。この挑戦を成功させるためには、モバイルエンジニアは実装面だけでなく高速な検証と改善サイクルの確立 にも貢献をしていく必要があります。
例えば、プロトタイピングを行うことで実現可能性とMVPを検討し素早いフィードバックサイクルを回す、などミッションチーム内で仮説検証を早めるために必要なことはなにか?を考え実践する必要があります。これは以前rocknameさんが記事にしているのでそちらも参照してください。
こうした取り組みを各ミッションチームで行うことで、フロー効率を高め、プロジェクトごとの仮説検証を迅速に行える環境を整えていきたいと考えています。そのためには、メンバーを増やしてフロー効率を高めるだけでなく、各メンバーがプロトタイプ作成や仮説検証を迅速に行えるようなアプローチを推進する必要があります。モバイルアプリ部としてこのような体制を構築していきたいと考えているので一緒に挑戦してくれるメンバーを求めています。是非AI × 家計管理という革新的な分野で新しい価値を一緒にユーザーに届けましょう。
最後に
今回はスマートバンクのモバイルアプリ部を紹介させていただきました。少しでも興味を持っていただけたら幸いです。
繰り返しになってしまいますが、モバイルアプリ部では一緒に働くメンバーを募集中です。気になることがあればカジュアル面談でお答えします!
また12/18にはエンジニアのオフラインイベントを開催予定です。こちらのイベントにはモバイルアプリ部のメンバーも全員参加するのでチームの雰囲気などを感じて頂けると思います。是非ご参加ください。
明日は当社のBizDevのメンバーが登場予定です。お楽しみに〜