Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to Visualize & Share Project Status
Search
LINE Developers
October 23, 2019
Programming
4
900
How to Visualize & Share Project Status
2019/10/23に開催された「愛されるプロダクト開発のススメ」での登壇資料です
LINE Developers
October 23, 2019
Tweet
Share
More Decks by LINE Developers
See All by LINE Developers
LINEスタンプのSREing事例集:大きなスパイクアクセスを捌くためのSREing
line_developers
3
2.4k
Java 21 Overview
line_developers
6
1.2k
Code Review Challenge: An example of a solution
line_developers
1
1.5k
KARTEのAPIサーバ化
line_developers
1
590
著作権とは何か?〜初歩的概念から権利利用法、侵害要件まで
line_developers
5
2.2k
生成AIと著作権 〜生成AIによって生じる著作権関連の課題と対処
line_developers
3
2.3k
マイクロサービスにおけるBFFアーキテクチャでのモジュラモノリスの導入
line_developers
9
3.7k
A/B Testing at LINE NEWS
line_developers
3
1k
LINEのサポートバージョンの考え方
line_developers
2
1.4k
Other Decks in Programming
See All in Programming
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
660
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
210
connect-python: convenient protobuf RPC for Python
anuraaga
0
400
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
810
React Native New Architecture 移行実践報告
taminif
1
150
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
110
AIコーディングエージェント(Gemini)
kondai24
0
210
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
220
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
130
WebRTC と Rust と8K 60fps
tnoho
2
2k
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
400
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Unsuck your backbone
ammeep
671
58k
How to Ace a Technical Interview
jacobian
280
24k
Designing for humans not robots
tammielis
254
26k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Done Done
chrislema
186
16k
Balancing Empowerment & Direction
lara
5
800
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Speed Design
sergeychernyshev
33
1.4k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
A Tale of Four Properties
chriscoyier
162
23k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
)PXUP7JTVBMJ[F4IBSF1SPKFDU4UBUVT -*/&$SFBUPST4UVEJPDBTFTUVEZ LINE Fukuoka 3 2019.10.23
Profile Image LINE Fukuoka 3 6.".* .",050 !VNBLP[
-*/& $SFBUPST 4UVEJP &OHJOFFSJOH .BOBHFS .PCJMF "OESPJE J04 &OHJOFFS !`z
$SFBUPST4UVEJP εϚʔτϑΥϯ͔Β-*/&ελϯϓ͕ ؆୯ʹ࡞ΕΔ ࡱͬͨࣸਅΛՃͯ͠ελϯϓʹͰ͖Δ ελϯϓͷ৹ࠪਃൢച͕Ͱ͖Δ IUUQTDSFBUPSMJOFNFKBTUVEJP
-*/&45:-& 8IBUJT808 ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM 4UBZB4UFQ"IFBE &OKPZUIF$IBMMFOHFT 01 02 03 04
05 Agenda
.JTTJPO -*/&45:-& .*44*0/ 7"-6& -*/&45:-&
$-04*/(5)&%*45"/$& ࢲͨͪͷϛογϣϯɺੈքதͷਓͱਓɺਓͱใɾαʔϏεͱͷڑΛॖΊΔ͜ͱͰ͢ɻ .*44*0/ -*/&45:-&
808 808ʮϢʔβʔΛײಈͤ͞ΔॳΊͯͷମݧʯͰ͋ΓɺʮࢥΘͣ༑ͩͪʹڭ͑ͨ͘ͳΔΑ͏ͳڻ͖ʯͷ͜ͱͰ͢ɻ 7"-6& -*/&45:-&
-*/&45:-& 6TFST3VMF શͯͷݪɺϢʔβʔχʔζ 4UBZB4UFQ"IFBE ᘳ͞ΑΓɺ·ͣ౿Έग़͢༐ؾ 1FSGFDU%FUBJMT ٻ͖͢ʮࢴҰॏʯͷҧ͍ "MXBZT%BUBESJWFO ײ֮Ͱͳ͘ɺσʔλʹࣄ࣮Λ৴͡Δ #VJME-FBOBOE&YDFQUJPOBM5FBNT
࠷ߴΛࢦ͢ɺগਫ਼ӶͷνʔϜ 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOH ΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM ಉ͡ΰʔϧΛࢦ͠ɺಉظ͠ଓ͚Δ 8PSL*OUFOTFMZBOE#F'PDVTFE తͳ͖ʮҰੜݒ໋ʯɺ͍ͪΜةݥ 1SPCMFNGJOEJOH 4PMVUJPONBLJOH ʮͰ͖ͳ͍ʯ͔ΒʮͰ͖ΔʯΛͭ͘Δ (P#SBWF/P'FBS/P3FHSFUT ੈքΛม͑ΔͷɺେͰ༐ؾ͋Δઓ &OKPZUIF$IBMMFOHFT ϫΫϫΫ͠ͳ͚Εɺࣄ͡Όͳ͍ -*/&45:-&
ԿΛϢʔβʔʹಧ͚Δ͖͔ʁ ଟ͘ੜ·ΕΔΞΠσΟΞͷத͔ΒɺͲͷΞΠσΟΞʹ808͕͋Δͷ͔Λ͍͔͚ɺऔࣺબ͢Δɻ 8IBUJT808
-*/&45:-& 8IBUJT808 6TFST3VMF શͯͷݪɺϢʔβʔχʔζ 4UBZB4UFQ"IFBE ᘳ͞ΑΓɺ·ͣ౿Έग़͢༐ؾ 1FSGFDU%FUBJMT ٻ͖͢ʮࢴҰॏʯͷҧ͍ "MXBZT%BUBESJWFO ײ֮Ͱͳ͘ɺσʔλʹࣄ࣮Λ৴͡Δ
#VJME-FBOBOE&YDFQUJPOBM5FBNT ࠷ߴΛࢦ͢ɺগਫ਼ӶͷνʔϜ 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOH ΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM ಉ͡ΰʔϧΛࢦ͠ɺಉظ͠ଓ͚Δ 8PSL*OUFOTFMZBOE#F'PDVTFE తͳ͖ʮҰੜݒ໋ʯɺ͍ͪΜةݥ 1SPCMFNGJOEJOH 4PMVUJPONBLJOH ʮͰ͖ͳ͍ʯ͔ΒʮͰ͖ΔʯΛͭ͘Δ (P#SBWF/P'FBS/P3FHSFUT ੈքΛม͑ΔͷɺେͰ༐ؾ͋Δઓ &OKPZUIF$IBMMFOHFT ϫΫϫΫ͠ͳ͚Εɺࣄ͡Όͳ͍
5ZQFPG*EFB 8IBUJT808 6TFS/FFET Ϣʔβʔχʔζ %BUB σʔλ 3FTFBSDI ݚڀ 4VHHFTUJPO ఏҊ
6TFST3VMFશͯͷݪɺϢʔβʔχʔζ 8IBUJT808 6TFS/FFET Ϣʔβʔχʔζ %BUB σʔλ 3FTFBSDI ݚڀ 4VHHFTUJPO ఏҊ
"MXBZT%BUBESJWFOײ֮Ͱͳ͘ɺσʔλʹࣄ࣮Λ৴͡Δ 8IBUJT808 6TFS/FFET Ϣʔβʔχʔζ %BUB σʔλ 3FTFBSDI ݚڀ 4VHHFTUJPO ఏҊ
BI
1SPCMFNGJOEJOH 4PMVUJPONBLJOH ʮͰ͖ͳ͍ʯ͔ΒʮͰ͖ΔʯΛͭ͘Δ 8IBUJT808 6TFS/FFET Ϣʔβʔχʔζ %BUB σʔλ 3FTFBSDI ݚڀ
4VHHFTUJPO ఏҊ
0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOHΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ 8IBUJT808 6TFS/FFET Ϣʔβʔχʔζ %BUB σʔλ 3FTFBSDI ݚڀ 4VHHFTUJPO
ఏҊ
1E. #J[ 1. %FTJHO %FW 2" 8IBUJT808 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOHΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ 4VHHFTUJPO
ఏҊ
1E. #J[ 1. %FTJHO %FW 2" 8IBUJT808 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOHΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ 'FBUVSF
ػೳ Roadmap Meeting Idea 6TFS/FFET Ϣʔβʔχʔζ %BUB σʔλ 3FTFBSDI ݚڀ 4VHHFTUJPO ఏҊ
1E. #J[ 1. %FTJHO %FW 2" 8IBUJT808 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOHΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ 'FBUVSF
ػೳ Product Manager (PdM) Product Backlog 'FBUVSF" 'FBUVSF# 'FBUVSF$
ΈΜͳͰ808ͱԿ͔Λ͍͔͚ͨΒ • Ϣʔβʔχʔζʗσʔλʗࣗ༝ݚڀʗఏҊͱ͍͏෯͍ιʔε͔ΒΞΠσΟΞ͕ू·ΔΑ͏ʹͳͬͨɻ • ಉ͡ϓϩδΣΫτʹܞΘ͍ͬͯͯɺׂ͝ͱʹଊ͑ํ͕ҟͳΔ͜ͱͰɺଟ࠼ͳΞΠσΟΞ͕ू·ΔΑ͏ʹͳͬͨɻ • ू·ͬͨΞΠσΟΞ͔ΒϓϩδΣΫτͷॴʗॴΛཧղ͠ɺνʔϜͰڞ༗Ͱ͖ͨɻ • ٞΛ௨ͯ͠ɺϝϯόʔ͕ಉ͡ϏδϣϯΛඳ͚ΔΑ͏ʹͳͬͨɻ •
ͨͩ͠ɺϓϩμΫτϚωʔδϟʔͷόϥϯεײ͕֮ͱͯॏཁɻ • ·ͨɺ͜ͷϓϩηεΛपظతʹ܁Γฦͯ͠ɺϓϩμΫτόοΫϩάΛཧ͢Δͷॏཁɻ 8IBUJT808
ͲͷΑ͏ʹ808Λ࡞Δ͔ʁ νʔϜ͕ڠۀͯ͠ɺ808ͳ৽ػೳͷϦϦʔεΛࢦ͢ɻ ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM
-*/&45:-& ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM 6TFST3VMF શͯͷݪɺϢʔβʔχʔζ 4UBZB4UFQ"IFBE ᘳ͞ΑΓɺ·ͣ౿Έग़͢༐ؾ 1FSGFDU%FUBJMT ٻ͖͢ʮࢴҰॏʯͷҧ͍ "MXBZT%BUBESJWFO
ײ֮Ͱͳ͘ɺσʔλʹࣄ࣮Λ৴͡Δ #VJME-FBOBOE&YDFQUJPOBM5FBNT ࠷ߴΛࢦ͢ɺগਫ਼ӶͷνʔϜ 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOH ΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM ಉ͡ΰʔϧΛࢦ͠ɺಉظ͠ଓ͚Δ 8PSL*OUFOTFMZBOE#F'PDVTFE తͳ͖ʮҰੜݒ໋ʯɺ͍ͪΜةݥ 1SPCMFNGJOEJOH 4PMVUJPONBLJOH ʮͰ͖ͳ͍ʯ͔ΒʮͰ͖ΔʯΛͭ͘Δ (P#SBWF/P'FBS/P3FHSFUT ੈքΛม͑ΔͷɺେͰ༐ؾ͋Δઓ &OKPZUIF$IBMMFOHFT ϫΫϫΫ͠ͳ͚Εɺࣄ͡Όͳ͍
5FBN4USVDUVSF ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM 5PLZP 1E. #J[ 1. %FTJHO %FW 2"
'VLVPLB
'FBUVSF%FWFMPQNFOU1SPDFTT ϦϦʔε ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM اը σβΠϯ ։ൃ ࣭อূ
*O1MBO *O2" *O%FTJHO 1SPEVDU #BDLMPH 'FBUVSF%FWFMPQNFOU8PSLGMPX ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM %FW #BDLMPH
*O3FWJFX *O%FW &WBMVBUJOH اը σβΠϯ ։ൃ ࣭อূ ϦϦʔε
'FBUVSF%FWFMPQNFOU"TTJHONFOU ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM 1SPEVDU #BDLMPH *O1MBO *O%FTJHO *O3FWJFX %FW #BDLMPH
*O%FW *O2" &WBMVBUJOH 1E. ˔ ˔ ˔ ˔ #J[ ˔ ˔ ˔ 1. ˔ ˔ ˔ %FTJHO ˔ ˔ %FW ˔ ˔ ˔ 2" ˔ ˔
1SPEVDU,BOCBO ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM )JHI -PX 1SJPSJUZ Feature
'FBUVSF
'FBUVSF" 5BTL.BOBHFNFOU ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM 1SPEVDU,BOCBO 1SPKFDU#PBSE 5BTL 'FBUVSF# 5BTL 5BTL
1. %FW %FW *O%FW *O1MBO
1SPKFDU#PBSE ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM FeatureTask 'FBUVSF
5BTL
ϓϩμΫτ͔ΜΜͰݟ͑ΔԽͨ͠Β • νʔϜʗϝϯόʔ͕ԿʹऔΓΜͰ͍Δͷ͔͔Γ͘͢ͳͬͨɻ • ෛՙ͔Γ͘͢ͳͬͨɻ • ։ൃ͍ͯ͠Δ'FBUVSFͷਐ͕͔Γ͘͢ͳͬͨɻ • 'FBUVSFͷ༏ઌॱҐ͕͔Γ͘͢ͳͬͨɻ •
ϝϯόʔશһͰঢ়گΛڞ༗Ͱ͖ΔΑ͏ʹͳͬͨɻ • ͨͩ͠ɺϚχϡΞϧΛ༻ҙͯ͠ɺϓϩμΫτ͔ΜΜͷ͍ํΛ౷Ұ͓ͯ͘͜͠ͱ͕ॏཁɻ ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM
ͲͷΑ͏ʹ808Λಧ͚Δ͔ʁ Ͱ͖Δ͚ͩૣ͘ɺ৽ػೳΛϦϦʔεͯ͠Ϣʔβʔʹ808Λಧ͚Δɻ 4UBZB4UFQ"IFBE
-*/&45:-& 4UBZB4UFQ"IFBE 6TFST3VMF શͯͷݪɺϢʔβʔχʔζ 4UBZB4UFQ"IFBE ᘳ͞ΑΓɺ·ͣ౿Έग़͢༐ؾ 1FSGFDU%FUBJMT ٻ͖͢ʮࢴҰॏʯͷҧ͍ "MXBZT%BUBESJWFO ײ֮Ͱͳ͘ɺσʔλʹࣄ࣮Λ৴͡Δ
#VJME-FBOBOE&YDFQUJPOBM5FBNT ࠷ߴΛࢦ͢ɺগਫ਼ӶͷνʔϜ 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOH ΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM ಉ͡ΰʔϧΛࢦ͠ɺಉظ͠ଓ͚Δ 8PSL*OUFOTFMZBOE#F'PDVTFE తͳ͖ʮҰੜݒ໋ʯɺ͍ͪΜةݥ 1SPCMFNGJOEJOH 4PMVUJPONBLJOH ʮͰ͖ͳ͍ʯ͔ΒʮͰ͖ΔʯΛͭ͘Δ (P#SBWF/P'FBS/P3FHSFUT ੈքΛม͑ΔͷɺେͰ༐ؾ͋Δઓ &OKPZUIF$IBMMFOHFT ϫΫϫΫ͠ͳ͚Εɺࣄ͡Όͳ͍
3FMFBTF5SBJO • ։ൃपظΛϲ݄ʹݻఆ͢Δɻ • 5SBJOͷग़ൃʹؒʹ߹ͬͨ'FBUVSFΛ࣍ճͷ3FMFBTFʹͤΔɻ • 5SBJO͕ग़ൃͨ͠Βɺ2"Λ։࢝͢Δɻ 4UBZB4UFQ"IFBE 'FBUVSF 3FMFBTF
'FBUVSF
+BO 'FC .BS "QS .BZ +VO +VM 'FBUVSF" اը σβΠϯ
։ൃ ࣭อূ ϦϦʔε 'FBUVSF# اը σβΠϯ ։ൃ ࣭อূ ϦϦʔε 'FBUVSF$ اը σβΠϯ ։ൃ ࣭อূ ϦϦʔε 'FBUVSF% اը σβΠϯ ։ൃ ࣭อূ ϦϦʔε 4UBZB4UFQ"IFBE 3FMFBTF5SBJO 3FMFBTF 5SBJO 3FMFBTF 5SBJO 3FMFBTF 5SBJO
σϝϦοτ • ॏཁͳػೳ͕༧ఆ௨Γʹग़ͤͳ͍Մೳੑ͕͋Δɻ • पظ͋Γ͖ͳͷͰɺ̍ϲ݄ʹऩ·Γ͖Βͳ͍ػೳΛແཧΓಥͬࠐΉͱɺσεϚʔνͱͳΔɻ 4UBZB4UFQ"IFBE 3FMFBTF5SBJO
ϝϦοτ • ̍ϲ݄ͱ͍͏͍։ൃपظͳͷͰɺ808ͷ࠷খ୯ҐΛҙࣝ͘͢͠ͳΔɻ • ༏ઌॱҐͷߴ͍࡞ۀׂ͕ΓࠐΜͰɺϑϨΩγϒϧʹ༧ఆΛΈସ͑ΒΕΔɻ • ։ൃͱϦϦʔεεέδϡʔϧͷؔ࿈͕ͳ͘ͳΔͷͰɺػೳ͝ͱʹूத༷ͯ͠ݕ౼ʗ։ൃΛਐΊΒΕΔΑ͏ʹͳΔɻ • ৄࡉʹݟੵΛ࡞ͬͯɺϦϦʔεεέδϡʔϧΛཱͯΔඞཁ͕ͳ͘ͳΔɻ •
ݟੵʹ͋ΔεέδϡʔϧௐͷͨΊͷόοϑΝ͕ͳͤ͘Δɻ 4UBZB4UFQ"IFBE 3FMFBTF5SBJO
ϫΫϫΫ͠ͳ͚Εɺࣄ͡Όͳ͍ ઓΛָ͠Έͳ͕ΒɺѪ͞ΕΔϓϩμΫτΛ։ൃ͠ɺ808Λಧ͚Δɻ ։ൃ͍ͯ͠Δϝϯόʔ͕ͨͪϓϩδΣΫτʗϓϩμΫτ։ൃΛָ͠·ͳ͚Εɺ Ϣʔβʔ͔ΒѪ͞ΕΔϓϩμΫτ։ൃͰ͖ͳ͍ɻ &OKPZUIF$IBMMFOHFT
-*/&45:-& 3FDBQ 6TFST3VMF શͯͷݪɺϢʔβʔχʔζ 4UBZB4UFQ"IFBE ᘳ͞ΑΓɺ·ͣ౿Έग़͢༐ؾ 1FSGFDU%FUBJMT ٻ͖͢ʮࢴҰॏʯͷҧ͍ "MXBZT%BUBESJWFO ײ֮Ͱͳ͘ɺσʔλʹࣄ࣮Λ৴͡Δ
#VJME-FBOBOE&YDFQUJPOBM5FBNT ࠷ߴΛࢦ͢ɺগਫ਼ӶͷνʔϜ 0QFO$PNNVOJDBUJPO 7FSUJDBM%FDJTJPONBLJOH ΦʔϓϯͳٞͱɺϦʔμʔʹΑΔܾஅ ,FFQJO4ZOD "JNJOHGPSUIF4BNF(PBM ಉ͡ΰʔϧΛࢦ͠ɺಉظ͠ଓ͚Δ 8PSL*OUFOTFMZBOE#F'PDVTFE తͳ͖ʮҰੜݒ໋ʯɺ͍ͪΜةݥ 1SPCMFNGJOEJOH 4PMVUJPONBLJOH ʮͰ͖ͳ͍ʯ͔ΒʮͰ͖ΔʯΛͭ͘Δ (P#SBWF/P'FBS/P3FHSFUT ੈքΛม͑ΔͷɺେͰ༐ؾ͋Δઓ &OKPZUIF$IBMMFOHFT ϫΫϫΫ͠ͳ͚Εɺࣄ͡Όͳ͍
THANK YOU