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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Recruit
PRO
February 13, 2025
Technology
0
710
RECRUIT TECH CONFERENCE 2025 プレイベント【関田】
2025/2/4に開催したRecruit Tech Conference 2025 プレイベントの関田のLT資料です
Recruit
PRO
February 13, 2025
Tweet
Share
More Decks by Recruit
See All by Recruit
まなび領域における生成AI活用事例
recruitengineers
PRO
2
150
AI時代にエンジニアはどう成長すれば良いのか?
recruitengineers
PRO
1
250
AIを用いたカスタマーサポートの業務プロセス・組織変革の実現
recruitengineers
PRO
1
140
問い合わせ自動化の技術的挑戦
recruitengineers
PRO
2
240
「Air ビジネスツールズ」のクライアントサポートにおける生成 AI 活用
recruitengineers
PRO
0
100
AI活用のためのアナリティクスエンジニアリング
recruitengineers
PRO
2
140
SaaS事業のデータマネジメント事例
recruitengineers
PRO
0
130
Kaggleで鍛えたスキルの実務での活かし方 競技とプロダクト開発のリアル
recruitengineers
PRO
1
450
LLM のプロダクト導入における開発の裏側と技術的挑戦
recruitengineers
PRO
1
180
Other Decks in Technology
See All in Technology
スピンアウト講座06_認証系(API-OAuth-MCP)入門
overflowinc
0
1.3k
Zephyr(RTOS)でOpenPLCを実装してみた
iotengineer22
0
110
The Rise of Browser Automation: AI-Powered Web Interaction in 2026
marcthompson_seo
0
310
PostgreSQL 18のNOT ENFORCEDな制約とDEFERRABLEの関係
yahonda
0
130
SSoT(Single Source of Truth)で「壊して再生」する設計
kawauso
2
370
Phase10_組織浸透_データ活用
overflowinc
0
1.8k
脳が溶けた話 / Melted Brain
keisuke69
1
1.1k
How to install a gem
indirect
0
1.7k
【PHPerKaigi2026】OpenTelemetry SDKを使ってPHPでAPMを自作する
fendo181
1
300
「捨てる」を設計する
kubell_hr
0
360
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
2
760
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
340
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
How to build a perfect <img>
jonoalderson
1
5.3k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
480
Designing for Performance
lara
611
70k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
150
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
sira's awesome portfolio website redesign presentation
elsirapls
0
200
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
860
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番詳しいと言えるような専門知識を身につけよう!