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
リポジトリリーディング手法
Search
gessy0129
PRO
February 28, 2024
Technology
0
12
リポジトリリーディング手法
gessy0129
PRO
February 28, 2024
More Decks by gessy0129
See All by gessy0129
◯◯エンジニアになった理由
gessy0129
PRO
0
790
30代エンジニアのキャリアを語る納涼LT!
gessy0129
PRO
0
24
Findy様戦略発表会登壇資料
gessy0129
PRO
0
17
急拡大組織のハードシングス〜100名組織〜
gessy0129
PRO
0
17
ANDPADの攻めと守り
gessy0129
PRO
0
17
急拡大してる組織が新卒採用やってみた
gessy0129
PRO
0
24
Other Decks in Technology
See All in Technology
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
The Rise of LLMOps
asei
9
1.8k
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
200
あなたの知らない Function.prototype.toString() の世界
mizdra
PRO
2
400
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
29
13k
TypeScript、上達の瞬間
sadnessojisan
48
14k
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
210
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
210
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
OS 標準のデザインシステムを超えて - より柔軟な Flutter テーマ管理 | FlutterKaigi 2024
ronnnnn
1
300
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
アプリエンジニアのためのGraphQL入門.pdf
spycwolf
0
110
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Scaling GitHub
holman
458
140k
Statistics for Hackers
jakevdp
796
220k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Designing for Performance
lara
604
68k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Transcript
技術支援に関わる上でリポジトリをど うリーディングしているかについて語 る(仮) 2024/02/22 gessy0129
Yoshiharu Geshi BIRTH: 1983/01/29 BEFORE:ANDPAD NICKNAME:gessy、げっしー LIKE:焼肉、温泉、ハンバーガー、日本酒、ビール OTHER:#墨田区 #浅草 #既婚
#息子 #小学生 #マンション住み #EX-CA #EX-ヤフー #EX-アンドパッド gessy0129
【PR】過去の登壇とか(はてブが励みです) https://www.wantedly.com/companies/forstartups/post_articles/419125 https://levtech.jp/media/article/column/detail_232/ https://logmi.jp/tech/articles/328464 https://flatt.tech/magazine/entry/20230615_andpad_interview https://andpad.connpass.com/event/243436/ https://note.com/ivs19/n/n3ec29dd72f95 https://aws.amazon.com/jp/blogs/startup/cto-night-and-day-2022-nagasaki-day2/ https://www.itmedia.co.jp/news/articles/2206/22/news058.html https://www.itmedia.co.jp/news/articles/2207/04/news030.html
アジェンダ Hackとは リポジトリリーディングについて
Hackとは?
ライフハック 2004年頃、プログラマーの間で広まった仕事術です。人に見せられないくらい簡単なスクリプト や習慣を1日に数回実行することで、 20分、30分と時間を節約し生産性を上げていきます。 元々は、『こんなやり方があったんだね』と驚いたり、『これはいいね』とニヤッとすることをハック と言うんですが、これを繰り返すことで大きな成果となり、人生が変わっていくということで、ライ フハックという言葉が生まれました。 (引用元:デジタル整理スタイル| ライフハッカー堀正岳さんの、小さな習慣で毎日の仕事が楽 になる情報整理術)
◯◯ハック 仕事の効率を高めて、人生を変えよう!
◯◯ハック 仕事の効率を高めて、人生を変えよう! 物事の効率を高めるためのコツ・ノウハウ ex : グロースハック この人はハッカーではなく、クラッカー
PR【synthesia】 冒頭の動画で使わせていただいたサービスです。 社内向け研修動画などがテキスト流し込むだけで作れるという Hackもついでにご紹介でした。
リポジトリリーディングHack
後から参画したPJのソースコードはどこから? Survey 1. ER図から? 2. API仕様書から? 3. config 系のファイルから? 4.
依存関係管理ファイルから? 5. その他? アンケート取ろうと思ったのですが、 会場が見えないので SKIPします
注意! これからお話するのは僕の手法です 絶対にこうすべきという話ではありません 自分だったらどうかな? を思い浮かべながら聞いて下さい
Hack 全てのコードを読もうと思わない 全体を俯瞰しながらポイントを見つける 役割を理解する
全てのコードを読まない 過去の自分の関わったプロジェクトなどを思い浮かべて欲しい 毎日、全てのコードに触ってましたか? いつも触るものって決まってませんでしたか? 全然触ってないものとかありませんでした? ER図も、API仕様書にも言えること 利用頻度や改修頻度が低いものまで熟読して理解する必要はない
全てを読もうと思うと圧倒される どこから手を付けて良いの? 周りのエンジニアなんで読めるの? 凄すぎでは・・・ 量が多すぎて何も理解できない
全体を俯瞰しながら見る 重要ポイントはどこになるのか? 重要ポイントを探す旅をする
重要ポイントを探す旅① CIの実行環境を見る このサービスで使う重要なソフトが全て書いてある
重要ポイントを探す旅② CIで動くJobを見ておく 開発するうえで気にしなければいけないことが載ってる
重要ポイントを探す旅③ CIで動くWorkflowsを見ておく Deployやブランチ運用が書いてあったりする
CI の設定は見れるようになっておこう 日常的に運用すること 開発時に気にしなければいけないこと デプロイ周り ほぼ全てがそこに詰まってる
CI が何も書いてなかったら?
ER図も見てみよう! ER図が生成されていたらラッキーぐらいの温度感でいよう 生成されてなかったとしても、 SchemaSpyとかで数分で作れるので嘆かない! ER図で見るべきポイントはここ
【再掲】全てを読もうと思うと圧倒される どこから手を付けて良いの? 周りのエンジニアなんで読めるの? 凄すぎでは・・・ 量が多すぎて何も理解できない
【再掲】全てを読もうと思うと圧倒される どこから手を付けて良いの? 周りのエンジニアなんで読めるの? 凄すぎでは・・・ 量が多すぎて何も理解できない 全てのテーブル名、カラム名が 表示されてないといけないのは幻想
ER図はここを見よう Relationshipの数が多ければ多いほど重要な情報 プロジェクトの中でどこに重要情報が保存されてるかを理解する
監視ツールを見に行こう
監視ツールで見ること 何をMonitorしてるの? Dashboardにはどんな情報があるのかな? Metricsはどんなものがあるかな? 過去の障害など経験が詰まっていて 気にしておくと安全に開発出来る!
エラートラッキングを見に行こう
ここまで見たらほぼ完璧 サービスの根本や各種ルールなどは一通り理解できてる状態だと思います。 後は、issue に沿って開発をしていきましょう! ドキュメント化されてなかったら あとから来る人のためにOutputとして ドキュメントを残しておきましょう!