Slide 1

Slide 1 text

freeeのモバイルチームを 知ってくれ sugiken 2023年4⽉16⽇

Slide 2

Slide 2 text

ここに円に切り抜いた画像を入れてく ださい sugiken 2019年 新卒⼊社 webエンジニアとして freee 会計に 携わる 2021年 社内の異動制度を利⽤しモバイルチームへ異 動し会計アプリの開発を担当 趣味は旅⾏とカラオケ モバイル船 モバイル会計ヨット

Slide 3

Slide 3 text

  ⽬次 1. チームの⽬標の話 2. 「モバイルならでは」を探す話 3. 技術の話

Slide 4

Slide 4 text

⽬標の話 1

Slide 5

Slide 5 text

  freeeのモバイルチームを 知ってくれ そもそもなぜこのタイトルなのか

Slide 6

Slide 6 text

  freeeのモバイルチームを 知ってくれ 「freee」って聞くとwebサービスのイメージで すよね?

Slide 7

Slide 7 text

  freeeのモバイルチームを 知ってくれ まだまだfreeeモバイルチームの 知名度が低い!!

Slide 8

Slide 8 text

  freeeのモバイルチームを 知ってくれ freeeモバイルチームは、 おもしろい!!

Slide 9

Slide 9 text

  freee会計 freee開業 freee福利厚生 freeeアプリストア freee人事労務 freee会社設立 freee受発注 freeeプロジェクト管理 freee資金調達 freee申告 freeeカード freeeのモバイルアプリ freeeサイン

Slide 10

Slide 10 text

  モバイル会計アプリ利用者数シェアNo.1 71% 他社 ※出典:リードプラス株式会社「主要3社のサービス利⽤者数のシェア(2021年7⽉~2022年6⽉のユニークユーザー数)」  https://localfolio.leadplus.co.jp/blog/industry-analysis-series_cloud-accounting-software

Slide 11

Slide 11 text

  モバイルチームが今後3年で⽬指すところ スマートフォンだけで「だれもが⾃由に経営できる」世界の実現 ● 個人事業主ユーザーが日々の経営や確定申告が超簡単にできる ● 従業員ユーザーがサクッと勤怠管理や経費精算などのバックオフィス業務を簡単・確実 にできる ● 統合型経営プラットフォームを実現するためにいくつかの新規アプリのリリース

Slide 12

Slide 12 text

「モバイルならでは」 の話 2

Slide 13

Slide 13 text

  「モバイルならでは」を探す理由 ● web版にはほぼ全ての機能があるので、極論web版で良い ● みんなPCは持ってなくても、モバイル端末は持っている ○ 特に業種ごとに傾向もある ● モバイルにはモバイルの特性があり、体験の向上ができる ● モバイルの可能性を僕らが信じている

Slide 14

Slide 14 text

  常に「モバイルならでは」 を探し続けている

Slide 15

Slide 15 text

  ⼤切にしていること 「ユーザーを知ること」

Slide 16

Slide 16 text

  ユーザーを知るために - ユーザーインタビュー エンジニアも同席。ユーザーの声を聞きアイディアに活かす ● いくつかのインタビュー形式 ○ モックアップによる UI の検証 ○ インサイトを探るためのインタビュー 良い点 ● 使われている機能/難しいと思われている機能などが分かる ● やっぱり直接聞くと⼼に残る

Slide 17

Slide 17 text

  ユーザーを知るために - タウンホールミーティング モバイルユーザーの⽅7⼈に集まっていただき、経営層からエンジニアまで直接話を 聞く会 本当にズバズバと、ユーザーさんの 本⾳を聞ける会だった

Slide 18

Slide 18 text

  モバイルならではの価値ってなんだろう ● 誰でも持ってる ● 直感的な操作 ● カメラなどのハード⾯ ○ モバイル端末でのエッジ OCR ● NFC による交通系電⼦カード/マイナンバー読み 取り

Slide 19

Slide 19 text

  ユーザーについてのいくつかのファクト ● モバイルアプリのユーザー層は、明らかにPCメインのユーザーと異なる 属性 ○ 例)年齢、業種 ● "知識" がユーザーごとに異なってくる ○ 「操作の分からない」と「知識の分からない」は別 ○ 例)確定申告の⼀連の流れを知っているかどうか

Slide 20

Slide 20 text

  「どんなユーザーか」 × 「モバイルならではの価値」

Slide 21

Slide 21 text

技術の話 3

Slide 22

Slide 22 text

  freee モバイルチームの特徴 をドドドッと紹介

Slide 23

Slide 23 text

  MoVibes - モバイルアプリ専⽤のデザインシステム ● デザイナーがそれぞれのOS⽤に作成し、これを基に社内 UI ライブラ リ作成 ● UIの統⼀感/開発速度向上を⽬指している ● 新規画⾯で徐々に導⼊中 実装⾯でよかったところ ● デザイナーとの共通⾔語が持てる ● ⾊やテキストのスタイル指定が楽 ● Component の再利⽤による開発速度向上

Slide 24

Slide 24 text

  SwiftUI の検証‧導⼊中 ⼤規模な導⼊ < 部分的な導⼊ UIHostingController を⽤いて部分的に導⼊をしたり、新画⾯は SwiftUI を積極採⽤している。 アプリケーション全体を SwiftUI 化していくのはもう少し先。マルチモ ジュール化なども並⾏しているので、それが落ちてついてから。 新規アプリでは、フルSwiftUI & The Composable Architecture

Slide 25

Slide 25 text

  アクセシビリティ向上に全⼒ 「⾼いアクセシビリティは売れる」 ● 1⼈でも使えない⽅がいると採⽤してもらえない可能性がある ● すべてのユーザーにとって使いやすくなる やり⽅ ● はじめに ○ 「freeeアクセシビリティー‧ガイドライン」を基にモバイル⽤のチェックシー トを作成 ● デザイン段階 ○ 要素の⼤きさや⾊などチェック ● 実装段階 ○ PR ごとに、特にエンジニアとして担保したい箇所をチェック ● QA 段階 ○ VoiceOver などをオンにしてチェック

Slide 26

Slide 26 text

  MobCore Kotlin Multiplatform Mobile の社内ライブラリ。 iOS/Android の両 OS をまたいでコードを共通化。 2020年から開発開始し、iOS/Android 両エンジニアで育てている。 ⽤途 ● API response のモデル ○ API のドキュメント的役割も果たしている ■ OS 間で「えっ!?この property Nullable じゃないの?」みたいなのが避けられる ● ドメインロジック ■ 税額計算 ■ 要素の表⽰条件 ■ ユーザーの権限や設定を考慮した分岐 ● Form モデル(画⾯の⼊⼒内容やそれに伴うロジック)

Slide 27

Slide 27 text

  マルチモジュール化 不要なコードのビルドを避ける環境を作ると同時に機能間‧レイヤー間の依存 関係を整理‧明確化することで以下を⽬指す ● 保守性‧拡張性の向上 ● ビルド速度の改善による開発速度の向上 Android マルチモジュール化済み iOS 現在: 巨⼤な App Target と数個の社内 SwiftPackage というモジュール構成 機能群(feature)ごとに分割していく予定

Slide 28

Slide 28 text

  ⾃分たちで効果測定 リリースした機能の効果検証を⾃分たちでやっている 設計段階で、取得するべきログを PdM と相談して決定し Redash で分析 ⾃分たちで DB の設計‧構造を理解していくことで、さらなるドメイン理解にも つながる

Slide 29

Slide 29 text

  課⾦周りめっちゃすごい 特徴 ● 国内 toB SaaS の中でも有数のプラン数 ● 最⼤ 54,800円/年の⾼額サブスク カオス ● IAP/IAB/web からのクレカ決済など多種多様な⽀払⼿段 ● 1ユーザー でも複数の事業所を持てる ○ どの IAP/IAB で、どの事業所に課⾦してるのかのハンドリングが必要

Slide 30

Slide 30 text

  負債返済へ真摯な姿勢 毎⽇の業務に加えて毎⽉の改善デー(1⽇⾃由に負債返済の⽇)で みんなでガッと対応 最近取り組んでること ● [Android] NonTransitiveR への移⾏ ● [iOS] CocoaPods/Carthage から SPM へ移⾏ ● [iOS] Warning の解消 700over から 100 くらいに減少 ● モバイル専⽤ API への移⾏ ○ 現状 Mobile API は全部で175個!!!

Slide 31

Slide 31 text

  Ruby も書きます! ⾃分たちで Ruby on Rails のコードを書いて API の実装をしている 良い点 ● クライアントからサーバーサイドまで⾃分たちで完結できる ● API に任せられるロジックは API に書こうと思える ● 予想外の API スキーマの変更によるトラブルを減らすことができる

Slide 32

Slide 32 text

  まとめ スマートフォンだけで「だれもが⾃由に経営できる」世界の実現」 そのために、 ● ユーザーを知る ● ユーザーのための開発をする ● 新しい技術を果敢に取り組む ● 負債返済も忘れない

Slide 33

Slide 33 text

No content