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
Yuichi Sugiyama
PRO
June 26, 2019
Technology
0
1.6k
モブプロはいいぞ
Yuichi Sugiyama
PRO
June 26, 2019
Tweet
Share
More Decks by Yuichi Sugiyama
See All by Yuichi Sugiyama
サイボウズ と Garoon と The PHP Foundation と 私 / Cybozu and Garoon and The PHP Foundation and me
oogfranz
PRO
1
370
可能な限り確実にmkdirを成功させるには / Make mkdir
oogfranz
PRO
0
350
サイボウズ #Garoon 開発チームの 「 完成度低いの歓迎LT大会 」 PHPerKaigi出張版 / Low quality LT in PHPerKaigi 2023
oogfranz
PRO
0
440
20年ものの巨大プロダクトをKubernetesに移行している話 後日談/Garoon on Kubernetes after talk
oogfranz
PRO
0
420
20年ものの巨大プロダクトをKubernetesに移行している話/Garoon on Kubernetes
oogfranz
PRO
0
310
PHPアプリケーションだってモニタリングしたい / Monitoring PHP application
oogfranz
PRO
1
490
効果的な静的解析の CI導入パターンを求めて / Great static analysis with CI
oogfranz
PRO
3
3.2k
Dev-meets-Ops
oogfranz
PRO
1
830
GitHub力の低い僕でも、 OSSコントリビュートできたワケ / GitHub Power
oogfranz
PRO
1
430
Other Decks in Technology
See All in Technology
地理空間データ可視化・解析・活用ソリューション Pacific Spatial Solutions (PSS)
pacificspatialsolutions
0
110
開発パフォーマンスを最大化するための開発体制
ham0215
2
230
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
140
KubeCon EU 2024 Recap “Kubernetes Policy Time Machine: Where to Next?”
ryysud
0
210
MLOpsの「壁」を乗り越える、LINEヤフーの Data Quality as Code
lycorptech_jp
PRO
5
460
FrontDoorとWebAppsを組み合わせた際のリダイレクト処理の注意点
kenichirokimura
1
500
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
200
VS CodeでAWSを操作しよう
smt7174
7
1.6k
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
0
160
アクセシビリティを考慮したUI/CSSフレームワーク・ライブラリ選定
yajihum
2
1k
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
2.1k
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
290
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
20
1.9k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Designing with Data
zakiwarfel
96
4.8k
The Cult of Friendly URLs
andyhume
74
5.7k
The Brand Is Dead. Long Live the Brand.
mthomps
49
28k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
30
6k
Optimising Largest Contentful Paint
csswizardry
8
2.4k
Being A Developer After 40
akosma
57
580k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
A Philosophy of Restraint
colly
197
16k
Producing Creativity
orderedlist
PRO
337
39k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
Transcript
Ϟϒϓϩ͍͍ͧ Cybozu ਿࢁ ༞Ұ @oogFranz
Who am I • ਿࢁ ༞Ұ @oogFranz • αΠϘζ5ΤϯδχΞ •
େاۀ͚άϧʔϓΣΞGaroonΛ࡞ͬͯΔʢPHP 7.2) • ෳۀδϟζϛϡʔδγϟϯ@MASHݭָஂ
• PG/QAࠞ߹εΫϥϜ։ൃνʔϜ • ϓϩάϥϛϯάಘҙͳਓ • ςετઃܭ͕ಘҙͳਓ νʔϜฤ 1( 1( 1(
2" 2"
ҎલͷλεΫͷਐΊํ(ྫ) λεΫ" ࣮ λεΫA λεΫB λεΫC λεΫ" ࣮ λεΫ# ࣮
λεΫ" ςετ λεΫ# ςετ λεΫ$ ࣮ λεΫ$ ςετ 1( 1( 1( 2" 2"
ҎલͷλεΫͷਐΊํ(ྫ) λεΫ" ࣮ λεΫA λεΫB λεΫC λεΫ" ࣮ λεΫ# ࣮
λεΫ" ςετ λεΫ# ςετ λεΫ$ ࣮ λεΫ$ ςετ 1( 1( 1( 2" 2"
ҎલͷλεΫͷਐΊํ(ྫ) λεΫ" ࣮ λεΫA λεΫB λεΫC λεΫ" ࣮ λεΫ# ࣮
λεΫ" ςετ λεΫ# ςετ λεΫ$ ࣮ λεΫ$ ςετ 1( 1( 1( 2" 2" ࠷ߴͷฒྻͩʂ
ͲΜͳ෩ʹਐΉͷ͔ λεΫ" ࣮ λεΫ" ࣮ ΅͘ 1( λεΫ# ࣮ 1(
ϨϏϡʔ͓ئ͍͠·͢ʂ
λεΫ" ࣮ λεΫ" ࣮ ΅͘ 1( λεΫ# ࣮ 1( ϨϏϡʔ͓ئ͍͠·͢ʂ
ࠓͬͯΔ࣮ऴΘͬͨΒ ϨϏϡʔ͠·͢Ͷʂ ͲΜͳ෩ʹਐΉͷ͔
λεΫ$ ࣮ λεΫ" ࣮ ΅͘ 1( λεΫ# ࣮ 1( ͦΕ·ͰλεΫCΖʂ
ࠓͬͯΔ࣮ऴΘͬͨΒ ϨϏϡʔ͠·͢Ͷʂ λεΫ" ϨϏϡʔ ͲΜͳ෩ʹਐΉͷ͔
λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( ࣮2ऴΘ͔ͬͨΒ ϨϏϡʔΑΖ͘͠ʂ λεΫ"
ϨϏϡʔ λεΫ" ϨϏϡʔ ࣮1ϨϏϡʔ͠·͢Ͷʂ ͲΜͳ෩ʹਐΉͷ͔
࢝·ΔϨϏϡʔ߹ઓ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ" ϨϏϡʔ
λεΫ" ϨϏϡʔ ࣮1Ͱɺ˓˓ͱ××͍ͯͩ͘͠͞ ࣮1ͱ࣮2Ͱ ༳Ε͕͋ΔΜͰ͚͢Ͳɺ Ͳ͏͠·͠ΐ͏ɻɻɻʁ ࠓճ͏ॻ͍ͯ͠·ͬͨͷͰ ͠ΐ͏͕ͳ͍Ͱ͕͢ɺ ࣮1ผͷઃܭͷํ͕ ྑ͔ͬͨͰ͢Ͷ
࢝·ΔϨϏϡʔ߹ઓ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ" ϨϏϡʔ
λεΫ" ϨϏϡʔ ࣮1Ͱɺ˓˓ͱ××͍ͯͩ͘͠͞ ࠓճ͏ॻ͍ͯ͠·ͬͨͷͰ ͠ΐ͏͕ͳ͍Ͱ͕͢ɺ ࣮1ผͷઃܭͷํ͕ ྑ͔ͬͨͰ͢Ͷ ޙ͔ΒΘ͔ΔೝࣝͷζϨ ࣮1ͱ࣮2Ͱ ༳Ε͕͋ΔΜͰ͚͢Ͳɺ Ͳ͏͠·͠ΐ͏ɻɻɻʁ
࢝·ΔϨϏϡʔ߹ઓ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ" ϨϏϡʔ
λεΫ" ϨϏϡʔ ࣮1Ͱɺ˓˓ͱ××͍ͯͩ͘͠͞ খ͘͞ͳ͍αϯΫίετ ࠓճ͏ॻ͍ͯ͠·ͬͨͷͰ ͠ΐ͏͕ͳ͍Ͱ͕͢ɺ ࣮1ผͷઃܭͷํ͕ ྑ͔ͬͨͰ͢Ͷ ࣮1ͱ࣮2Ͱ ༳Ε͕͋ΔΜͰ͚͢Ͳɺ Ͳ͏͠·͠ΐ͏ɻɻɻʁ
࢝·ΔϨϏϡʔ߹ઓ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ" ϨϏϡʔ
λεΫ" ϨϏϡʔ ࣮1Ͱɺ˓˓ͱ××͍ͯͩ͘͠͞ ࠓճ͏ॻ͍ͯ͠·ͬͨͷͰ ͠ΐ͏͕ͳ͍Ͱ͕͢ɺ ࣮1ผͷઃܭͷํ͕ ྑ͔ͬͨͰ͢Ͷ େ͖͍εΠονϯάίετ λεΫC్த·ͰਐΜͰ͚ͨͲɺ Ͳ͜·Ͱ͔ͬͨΕͨɻɻɻ ࣮1ͱ࣮2Ͱ ༳Ε͕͋ΔΜͰ͚͢Ͳɺ Ͳ͏͠·͠ΐ͏ɻɻɻʁ
࢝·ΔϨϏϡʔ߹ઓ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ" ϨϏϡʔ
λεΫ" ϨϏϡʔ ࣮1Ͱɺ˓˓ͱ××͍ͯͩ͘͠͞ ࠓճ͏ॻ͍ͯ͠·ͬͨͷͰ ͠ΐ͏͕ͳ͍Ͱ͕͢ɺ ࣮1ผͷઃܭͷํ͕ ྑ͔ͬͨͰ͢Ͷ λεΫਐΉɺ͞ΕͲऴΘΒͣ ࣮1ͱ࣮2Ͱ ༳Ε͕͋ΔΜͰ͚͢Ͳɺ Ͳ͏͠·͠ΐ͏ɻɻɻʁ
͜͜Ͱ͏ҰਓͷPG ͕ݴ͍·ͨ͠ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ"
ϨϏϡʔ λεΫ" ϨϏϡʔ
͜͜Ͱ͏ҰਓͷPG ͕ݴ͍·ͨ͠ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ"
ϨϏϡʔ λεΫ" ϨϏϡʔ λεΫ#ͣͬͱҰਓͰ ͚ͬͯͨͲɺͲϋϚΓͯ͠Δ ॿ͚ͯ
͜͜Ͱ͏ҰਓͷPG ͕ݴ͍·ͨ͠ λεΫ$ ࣮ ΅͘ 1( λεΫ# ࣮ 1( λεΫ"
ϨϏϡʔ λεΫ" ϨϏϡʔ λεΫ#ͣͬͱҰਓͰ ͚ͬͯͨͲɺͲϋϚΓͯ͠Δ ॿ͚ͯ ڞ༗͞Εͳ͍ϐϯν
ਓ͕ؒϚϧνλεΫ͕ۤखͳΑ͏ʹɺ νʔϜϚϧνλεΫۤख
ϞϒΛͨ͠ λεΫ" ࣮ λεΫA λεΫB λεΫC λεΫ" ࣮ λεΫ# ࣮
λεΫ" ςετ λεΫ# ςετ λεΫ$ ࣮ λεΫ$ ςετ 1( 1( 1( 2" 2"
ϞϒͰྑ͔ͬͨ͜ͱ • ΈΜͳͰҙࢥܾఆ͢ΔͷͰɺೝࣝͷζϨ͕΄΅0ʹ • ʮࠓճॻ͍ͪΌͬͨͷͰ͠ΐ͏͕ͳ͍Ͱ͕͢~ʯ ͱ͍͏ϨϏϡʔ͕ͳ͘ͳͬͨ • λεΫ͕Ұͭͣͭண࣮ʹऴΘΔΑ͏ʹͳΓɺ εΠονϯάίετগͳ͘ͳͬͨ •
ҰਓͰղܾࡦΛ͍ͬͯΕ͍͍ͷͰɺ ϋϚΔ͕࣌ؒݮͬͨ
QAϝϯόʔͱϞϒ • ςετઃܭ࣌Ͱͳ͘ɺ ࣮࣌ʹ༷ͷೝࣝ߹Θ͕ͤͰ͖Δ • ༷ͷ͕࣮݀࣌ʹΘ͔Δ • ςετઃܭʹඞཁͳใڞ༗͕ઌʹͰ͖Δ • ςετϞϒͰ͢Δͱɺෆ۩߹ൃݟ͔Β
վम·Ͱ͕ര
ϞϒͰٯʹਏ͍͜ͱ • ΊͪΌͪ͘ΌർΕΔ • ϞϒதΞυϨφϦϯ͕ग़ͯΔ • ʮ͋ΕɺɺɺʁࠓԶԿͯ͠ͳ͘ͳ͍ʁʯ Έ͍ͨͳλΠϛϯά͕Ͱ͖Δ • ָ͍͠λεΫϞϒͰָ͠͞ഒ͕ͩɺ
ਏ͍λεΫϞϒͰਏ͕͞ഒʹͳΔ
ϞϒͰਐΊ͍ͯ͘ʹ • ٳܜΛ͔ͬ͠ΓͱΔʢ1࣌ؒʹ10͘Β͍ʣ • ߹ʹΑͬͯ2ϥΠϯϞϒΛ͢Δ • ৬Λਪ͢Δ • ۜͷؙͰͳ͍ͷͰ ༻๏༻ྔΛकͬͯదʹ͍·͠ΐ͏
·ͱΊ • ਓ͕ؒϚϧνλεΫ͕ۤखͳΑ͏ʹɺ νʔϜϚϧνλεΫۤख • ೝࣝͷζϨɾαϯΫίετɾεΠονϯάί ετΛݮΒ͢ͷʹϞϒϓϩཱͭ • ۜͷؙͰͳ͍ͷͰ༻๏༻ྔΛक͍ͬͯ ·͠ΐ͏ʂ