UPSIDER Tech Blog

Flutterと歩んだ僕たちの最高のアプリの作り方

なぜUPSIDERは「アプリ体験」にこだわるのか

株式会社UPSIDERが提供する法人カードサービスには、2つのアプリが存在する。
ひとつは、経理担当や従業員が日常業務で使う法人カード「UPSIDER」(以下、UPSIDER)のアプリ。
もうひとつは、会社オーナーや経営者向けの法人カード「PRESIDENT CARD」のアプリだ。

どちらのアプリにも共通しているのは、「シンプルで快適な体験」を追求していること。
UPSIDERは “業務を快適にする” 、PRESIDENT CARDは “経営者の時間を豊かにする” 。
利用者や利用目的は異なっても、どちらも「使いやすさ」と「スピード」を徹底的に磨き続けている。

だが、それを支える開発チームはわずか3名。
しかも、2つのアプリに加えて軽量なバックエンドの開発・運用まで自分たちで担っているという。
彼らはどのようにスピードと品質を両立させているのだろうか。
その開発の中心にいるアプリエンジニア、田中さんに話を聞いた。

小さなチームが生み出す、スピーディな開発サイクル

田中:現在、アプリ開発チームは3名のエンジニアで構成されています。 UPSIDERとPRESIDENT CARDの2つのアプリを担当し、軽量なバックエンドの開発も担っています。

基本は2週間サイクルで開発を回していますが、アプリごとにリリースペースを柔軟に調整しています。UPSIDERは4週間ごとのときもありますね。この2週間のサイクルはあくまでも目安です。守ること自体を目的化せず、“最高の体験を生み出すために、必要なペースで最適な開発を行う”ことを大事にしています。

少人数だからこそ、この柔軟さが許されると思いますし、それこそがこのチームの強みであるとも考えています。

そして何よりも、アプリ開発からQA、デプロイまでを自分たちで完結させる体制が、スピード感のある開発を支えているでしょう。AIツールを駆使しながら自分たちでデザインも行なっており、その場合はそのまま実装を担当することも多いので、意図のズレがほとんどないですね。チーム内で完結している分、コミュニケーションコストは最小限。レビューからリリースまでの流れも驚くほどスムーズです。

小さいから速い―それだけではありません。
機能を設計し、テストして、配信し、ユーザーの声を聞くところまで。すべてのプロセスを自分たちで回せるから、意思決定からリリースまでが圧倒的に速い。「エンド・トゥ・エンドで作る」という文化がアプリチームの根幹にあります。

スピードを上げることが目的ではなく、“何を早く届けるか”を常に問い続ける。機能追加よりも、ユーザーにとって価値のある体験を優先する。その姿勢こそが、当社のアプリ開発チームを支える根幹の思想です。

関連記事はこちら
tech.up-sider.com

日常に溶け込む体験設計 ー UPSIDERアプリの思想

田中:UPSIDERアプリは、日常的に業務を行う経理担当者やたまに利用する社員の方がメインユーザーです。コア体験は“領収書アップロード”と“カード情報の確認”。

一見シンプルですが、UPSIDERが扱う決済の中心はこの2つに集約されています。だからこそ、どれだけ快適に行えるかがアプリの価値を決めると考えています。

Slackなど、すでに社内で日常的に使うツールがある中で、UPSIDERアプリが担うのは“必要な瞬間にストレスなく完結できること”。毎日開くアプリではないからこそ、開いた瞬間に目的の操作に迷わずたどり着ける導線設計を重視しています。

とくに領収書アップロードは、利用者がもっとも触れる体験のひとつ。撮影から送信完了までのわずかな時間差でもストレスに感じることがあるため、チームでは継続的に計測と改善を行っています。

“ユーザーが目的の操作に到達するまでの時間”を体験品質の指標としてモニタリングし、細かいUIの変化が操作時間に与える影響まで検証しています。

使いたいときに、迷わず・待たず・気持ちよく使える。
それが僕らの理想であり、UPSIDERアプリが目指す“日常に溶け込む体験”です。

“アプリが主人公” 経営者の時間を豊かにするPRESIDENT CARD アプリの思想

田中:UPSIDERアプリが“業務効率化のためのツール”だとすれば、PRESIDENT CARDアプリは“体験そのものがサービスの核”です。どちらもUPSIDERの「体験を軸に設計する」という思想のもとにありますが、PRESIDENT CARDは“経営者の時間を豊かにする”ことを主軸に据えています。

president-card.com

PRESIDENT CARDは、会社オーナーや社長の方向けのアプリです。アカウント開設からアプリで行うことができるため、まさにアプリ体験がサービスの中心にあります。オーナーや社長の方々は多忙で、経理業務をPCではなくスマホで完結したいという声も多く聞かれます。だからこそ、“経営者の時間を無駄にしない”“持っていて嬉しい”を意識した世界観でUI/UXを設計しています。

アニメーションにも強いこだわりがあります。
たとえば、ポイントが貯まっていく様子や交換時のアニメーション。これを「嬉しくなる体験」としてデザインしています。数値が増えるだけではなく、指先の動きや画面の反応を通じて感情が動く。経営者にとって“使うたびに嬉しくなる”“自分らしさを感じられる”ような体験を目指しています。

そうした細部の積み重ねが、サービス全体の価値を押し上げていきました。PRESIDENT CARDを通じて、UPSIDERの中で“アプリ体験”の存在感が確かなものになったんです。アプリの役割は“機能”から“体験”へと重心を移し、チーム全体が「どう体験を育てるか」を共通の視点として持つようになりました。

「PRESIDENT CARD」の開発裏舞台 tech.up-sider.com

Flutter採用の決断 ― “スピードと一貫性”を手に入れるために

田中:Flutter採用の理由はシンプルでした。iOSとAndroidそれぞれを開発・運用するコストを減らしたかったからです。採用やメンテナンスの負担を考えると、両OS別々のネイティブ開発は現実的ではありません。

いくつかのクロスプラットフォームを比較した結果、Googleのサポート体制やAPI追従の速さ、品質の安定性からFlutterを選びました。
React NativeのようにWebの資産を前提とする環境でもなかったので、ゼロからアプリを作るならFlutterが最適でした。

ただし、導入当初は苦労もありました。
iOSとAndroidではUIの感覚が微妙に異なるため、最初はiOS向けに作られたUIをAndroidに最適化するのが課題でした。リリースフローもそれぞれ異なるため、ストア配信や自動デプロイのパイプラインを整えるところから取り組みました。

現在ではビルドからリリースまでの工程を自動化し、デプロイ負荷はほとんどありません。導入してみると想像以上に効果がありました。開発スピードが上がっただけでなく、ロジックを共通化できたことでプラットフォームごとのバグもほぼ消えたんです。QAの負担も軽減され、開発チーム全体が“ものづくりに集中できる”状態になったのは大きな成果だと思います。

小さなチームでスピードと品質を両立する仕組み

田中:Flutterの導入で「速く作る」ための基盤は整いました。けれど、品質を支えているのは仕組みそのものではなく、チームメンバー一人ひとりの意識です。

僕らのチームでは、デザインから実装、計測、QAまでを自分たちで回す体制です。 その分、判断スピードが速く設計変更にも柔軟に対応できます。

また、テストを非常に重視しています。ユニットテストに加え、ゴールデンテスト(スクリーンショット比較によるUI差分確認)を活用。レビューのためにわざわざ実機ビルドを繰り返す必要がなく、効率的に品質を担保できるんです。自分たちのタイミングで動ける分、スピード感も落ちません。

デザインをした人が、そのままコードを書く。そんな流れが自然にできているので、意図の伝達ロスがほとんどありません。これこそ、スピードと品質を両立できる一番の理由だと思います。

加えて、私たちのチームはライブラリのアップデートを怠りません。RenovateやDependabotを活用し、依存更新を自動化。さらにAIツール「Devin」でリファクタリングも進めることで、“常に最新・最適な状態を維持する”ことが当たり前になっています。こうした地道な改善を積み重ねられるのは、少人数チームだからこそ。小さなチームでも、安定した品質と継続的な進化を両立できる体制が整っています。

Flutterが生んだ“知見の循環”ー証憑自動紐付けの開発秘話

田中:アプリ基盤をFlutterで統一したことで、開発の循環が明確に変わりました。
以前はアプリごとに実装が独立していて、同じ改善を2回やることも少なくなかったんですが、 今では「一方で得た知見をもう一方にすぐ反映する」流れが当たり前になっています。

象徴的なのが「証憑自動紐付け」機能の開発です。
PRESIDENT CARDアプリで先行して実装した機能で、他のアプリから領収書や画像をシェアすると、自動で該当取引を判定して紐づけてくれる仕組みです。

実装の過程では、「どのタイミングでAIの紐付けを走らせるのが自然か」を何度も議論しました。バックグラウンドで自動処理するのか、ユーザー操作をトリガーにするのか...。AIの挙動はユーザー体験に直結するため、チーム全体で“実際の利用シーン”をシミュレーションしながら、UIフローと処理順を細かく調整していきました。Flutterという共通基盤の上で、PRESIDENT CARDの体験改善を即座にUPSIDERの開発チームにフィードバックできる。この“行き来の速さ”が、開発チームの強みになっています。

一度つくったものをそのまま終わらせず、次のアプリや次の機能で再利用しながら磨いていく。そうした循環が生まれたことで、“もう一度やらなくていい”という感覚がチーム全体に浸透しました。

コードの共有にとどまらず、設計の思想やUIの考え方まで自然に共有されていく。この知見の循環こそ、Flutterを導入した最大の価値だと思います。

“気づかない快適さ”を支える緻密な技術設計

田中:UIの滑らかさをアニメーションでごまかすことはあまりしません。僕らが目指しているのは、“見せかけの派手さ”ではなく、“触れた瞬間に速い”という体感です。

一番の快適さは“速さ”だと考えています。 重い処理をメインスレッドで実行しないように設計し、再描画を最小化。フレーム落ちを徹底的に防ぎます。1〜2フレームのカクつきでもユーザーは違和感を覚えるので、そこを徹底的に潰しています。UXとは、“意識せずに快適であること”。つまり「気づかない快適さ」を実現することだと思っています。

一方で、どうしても時間がかかる処理、たとえば領収書のアップロードなどでは、 ユーザーを待たせない工夫をしています。スナックバー通知で処理状態を可視化しながら、他の操作を続けられるようにしているんです。

ユーザーが待つ時間を“待たされている”と感じさせない。この“待ち時間をストレスにしない設計”も、チーム全体で大切にしている考え方です。

裏側では非同期処理や並列タスクを駆使して、複数のアップロードを同時実行しています。
単に高速化するだけでなく、UIスレッドのブロッキングを徹底的に避けることで、画面が固まらず、常に“操作が続けられる”状態を保っています。
このような見えない部分の最適化こそが、当社らしいアプリの快適さを支えているんです。

AIが拓く新しいアプリ体験ー次の挑戦に向けて

田中: 今後は「アプリでしかできないこと」を増やしていきたいと思っています。その中心にあるのはAIとの連携です。
例えば、音声アシスタント(SiriやGemini)と連携し「このカードを開いて」と話しかけると自動で画面が立ち上がる。そんな“アプリを意識せず使える体験”を目指しています。

また、AIがメモ内容を自動で整形し、経理担当に伝わりやすくするなど、日常の中の小さな体験改善も積み重ねていきたいです。
すでに社内ではAIチャットボットを導入していて、カスタマーサポートの自動対応にも使っています。
アプリチームでは日常的にAIツール(v0やDevin, Cursor, Claude Code など)を使いこなしていて、開発とAIが自然に共存している状態です。

今後はよりAIを“開発を助ける道具”から“体験を広げるパートナー”にしていくフェーズに入っていくと考えています。AIを取り入れることで、チームの開発スタイルもさらに変化しています。それは、Flutter導入で生まれた“テックファーストな文化”の延長線上にあります。

Flutterが生んだチーム文化と、これからのアプリ開発

田中: Flutter導入によって得られたのは、単なる開発効率化ではありません。むしろ、“つくり方そのもの”が変わったと思っています。
デザイン、エンジニア、AIツール。それぞれの領域がひとつの流れの中でつながり、少数精鋭のチームでも「いいものを最速で届ける」ことが当たり前になった。誰かが仕様を決めて、誰かが作るのではなく、みんなでプロダクトを磨いていく。そんな文化が自然と根付いていきました。

Flutterを通じて、チーム全体がテックファーストな考え方に変わりました。デザイナーもコードを書き、エンジニアも体験を語る。役割の境界を越えて、「自分たちの手で最高の体験を生み出す」という共通意識がある。

それが当社らしさだと思います。

そしてもう一つ、このチームには“知見を次につなげる流れ”があります。新しい挑戦で得た学びを次のプロダクトに活かし、また次の体験をつくる。その循環が、スピードと品質の両立を支えている。

Flutterとともに、これからも“気づかない快適さ”を追い続けたい。技術と体験を行き来しながら、当社らしい価値を形にしていきます。


株式会社UPSIDERのアプリ開発チームは、ただ小さなチームで成果を出しているわけではない。
彼らの根底にあるのは、「体験を技術で進化させる」という確固たる思想だ。Flutterは、その思想を現実のプロダクトとして形にするための基盤となっている。

We Are Hiring !!

株式会社UPSIDERでは現在積極採用をしています。 ぜひお気軽にご応募ください。

herp.careers

herp.careers

UPSIDER Engineering Deckはこちら📣

speakerdeck.com