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
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
230
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
130
Contextとはなにか
chiroruxx
1
390
Lessons from Spec-Driven Development
simas
PRO
0
240
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.7k
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.6k
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
330
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
230
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
190
Creating Composable Callables in Contemporary C++
rollbear
0
180
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
780
はてなアカウント基盤 State of the Union
cockscomb
1
1.2k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
210
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
Making Projects Easy
brettharned
120
6.7k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
880
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
400
Typedesign – Prime Four
hannesfritz
42
3.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
550
The Mindset for Success: Future Career Progression
greggifford
PRO
0
370
AI: The stuff that nobody shows you
jnunemaker
PRO
8
760
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.