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
新卒1年目がプロジェクトを進めるときにコケたポイント
Search
Ryu-nakayama
March 15, 2024
Technology
1
1.6k
新卒1年目がプロジェクトを進めるときにコケたポイント
2024/3/15「私みたいになるな!」わたしのしくじりLT会 の登壇資料
Ryu-nakayama
March 15, 2024
Tweet
Share
More Decks by Ryu-nakayama
See All by Ryu-nakayama
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
1.6k
期限が近づいてきた!Privacy Manifests対応
ryunakayama
5
9.1k
新卒iOSエンジニアとしてやってきたこと
ryunakayama
0
1.7k
今年学んだ便利ツール_便利技
ryunakayama
0
1.6k
git worktreeを使って複数ブランチを扱いやすくする
ryunakayama
0
2.4k
KMPを使ってみて感じた良いところ・ツラいところ
ryunakayama
0
1.8k
SwiftUIに適した新アーキテクチャの導入に挑む
ryunakayama
2
9.1k
Swiftでテスト時のみ『private』にアクセスする方法
ryunakayama
1
2.4k
Other Decks in Technology
See All in Technology
日本が誇るイタリアのダンスミュージック!? ユーロビートって何??
minorun365
PRO
2
230
Dungeons and Dragons and Rails
joelq
0
250
CloudflareとHonoを使って飲食店のレビューができるLINEアプリを作った
shinaps
1
430
Google Cloudを組織(企業)で運用する時のベストプラクティス × 健康の環境分離戦略 #まるクラ勉強会
yasumuusan
0
180
SLOいつ決めましょう?
abnoumaru
3
840
Google Cloud Next '24 Recap in ZOZO AIにより変わる開発 運用/Development and operation changed by AI
gachimuchiengineer
0
210
汎用ポリシー言語Rego + OPAと認可・検証事例の紹介 / Introduction Rego & OPA for authorization and validation
mizutani
1
170
5分で分かる(かもしれない) Vector engine for OpenSearch Serverless
tsukuboshi
1
420
株式会社EventHub・エンジニア採用資料
eventhub
0
2.1k
B2C、B2B プロダクトマネジメントの違い(および思考の罠) / B2C, B2B PM and reduction fallacy
ykmc09
5
2.5k
技術力の伸ばし方を考える
khirata
0
140
20240516 OpenID TechNight Vol.21 OpenIDファウンデーション・ジャパンの 今後の活動について
oidfj
0
160
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
226
17k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Side Projects
sachag
451
41k
Building Adaptive Systems
keathley
32
1.9k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Typedesign – Prime Four
hannesfritz
36
2.1k
Building Applications with DynamoDB
mza
88
5.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
The Mythical Team-Month
searls
217
42k
Transcript
Chatwork株式会社 モバイルアプリケーション開発部 中山 龍 2024年3月15日 新卒1年目がプロジェクトを進めると きにコケたポイント
自己紹介 中山 龍 (なかやま りゅう) • Chatwork株式会社 ◦ 新卒1年目のiOSエンジニア(21) •
フルリモート勤務で愛知県在住 2 @ryu_develop この会場はモバイル勉強会でたくさんお世話になってい ます
新卒1年目、どんなことした?
新卒1年目でやったこと アプリアップデート通知 PJ 4 Privacy Manifests対応 PJ iOS14ドロップ対応 PJ ルーキー賞
iOSDC登壇 など...
新卒1年目でやったこと アプリアップデート通知 PJ 5 Privacy Manifests対応 PJ iOS14ドロップ対応 PJ ルーキー賞
iOSDC登壇 など... このプロジェクトの中で をお話します • 学んだこと • やらかしたこと
アプリアップデート通知 PJ
• 使用中のアプリよりも新しいアプリがリリースされてい る場合に、アップデートを促す通知を表示する機能 • 初担当のプロジェクト • iOSの実装は基本的に僕1人で担当 ◦ 困ったときには他メンバーのサポートあり プロジェクト概要
7
プロジェクト概要〜進め方〜 8 ア サ イ ン 見 積 も り
仕 様 の 把 握 実 装 レ ビ ュ | マ | ジ 開 発 完 了 各工程がどの時期に完了するか いつのリリースにするか を洗い出し 機能の開発が完了するまで 実装〜マージを繰り返す 動作検証へ
1 期限がまずい!なぜ見積もりが狂った??
何が起きたのか? 見積もりの時点で『各工程がどの時期に完了するか』を洗い出した (開発の最中のチェックポイントが設定されたイメージ) そして実装開始! 実装自体はそれほど遅れなく進めることができていた 10 プロジェクト概要〜進め方〜 から引用
何が起きたのか? 見積もりの時点で『各工程がどの時期に完了するか』を洗い出した (開発の最中のチェックポイントが設定されたイメージ) そして実装開始! 実装自体はそれほど遅れなく進めることができていた だが、チケットを進めていく中で徐々に遅れが出てきた... 11 プロジェクト概要〜進め方〜 から引用
何が起きたのか? 見積もりの時点で『各工程がどの時期に完了するか』を洗い出した (開発の最中のチェックポイントが設定されたイメージ) そして実装開始! 実装自体はそれほど遅れなく進めることができていた だが、チケットを進めていく中で徐々に遅れが出てきた... 12 プロジェクト概要〜進め方〜 から引用 なぜ...?
進捗に遅れが出ていた原因 原因: レビューしていただくのに時間がかかっていた 13 チケットの進め方は以下の通り 実装 → レビュー → (修正
& 再レビュー) → マージ
進捗に遅れが出ていた原因 原因: レビューしていただくのに時間がかかっていた 14 本プロジェクトで自分が実装したコードを iOSチームのメンバーにレビューしていただく 【問題点】 1. レビュアーは自分からのレビュー以外にもいくつかのレビュー依頼を受けている場合がある 2.
レビュアーはこのプロジェクトの担当者ではない チケットの進め方は以下の通り 実装 → レビュー → (修正 & 再レビュー) → マージ
1 レビュアーがいくつかのレビュー依頼を受けている
レビュアーがいくつかのレビュー依頼を受けている 先着順に処理されるので、レビュアーに先着のレビュー依頼があった場合には レビューをしてもらえるまで待ちが発生する 他のチケットを並行して進められる場合には問題にならないのだが、『このチケッ トを終わらせてからでないと次のチケットを進められない』という場合に、問題と なる 16
どうすればよいのか? チケットに着手するときに このチケットのレビューの優先度が高いことを伝える ようにする 例: 17 「今から実装をするこのチケットは〇〇(期限)までに完了させたく、優先度高めでレ ビューしていただけるとありがたいです 」
どうすればよいのか? チケットに着手するときに このチケットのレビューの優先度が高いことを伝える ようにする 18 「このレビュー依頼はそれほど優先度が高くないので、今されている〇〇の作業を優先 していただき、そちらが落ち着いてからでの確認で大丈夫です 」 また、レビュー依頼時にこんな気遣いをするようにもなった... 「レビューをしていただいてる間に、こちらで代わりに進められることがあれば教えて ください 」
2 レビュアーはこのプロジェクトの担当者ではない
レビュアーはこのプロジェクトの担当者ではない 本プロジェクトは自分1人でiOSの実装を担当しているということは、レビュアーは プロジェクトの担当者ではなく... レビュー依頼時にその実装の背景などを伝える必要がある 20 伝える必要のある背景の例 • プロジェクトの内容 • 実装しようとしてる機能の仕様
• なぜこの実装が必要になるのか
どうすればよいのか? プロジェクトを1人で担当する場合にはこの『レビュアーに実装の背景を伝える』と いうのは避けては通れない... → チームでのルールとしてサブ担当という役職をつくることとなった 21 サブ担当の役割 • プロジェクトの内容をキャッチアップする •
前提知識が必要なレビューを担当する • 技術的な相談相手となる
これらの学びを得たこともあり、初担当プロジェクトで開発 した『アプリアップデート通知機能』が無事にリリースされ ました
働くをもっと楽しく、創造的に