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
RECRUIT TECH CONFERENCE 2025 プレイベント【関田】
Search
Recruit
PRO
February 13, 2025
Technology
740
0
Share
RECRUIT TECH CONFERENCE 2025 プレイベント【関田】
2025/2/4に開催したRecruit Tech Conference 2025 プレイベントの関田のLT資料です
Recruit
PRO
February 13, 2025
More Decks by Recruit
See All by Recruit
ストリーム処理基盤のFlink移行検証と適材適所の実践
recruitengineers
PRO
2
48
AI 時代の Platform Engineering
recruitengineers
PRO
2
370
巨大プラットフォームを進化させる「第3のROI」
recruitengineers
PRO
2
3.2k
データ戦略を加速させる プラットフォーム エンジニアリングと進化的アーキテクチャ
recruitengineers
PRO
2
82
まなび領域における生成AI活用事例
recruitengineers
PRO
2
290
AI時代にエンジニアはどう成長すれば良いのか?
recruitengineers
PRO
1
520
AIを用いたカスタマーサポートの業務プロセス・組織変革の実現
recruitengineers
PRO
1
230
問い合わせ自動化の技術的挑戦
recruitengineers
PRO
2
340
「Air ビジネスツールズ」のクライアントサポートにおける生成 AI 活用
recruitengineers
PRO
0
170
Other Decks in Technology
See All in Technology
PHP と TypeScript の型システム比較:AI 時代の「型」は誰のためにあるのか? #frontend_phpcon_do / frontend_phpcon_do_2026
shogogg
1
240
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
1
330
Cloud Run のアップデート 触ってみる&紹介
gre212
0
300
JEP 522 Deep Dive - G1 GC同期コスト削減によるスループット向上を徹底検証&解説
tabatad
1
760
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
210
AI Engineering Summit Tokyo 2026 AIの前に、やることがある 〜医療データ企業の4フェーズ〜
dtaniwaki
0
1.7k
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
490
タクシーアプリ『GO』の実践的データ活用
mot_techtalk
2
130
「コーディング」しない人のための Claude Code 入門 ChatGPT の次の一歩 — 業務に組み込む 育成・共有・自動化
rfdnxbro
2
1.2k
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
900
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
430
Featured
See All Featured
Navigating Team Friction
lara
192
16k
Designing for Timeless Needs
cassininazir
1
250
Ruling the World: When Life Gets Gamed
codingconduct
0
240
Navigating Weather and Climate Data
rabernat
0
210
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
GitHub's CSS Performance
jonrohan
1033
470k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Leo the Paperboy
mayatellez
7
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Mobile First: as difficult as doing things right
swwweet
225
10k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
RailsConf 2023
tenderlove
30
1.5k
Transcript
iOS未経験エンジニアがSwift Concurrencyの検証を行い、 サービスリリースまで行った話 『ホットペッパービューティー』の事例 #iOS開発 #未経験 #SwiftConcurrency プロダクトディベロップメント室 販促領域エンジニアリン グ2ユニット(飲食・ビューティー) ビューティー領域エ ンジニアリング部
ビューティープロダクト開発2グループ 関田 陸 RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night-
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- #iOS開発、#未経験、#SwiftConcurrency iOS未経験エンジニアが Swift
Concurrencyの検証を行い、 サービスリリースまで行った話 『ホットペッパービューティー』の事例
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- 関田 陸 ゴルフ⛳・MLB観戦⚾・旅行✈
経歴 / Career 2023年4月に新卒として入社し、3ヶ月 間の研修を経てホットペッパービュー ティーのiOSチームに配属 趣味 / Hobbies プロダクトディベロップメント室 販促領域エンジ ニアリング2ユニット(飲食・ビューティー) ビューティー領域エンジニアリング部 ビュー ティープロダクト開発2グループ
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- Agenda 1. プロダクトついて
2. Swift Concurrency導入の背景 3. Swift Concurrency導入検証と振り返り 4. まとめ
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- Agenda 1. プロダクトついて
2. Swift Concurrency導入の背景 3. Swift Concurrency導入検証と振り返り 4. まとめ
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- - 国内最大級のヘアサロン・リラク&ビューティーサロンの検索・予約サイト ホットペッパービューティー
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- iOSプロダクトの規模感 画面数 API数
コード行数 循環複雑度 認知複雑度 150本以上 20万行以上 高い(1.9万以上) 高い(1.1万以上) ※複雑度は静的分析コード解析ツールにてプロダクト全体の値を参照 100画面以上 - 規模が大きく、複雑度が高い → 「コーディングコスト」「コード認知コスト」が高い🔥
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- Agenda 1. プロダクトついて
2. Swift Concurrency導入の背景 3. Swift Concurrency導入検証と振り返り 4. まとめ
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- プロダクトの課題解決に貢献できていなかった・・・ - 未経験だったので、とにかく目の前の案件をこなすことで必死だったが、
中長期改善プロジェクトに携わることでプロダクトの課題を知った - とりあえず、小さい分野でいいのでチームで自分が一番詳しいと言える分野を 作り、プロダクト課題への解像度を上げようと思った → まずは、Swift言語の最新機能をキャッチアップしていくことに!
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- やったこと - Swift5.5〜5.9までの機能を洗い出して、
プロダクトに活かせるものはないか検討する - その中で、プロダクトの課題を解決できるものを採用する - コーディングコストの削減 - コード可読性の向上
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- 目的に照らし合わせながら取捨選択 コーディングコスト コード認知コスト
メンテナンス性 コード減少量 Swift Concurrency 🔥
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- Swift Concurrencyとは? -
Swift5.5から導入された新しい並行処理モデル - より安全で簡単な非同期処理のコードを書くことができる - async / await / actor など
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- なぜSwift Concurrencyが良いのか クロージャを用いた非同期処理
- クロージャを使用した非同期処理により、 コールバック地獄になりやすい - ネストが深く、可読性が低い - クロージャを呼び忘れても、コンパイルが 通ってしまう
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- なぜSwift Concurrencyが良いのか Swift
Concurrencyを用いた非同期処理 - クロージャを使わないのでネストが減り、 可読性が高い - Actorを使うことでデータ競合を防ぐこと ができる
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- Agenda 1. プロダクトついて
2. Swift Concurrency導入の背景 3. Swift Concurrency導入検証と振り返り 4. まとめ
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- やることの整理 - 2画面で検証する
- どの画面で検証するかを検討する - 実装・リリースする - 目的が達成できているかを確認する
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- 画面選定 - (MUST)検証フェーズなので
- ①大きな障害が起こることを避けたい - ②他の案件への影響を避けたい - ③修正の変更範囲を小さくしたい - (WANT)改修頻度が高い
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- 実装 Before After
ネストが減り、 直感的にコードが 読みやすくなった
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- 評価 ※検証した画面の1ファイルあたりの比較 循環複雑度
50%Down↓ 認知複雑度 75%Down↓ プロダクト課題に貢献できた
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- Agenda 1. プロダクトついて
2. Swift Concurrency導入の背景 3. Swift Concurrency導入検証と振り返り 4. まとめ
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- まとめ - Swift
Concurrencyを導入することで複雑度を下げることができた - また、個人としても小さい分野でもチームで1番詳しい領域を作ることで、 プロダクトへの貢献もできるし、自信にも繋がった - 今後は他画面にも順次展開していきたい
RECRUIT TECH CONFERENCE 2025 プレイベント -LT Night- メッセージ 未経験エンジニアは小さい分野でもいいので、 自分が1番詳しいと言えるような専門知識を身につけよう!