Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側...
Search
TVer Inc.
PRO
May 20, 2025
Programming
1.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側 開発組織が向き合う課題とこれから
https://findy.connpass.com/event/352370/
TVer Inc.
PRO
May 20, 2025
More Decks by TVer Inc.
See All by TVer Inc.
TVer Web-based TVのリアーキテクチャ
techtver
PRO
0
170
Pub/Sub で実装するワーカープールパターン - BigQuery リバースETLジョブの並行数制御-
techtver
PRO
0
140
株式会社TVer 会社紹介資料
techtver
PRO
9
120k
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
2.9k
Feature Flagを定義から削除まで 安全に行うために考えたこと
techtver
PRO
0
3.7k
4100万ユーザーを支えるTVer iOSアプリ開発 〜0人から始まったチームのAI活用による挑戦〜
techtver
PRO
1
2.7k
20240710_HR SUCCESS SUMMIT 2024_テーマセッション「エンジニア採用2.0」登壇資料(株式会社TVer_香坂)
techtver
PRO
0
160
採用応募者の個人情報保護の取扱いについて_株式会社TVer
techtver
PRO
0
830
月間4.5億回再生を超える大規模サービス TVer iOSアプリのリアーキテクチャ戦略 - iOSDC2024
techtver
PRO
2
16k
Other Decks in Programming
See All in Programming
Oxcを導入して開発体験が向上した話
yug1224
4
370
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
220
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
1
160
TAKTでAI駆動開発の品質を設計する
j5ik2o
7
1.6k
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
240
Contextとはなにか
chiroruxx
1
390
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
460
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.9k
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.9k
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
570
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
210
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Between Models and Reality
mayunak
4
360
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
880
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
870
Docker and Python
trallard
47
3.9k
A Tale of Four Properties
chriscoyier
163
24k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Transcript
©2025 TVer INC. TVer iOSチームの共通認識の作り方 2025.05.21 小森 英明
株式会社TVer フロントエンド部 iOSエンジニア Findy Job LT
©2025 TVer INC. これまでのTVer iOS・・・
©2025 TVer INC. リアーキテクチャ進行中 • SwiftUI • TCA(swift-composable-architecture) • Swift
Package Managerを活用したマルチモジュール • Atomic Designの導入 • Design Systemの導入 • Unit Test/Snap Shot Test/UI Test/E2E Test
©2025 TVer INC. リアーキテクチャ進行中 Home画面/機能 ※あくまでもイメージ Episode画面/機能 Series画面/機能
旧コード = LegacyAppFeature Home モジュール … ✨ 切り出されたモジュールの中で 新しいアーキテクチャで実装。 一時的に1つのアプリの中に新し いコードと古いコードが混在し た状態でリリース。 旧コード = LegacyAppFeature Home画面/機能 Episode画面/機能 Series画面/機能 Home モジュール ✨ リリース後、新しいモジュール での動作確認が完了次第古い コードを削除していく。詳細な 進め方は後述。 旧コード = LegacyAppFeature Episode画面/機能 Series画面/機能 Episode モジュール Home モジュール ✨ ✨ これを繰り返していくこと で、新しいモジュールに入れ 替えていく。 … … Episode モジュール Home モジュール Series モジュール ✨ ✨ ✨ … 最終的には1つの塊がモジュー ルに分割され、アプリ全体の リアーキテクチャが完了 マルチモジュール構成 + モジュールごとのアップデート
©2025 TVer INC. これまでの歴史 フロントエンド部発足 2023.04 2023.10 iOS内製開発チームの立ち上げ 2024.04 iOS開発の完全内製化が完了
2025.01 社員2名入社
©2025 TVer INC. iOSチームは社員3名+業務委託7名体制 iOSチーム
©2025 TVer INC.
©2025 TVer INC. 正社員が2名加わり、 チームフェーズが大きく変化
©2025 TVer INC. 起こった課題 リアーキテクチャを推進する上で共通認識の統一ができてお らず、コードレビュー時に差し戻しが頻発
©2025 TVer INC. 3つのレビュープロセスを定義
©2025 TVer INC. UI設計レビュー TVerアプリはDesignSystemを導入し ています。 基本的にはFigmaのView階層を意識 して作る方針です。 設計する上でFigmaの示す階層とは 異なる定義で進める場合の連携や
共通デザインコンポーネントを使用 する際に、どのように作るかあるい は利用する上での拡張性についてこ のタイミングで擦り合わせを行いま す。
©2025 TVer INC. Reducer設計レビュー TCAを採用している上で、起きやすい問題 の1つとしてFat Reducerの登場です。 これを未然に防ぐために、Reducerの設計 を事前にして擦り合わせをしています。 実装面での不確実性が高いものに関して
は、実装を進めた上で調整をしていくもの もあります。
©2025 TVer INC. Test設計レビュー 事前にどのようなTestで品質を担 保するか取り決めを行います。 Unit Testはもちろんのこと、開発 する機能によっては動作確認のパ ターンを手厚くして手動テストの
ボリュームを多めにするのか ときには機能開発後に段階的にE2E テストを導入するのかなど考慮で きるように洗い出し、スケジュー ルの確度を高めます。
©2025 TVer INC. フェーズの変化に伴い チーム文化・基準の構築を支える ドキュメントを整備
©2025 TVer INC. コーディング規約 GitHub issueベースで起案し、採択したものをWikiに追記し て更新/改善をしていきます。 SwiftFormatやSwiftLintのruleの追加や削除もGitHub issue ベースで起案しています。
©2025 TVer INC. ADR (Architectural Decision Records) 特殊なコンテキストや例外的な判 断をした場合は判断/選択した理 由を残します。
将来のメンバーがどのような経緯 で判断したのかを追いやすくす る、 そして誰でも過去の意思決定の参 照を効率よくできるようにするの が目的です。
©2025 TVer INC. TIPS 業務上知っていると便利なノウハウなどを記 載します。 こちらは起案制ではないのでメンバーが自己 判断で自由に記載し、 記載後は全体周知をしています。
©2025 TVer INC. 運用してみての所管 チームとしても合意形成をする仕組みが導入できたので円 滑に開発は推進できている。 定性的な評価ではなく定量的に評価をして改善を重ねてい く体制が必要。
©2025 TVer INC. 今後の展望
©2025 TVer INC. より一層スピードと品質の両立を追求していく
©2025 TVer INC. より一層スピードと品質の両立を追求していくために • 開発スピードの向上 • 開発生産性の向上 • ソフトウェア品質の向上
この3軸を定量評価できるようにして、継続的な改善サイクルの確立を目指します。 課題抽出 目標値設定 施策検討 効果測定 評価/改善 サイクルを設けて継続的に実施
None
民放テレビ局がひとつになった テレビの新しい プラットフォーム ドラマ バラエティ アニメ / ヒーロー 報道 /
ドキュメンタリー スポーツ その他 見放題 ¥ 0
None
ご清聴ありがとうございました! ©2025 TVer INC.