Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Go言語による2年半の新規プロダクト開発とその総括
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
cowsys
July 03, 2018
17k
12
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Go言語による2年半の新規プロダクト開発とその総括
cowsys
July 03, 2018
More Decks by cowsys
See All by cowsys
20180302_酔いどれGCPUG_SearchAPIと、おれたち
cowsys
1
860
Featured
See All Featured
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
680
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Crafting Experiences
bethany
1
340
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
350
The Pragmatic Product Professional
lauravandoore
37
7.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
GraphQLとの向き合い方2022年版
quramy
50
15k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Paper Plane (Part 1)
katiecoart
PRO
2
11k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Transcript
(PݴޠʹΑΔ ͷ৽نϓϩμΫτ։ൃͱ ͦͷ૯ׅ NFSDBSJHP DPXTZT
ࣗݾհ
ࣗݾհ *%DPXTZT ʙגࣜձࣾικ ϝϧΧϦΞοςαʔόαΠυΤϯδχΞ ʙגࣜձࣾϝϧϖΠ
ݸਓతͳςʔϚ w ৴༻Λͯ͠ɺͳΊ Β͔ͳࣾձΛΔˏϝ ϧϖΠ w ਓʑͷੜ׆Λม͑ΔΑ ͏ͳ৽نϓϩμΫτΛ ͭ͘Δ w
͍͍࣌ؒͷա͝͠ํΛ ͍ͨ͠ w ͍͍ࣄΛ͍ͨ͠ w (PͷύϫʔΛ༨͢ͱ͜Ζ ͳ͘ར༻Ͱ͖ΔΑ͏ʹͳ Δ w ($1ͷύϫʔΛ༨͢ͱ͜ Ζͳ͘ར༻Ͱ͖ΔΑ͏ʹ ͳΔ
ࠓ͓͢Δͱ͜Ζ
ࣗݾհ *%DPXTZT ʙגࣜձࣾικ ϝϧΧϦΞοςαʔόαΠυΤϯδχΞ ʙגࣜձࣾϝϧϖΠ ίίͷݟʂ
ϝϧΧϦΞος
ϝϧΧϦΞοςͱʁ w ϝϧΧϦάϧʔϓॳͱͳΔɺϝϧΧϦҎ֎ͷαʔϏε w $$ܥαʔϏε w ݄ࠒ͔Βߏελʔτ w ݄ɹϩʔϯν w
݄Ϋϩʔζ ެࣜϚείοτ χϟος ݘ
ϝϧΧϦΞοςͱʁ w ΤϯδχΞ ϦϙδτϦͷDPOUSJCVUPSϕʔε w αʔόαΠυΤϯδχΞ w J04ΤϯδχΞ w
"OESPJEΤϯδχΞ w ϑϩϯτΤϯυΤϯδχΞ
ϝϧΧϦΞοςͱʁ w ίʔυنɹͰɹɹ͔ɹɹ͍ w ૯13 w "1*$45PPM8FC w J04 w
"OEPSJE w ػೳͯΜ͜Γ w OBUJWFBQQͷελϯμʔυͳػೳҰࣜ w $$ ίϛϡχςΟ 2"
ϝϧΧϦΞοςͱʁ w ϩʔϯνલͷϲ݄લʹKPJO։ൃελʔτ w TU13͔Βϲ݄ޙ w શ͘ͷ(Pݴޠॳ৺ऀ w ׳Ε͠ΜͰ͖ͨݴޠ1)1 w
αʔόαΠυΤϯδχΞͱͯ͠ࢀՃ
͜ͷൃදͰ͓͍͑ͨ͜͠ͱ w શ͘ͷ(Pݴޠॳ৺ऀ͕ w ৽ن։ൃͰϓϩμΫτϦϦʔεલʙϓϩμΫτΫϩʔ ζ·Ͱͷͯ͠Έͯ w ࠷ऴతʹ(PݴޠΛͲ͏ଊ͍͑ͯΔͷ͔ʁ
͜ͷൃදͰ͓͍͑ͨ͜͠ͱ w શ͘ͷ(Pݴޠॳ৺ऀ͕ w ৽ن։ൃͰϓϩμΫτϦϦʔεલʙϓϩμΫτΫϩʔ ζ·Ͱͷͯ͠Έͯ w ࠷ऴతʹ(PݴޠΛͲ͏ଊ͍͑ͯΔͷ͔ʁ (Pݴޠͷ ϝονϟ೩͑Δ
ϙΠϯτબ
೩͑ΔϙΠϯτ TJNQMFͳݴޠ༷ࢥͰɺෳࡶͳΛղܾ͢Δ ίϯϐϡʔλϦιʔεɾ(PݴޠͷπʔϧΩοτΛ ࠷େݶ׆༻ͨ͠ɺ࣮ೳྗͷFNQPXFSNFOU )JHI1FSGPSNBODFͳϓϩάϥϛϯά νʔϜ։ൃʹ͓͚Δ(Pݴޠ
TJNQMFͳ ݴޠ༷ࢥͰ ෳࡶͳΛղܾ͢Δ
ݴޠ༷ͷTJNQMF͞ w ݴޠ༷͕ͱͯബ͍ w ୯७ʹ֮͑Δ͜ͱ͕গͳ͔ͬͨҹ w QVSFͳϩδοΫͦͷͷʹ৮Ε͍ͯΔײ֮ w ॻ͖ຯ͕͍͍ λϥϥο
ಡΈ͍͢ w ಄ͷ$16ͷେ෦ΛϩδοΫهड़ʹ͗ࠐΊͯΔײ֮ w ֊తͳϩδοΫͷදݱ w JOUFSGBDFຒΊࠐΈΛར༻ͨ͠ബ͍ػߏΛͬͯදݱ w ಄ʹೖΕ͓͖ͯ͘ใ͕ίϯύΫτ
ফ
ΩϟονΞοϓ w ϓϩάϥϛϯάݴޠͷ ཧղ w ར༻͍ͯ͠Δ4FSWJDFͷ ཧղ ($1 %# FUD
w ΞʔΩςΫνϟཧղ w αʔϏεݻ༗ͷυϝΠ ϯࣝͷཧղ w Ϟμϯͳ࣮ํࣜཧղ
ΩϟονΞοϓ w ϓϩάϥϛϯάݴޠ w ར༻͍ͯ͠Δ4FSWJDFͷ ཧղ ($1 %# FUD w
ΞʔΩςΫνϟཧղ w αʔϏεݻ༗ͷυϝΠ ϯࣝͷཧղ w Ϟμϯ w w
ফ
ੵΈॏͶ w ඇৗʹʮੵΈॏͶʯ͕ޮ͘ϓϩάϥϛϯάݴޠ w ٸܹʹ࣮ํ͕ࣜมԽ͢ΔΠϝʔδ͕খ͍͞ w ৴པײͷ͋Δɺ༷ʑͳϢʔεέʔεʹରԠͨ͠ඪ४ϥ ΠϒϥϦ w ʮ۪ʹॻ͘ʯͱ͍͏Α͏ͳݴޠࢥ
w 㱺࣮ํ͕ࣜԽ͠ͳ͍Α͏ʹέΞ͞Ε͍ͯΔҹ
ੵΈॏͶ w ͕࣌ؒ͋Δͱ͖ɺ෮श͕ͯΒখ͍͞ίʔυΛॻ͍ͯ ΈΔ͜ͱ͕ଟ͘ͳͬͨ w ✅͑ΔπʔϧΩοτʹͳΔΑ͏ʹɺੵΈ ॏͶ͍͖͍ͯͨؾ͕࣋ͪڧ͍ w ✅ண࣮ʹੵΈॏͶ͍ͯͬͯɺΑΓෳࡶͳΛղ ܾͰ͖ΔΑ͏ʹͳΓ͍ͨ
ফ
ෳࡶͳΛղܾ͢Δ w (Pݴޠͷγϯϓϧͳݴޠ༷Λۦͯ͠ w ͲΕ͚ͩ෯͍ιϦϡʔγϣϯΛ࣮ݱͰ͖Δ͔ w ͲΕ͚ͩෳࡶͳΛղܾͰ͖Δ͔
ෳࡶͳΛղܾ͢Δ ྖҬͷ͞ SBOHF ྖҬͷਂ͞ EFQUI (Pݴޠ͕ΧόʔͰ͖Δ ྖҬ
ෳࡶͳΛղܾ͢Δ <ΤϯδχΞϦϯά͕ΧόʔͰ͖ΔྖҬ> J04 "OESPJE XFC αʔό αΠυ <σβΠϯ͕ΧόʔͰ͖Δ ྖҬ> <ϓϩμΫτϚωδϝϯτ
͕ΧόʔͰ͖ΔྖҬ> ϓϩμΫτͱͯ͠ ղܾ͍ͨ͠ྖҬ
ίϯϐϡʔλ ϦιʔεΛ ࠷େݶ׆༻ͨ͠ ࣮ೳྗͷ FNQPXFSNFOU
ϝϯλϧϞσϧͷมԽ w ʰίϯϐϡʔλϦιʔεɾ(PݴޠͷπʔϧΩοτ ͱࣗࣗͷΞλϚͷ྆ํΛۦͯ͠Ξτϓοτ Λ࠷େԽ͍ͨ͠ʱ w ίϯϐϡʔλɺώτ͕ಘҙͳྖҬΛೝࣝͯ͠׆༻͢ Δ
ίϯϐϡʔλϦιʔεͷ׆༻ w ίϯύΠϧʹΑΔίʔσΟϯά߹ੑͷཪ͚ w ώτ͕߹ੑ͕୲อͰ͖͍ͯͳ͍෦Λ୳͞ͳ͍ɻίϯ ϐϡʔλʹ୳ͯ͠Β͏ w צҧ͍ɺؒҧ͍͕ࠞೖ͘͢͠ϋϚΔͱͱ͜ͱΜ࣌ؒΛϩ ετ w
(Pݴޠಛ༗ͷπʔϧΩοτͷ׆༻ w HPGNU HPJNQPSUT HPWFUͳͲͷίʔυϑΥʔϚολɺίʔ υνΣοΧFUDʜ
*%&Λ׆༻ͨ͠FNQPXFSNFOU w (P-BOE (P-BOE (P-BOE w ίϯύΠϧͷલஈͷνΣοΫػߏͱͯ͠ɺ*%&ͷߏจνΣοΫػೳΛར༻ w ίʔσΟϯάͷαΠΫϧΛΑΓ͘ɻίʔσΟϯάͷϦζϜ͕େ͖͘վળ w
*%&ͷ੩తղੳɺܕʹΑΔڧ͍߹ੑͷ׆༻ w ਖ਼͍͠είʔϓͷγϯϘϧݕࡧɻείʔϓΛݟޡΔ͜ͱ͕ͳ͍ w ϦϑΝΫλϦϯάɻਖ਼͍͠είʔϓͷɺਖ਼͍͠मਖ਼͕Մೳ w ৴པੑͷߴ͍ิ w ଟগͷ࣮εϐʔυϦζϜΛ٘ਜ਼ʹͯ͠Ͱɺ*%&ͷิʹҕͶΔ w ࢥ͍ग़͢λεΫʹ಄ͷ$16Λফඅͤ͞ͳ͍ w ؒҧ͍ͷࠞೖΛۃྗݮΒ͠ɺ࣮ϦζϜΛ҆ఆͤ͞ΔTQFFEVQ
ফ
ϋΠύϑΥʔϚϯεͳ ϓϩάϥϛϯάͷ ඞཁੑ
ϋΠύϑΥʔϚϯεϓϩάϥϛϯά w ϋΠύϑΥʔϚϯεϓϩάϥϛϯάͷඞཁੑʹ֮ ΊΔ w ͖͔͚ͬ w ݄ʹࣾ։࠵͞Εͨ %BWF$IFOFZ͞ ΜʹΑΔ(P5SBJOJOH
w )JHI1FSGPSNBODF(P
Ҿ༻ݩIUUQTHPUBMLTBQQTQPUDPNHJUIVCDPNEBWFDIFOFZIJHI QFSGPSNBODFHPXPSLTIPQIJHIQFSGPSNBODFHP XPSLTIPQTMJEF ϋΠύϑΥʔϚϯεϓϩάϥϛϯά
ϋΠύϑΥʔϚϯεϓϩάϥϛϯά w QPJOUT w ϋʔυΣΞͷੑೳ্ͷӄΓ͕ݱΕ࢝Ί͍ͯΔ w ࠓݱࡏͷϋʔυΣΞʹϚονͨ͠ϓϩάϥϛϯάํࣜʹγϑ τ͢Δඞཁੑ͕͋Δ w ϋʔυΣΞΛ׆༻͠ɺϋΠύϑΥʔϚϯεͳॲཧΛ࣮ݱ
w ϋΠύϑΥʔϚϯεΛग़ͨ͢Ίͷɺ͞·͟·ͳཁ݅Λຬͨ͢ϓ ϩάϥϛϯάݴޠΛར༻͢Δඞཁੑ w 㱺(Pݴޠ
ϋΠύϑΥʔϚϯεϓϩάϥϛϯά w ✅ೲಘײ͕ߴ͘ɺҙຯ߹͍͕େ͖͍ࣔࠦ w ✅αʔϏε͕ղܾ͢ΔྖҬʹΑͬͯɺඇৗʹ େ͖ͳՁΛͭ w গͣͭ͠ͰΑ͍͔Βɺʹ͚͍ͭͨ
νʔϜ։ൃʹ͓͚Δ (Pݴޠ
ΩϟονΞοϓ w ϓϩάϥϛϯάݴޠͷ ཧղ w ར༻͍ͯ͠Δ4FSWJDFͷ ཧղ ($1 %# FUD
w ΞʔΩςΫνϟཧղ w αʔϏεݻ༗ͷυϝΠ ϯࣝͷཧղ w Ϟμϯͳ࣮ํࣜཧղ
ΩϟονΞοϓ w ϓϩάϥϛϯάݴޠ w ར༻͍ͯ͠Δ4FSWJDFͷ ཧղ ($1 %# FUD w
ΞʔΩςΫνϟཧղ w αʔϏεݻ༗ͷυϝΠ ϯࣝͷཧղ w Ϟμϯ w w
ফ
ϒϨͷͳ͍ೝࣝ౷Ұ w ܕγεςϜʹཪ͚͞Εͨڧݻͳ*' w ίϯύΠϧ͕௨͍ͬͯΔݶΓɺίʔσΟϯά্ͷέΞϨεϛε ࠞೖ͠ͳ͍ w JOPVUQBSBN͕໌֬ w ֤छQBSBNΛௐΔඞཁͳ͍
w ࢀরཁૉ͕ଟ͚Εଟ͍΄ͲɺνʔϜͰڧݻͳೝࣝ౷Ұ͕Ͱ͖Δ ͷͰ͔͍ w ਓͷೝࣝΛҰͭʹ͋ΘͤΔͷຊʹқ͕ߴ͍ͷͰɺͰ͔͍
ফ
ͦͷଞ w ϓϩμΫτUFBNͱͯ͠ߋͳΔΞτϓοτΛग़͢ w ফͤͣʹ͑Δ͜ͱ͕Ͱ͖ͨूதྗΛͬͯ w અͰ͖ͨ࣌ؒΛͬͯ w ·ͩ·ͩνʔϜ։ൃʹ͓͚ΔϝϦοτ׆༻ํ๏͋Γͦ͏ w
✅୯ʹݟ͍ͩͤͯͳ͍͚ͩ w ✅ਂ۷Γͯ͠ݟ͚͍ͭͨ
·ͱΊ
͜ͷൃදͰ͓͍͑ͨ͜͠ͱ w શ͘ͷ(Pݴޠॳ৺ऀ͕ w ৽ن։ൃͰϓϩμΫτϦϦʔεલʙϓϩμΫτΫϩʔ ζ·Ͱͷͯ͠Έͯ w ࠷ऴతʹ(PݴޠΛͲ͏ଊ͍͑ͯΔͷ͔ʁ (Pݴޠͷ ϝονϟ೩͑Δ
ϙΠϯτબ
೩͑ΔϙΠϯτ TJNQMFͳݴޠ༷ࢥͰɺෳࡶͳΛղܾ͢Δ ίϯϐϡʔλϦιʔεɾ(PݴޠͷπʔϧΩοτΛ ࠷େݶ׆༻࣮ͨ͠ೳྗͷFNQPXFSNFOU )JHI1FSGPSNBODFͳϓϩάϥϛϯά νʔϜ։ൃʹ͓͚Δ(Pݴޠ
ΤϯδχΞͳΒ೩͑ΔςʔϚͷͣ TJNQMFͳݴޠ༷ࢥͰɺෳࡶͳΛղܾ͢Δ ίϯϐϡʔλϦιʔεɾ(PݴޠͷπʔϧΩοτΛ ࠷େݶ׆༻࣮ͨ͠ೳྗͷFNQPXFSNFOU )JHI1FSGPSNBODFͳϓϩάϥϛϯά νʔϜ։ൃʹ͓͚Δ(Pݴޠ
ࠎͷ͋Δଟ͘ͷςʔϚ ϓϩάϥϛϯάϝϯλϧϞσϧͷ ϙδςΟϒͳӨڹ ফগͳ͘ΞτϓοτΛग़͢
ॳ৺ऀ͔ΒͷελʔτͰ͕ͨ͠ (PݴޠɺͱͯΑ͔ͬͨͧ
࠙ձͰ ͓͠͠·͠ΐ͏ʂ ͋Γ͕ͱ͏ ͍͟͝·ͨ͠