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
tatsushim
July 04, 2017
Technology
2
3.2k
コネヒトが考えるサービスづくりに必要な技術とその考え方について
2017/07/04
【TECH PLAY Career Meetup】活躍しているフルスタックエンジニアが語る!サービスづくり勉強会の登壇資料
tatsushim
July 04, 2017
Tweet
Share
More Decks by tatsushim
See All by tatsushim
DockerとAmazon SageMakerで実現した機械学習システムのプロダクション移行
tatsushim
0
27k
コミュニティサービスにおける機械学習のためのアノテーション
tatsushim
0
2.2k
日本のママをコンテナで支える
tatsushim
1
3.1k
コネヒトが考える技術選択の仕方について
tatsushim
0
22k
word2vecで女性向けQ&Aサイトを解析してみた
tatsushim
0
6.3k
独身男性のためのデータドリブン講座
tatsushim
0
6.8k
Other Decks in Technology
See All in Technology
OCI Network Firewall 概要
oracle4engineer
PRO
2
7.9k
セキュアな認可付きリモートMCPサーバーをAWSマネージドサービスでつくろう! / Let's build an OAuth protected remote MCP server based on AWS managed services
kaminashi
3
290
GoでもGUIアプリを作りたい!
kworkdev
PRO
0
130
KMP の Swift export
kokihirokawa
0
350
Git in Team
kawaguti
PRO
3
340
Reflections of AI: A Trilogy in Four Parts (GOTO; Copenhagen 2025)
ondfisk
0
110
AIAgentの限界を超え、 現場を動かすWorkflowAgentの設計と実践
miyatakoji
1
160
「れきちず」のこれまでとこれから - 誰にでもわかりやすい歴史地図を目指して / FOSS4G 2025 Japan
hjmkth
1
270
大規模サーバーレスAPIの堅牢性・信頼性設計 〜AWSのベストプラクティスから始まる現実的制約との向き合い方〜
maimyyym
6
4.1k
Adapty_東京AI祭ハッカソン2025ピッチスライド
shinoyamada
0
270
許しとアジャイル
jnuank
1
140
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
180
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Scaling GitHub
holman
463
140k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Music & Morning Musume
bryan
46
6.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
54
3k
How to Think Like a Performance Engineer
csswizardry
27
2k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.9k
Building Applications with DynamoDB
mza
96
6.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Designing for humans not robots
tammielis
254
26k
Transcript
ίωώτ͕ߟ͑ΔαʔϏεͮ͘Γ ʹඞཁͳٕज़ͱͦͷߟ͑ํʹ͍ͭͯ $POOFIJUP*OD$50!UBUTVTIJN ՈͷຖΛͬͱসإʹɻ 5&$)1-":$BSFFS.FFUVQ
ࣗݾհ ՈͷຖΛͬͱসإʹɻ
͡Ί·ͯ͠ʂ w ίωώτגࣜձࣾ w ڞಉۀऀऔక$50 w ػցֶशΠϯϑϥج൫ͷߏங ౡాୡ࿕ !UBUTVTIJN
ՈͷຖΛͬͱসإʹɻ
ਓͷੜ׆ʹͳͯ͘ͳΒͳ͍ͷΛͭ͘Δ
˞݄࣌ ࡢग़࢈ͨ͠ঁੑ 6ਓʹ1ਓ ݄ؒར༻ऀ 500ສਓ ݄ؒ1ԯPV ݄ؒߘ 100ສ݅Ҏ্ ຊ࠷େڃ ϚϚϦɺຊͰ࠷େڃͷߘΛތΔՈ͚αʔϏεͰ͢
ίωώτ͕ߟ͑ΔαʔϏεͮ͘Γ ʹඞཁͳٕज़ͱͦͷߟ͑ํʹ͍ͭͯ ՈͷຖΛͬͱসإʹɻ
ࠓͷςʔϚͷ֬ೝ
ࠓͷςʔϚͷ֬ೝ ʮϑϧελοΫʯͱʁ
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ ຊ࣭తʹ͍͠
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ ͰͳΜͰʮϑϧελοΫΤϯδχΞʯ ͱ͍͏ϫʔυʹڵຯ͕༙͍ͨͷͰ͠ΐ͏͔ʁ
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ ෯͍ٕज़शಘ͍ͨ͠
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ ͦͷతʁ
ࠓͷςʔϚͷ֬ೝ
ࠓͷςʔϚͷ֬ೝ
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ ϢʔβʔͷͨΊʹ ྑ͍αʔϏεΛͭ͘Δ͜ͱ
ࠓͷςʔϚͷ֬ೝ తʮϢʔβʔͷͨΊʹ ྑ͍αʔϏεΛͭ͘Δ͜ͱʯ ͱ͍͏લఏͰࠓ͓͠·͢
w ਓͷΤϯδχΞͱٕͯ͠ज़େ͖Ͱ͢ w ίʔυॻ͖·͢ w จಡΜͩΓɺࣥච͠·͢ ϢʔβʔͷͨΊʹྑ͍αʔϏεΛͭ͘Δʹʁ
จॻ͖·ͨ͠ IUUQTXXXXBOUFEMZDPNDPNQBOJFTDPOOFIJUPQPTU@BSUJDMFT
Ͱྑ͍αʔϏεΛ࡞ΔͨΊͷඞཁ݅ ϑϧελοΫΤϯδχΞͰͳ͍ͱࢥ͍·͢ ϢʔβʔͷͨΊʹྑ͍αʔϏεΛͭ͘Δʹʁ
ྑ͍αʔϏεΛͭ͘Δ͜ͱʹݶͬͯݴ͑ ෯͍ٕज़Λ͍࣋ͬͯΔ͜ͱͱಉ͔ͦ͡ΕҎ্ʹ େࣄͩͱࢥ͍ͬͯΔ͜ͱ͕ͭ͋Γ·͢ ϢʔβʔͷͨΊʹྑ͍αʔϏεΛͭ͘Δʹʁ
ٕज़Λखஈͱͯ͠ೝ͍ࣝͯ͠Δ͜ͱ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ ೝࣝͯͤ͠Δ͜ͱ αʔϏεͱڞʹͰ͖Δॊೈ͞Λ ࣋ͭ͜ͱ ͭͷେࣄͳ͜ͱ
ٕज़Λखஈͱͯ͠ೝ͍ࣝͯ͠Δ͜ͱ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ ೝࣝͯͤ͠Δ͜ͱ αʔϏεͱڞʹͰ͖Δॊೈ͞Λ ࣋ͭ͜ͱ ͭͷେࣄͳ͜ͱ
ٕज़Λखஈͱͯ͠ೝࣝ͢Δ ՈͷຖΛͬͱসإʹɻ
w ίωώτͷϝϯόʔશһٕज़େ͖Ͱ͢ w ͨͩ͠ɺతϢʔβʔͷͨΊͷྑ͍αʔ ϏεΛͭ͘Δ͜ͱ w ͦͷతΛୡ͢ΔͨΊͷखஈͱͯ͠ߴ͍ ٕज़ྗΛ࣋ͭνʔϜʹͳ͍ͬͯ·͢ ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ
w ϢʔβʔͷͨΊʹٕज़બఆΛߦ͍ͬͯ·͢ w ͱ͖ʹʮͭ͘Βͳ͍ʯͱ͍͏બΛ͠·͢ w ͦ͏͍͏அ͕Ͱ͖ΔνʔϜϝϯόʔͦ͜ αʔϏεͮ͘ΓͰՁ͕͋Γ·͢ ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ
ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ
ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ ϓϩάϥϚͳͷʹ ʮͭ͘Βͳ͍ʯͬͯͲ͏͍͏͜ͱʁ
σΟϨΫλʔɿࠓͷγεςϜʹՃͰɺ$47 σʔλΛు͖ग़͢ػೳΛ͚ͭͯཉ͍͠Μͩɻ ΤϯδχΞɿͳΔ΄Ͳɻྃղʂͱ͜ΖͰ ͦΕͬͯࠓޙͲͷ͘Β͍ͷසͰ͏ͷʁ ྫ͑͜ͷΑ͏ͳձ
σΟϨΫλʔɿ͏ʔΜɺΘ͔Βͳ͍ͳɻͱΓ͋ ͑ͣσʔλݟͯΈ͍ͨͱࢥͬͯɻ ΤϯδχΞɿͳΒநग़͓͔ͯ͘͠ΒɺͦΕͰ Կ͏Α͏ͳΒͦͷػೳΛ͚ͭΔ͍ͬͯ͏ ͷͲ͏͔ͳʁ ྫ͑͜ͷΑ͏ͳձ
σΟϨΫλʔɿ͏ΜɺॆͩΑɻ༗͏ʂ ΤϯδχΞɿྑ͔ͬͨʂ͡Ό͋ͰऴΘΔͷ Ͱ͙͢ʹڞ༗͢ΔͶʂ ྫ͑͜ͷΑ͏ͳձ
w ͜ͷྫͳΒΫΤϦ࣮ߦΛ࣮ߦ͢Δ͚ͩͰ ऴΘΔ w ίʔυΛॻ͍ͯEFQMPZͯ͠ຊ൪ڥʹ61 ͢ΔΑΓૣ͘ऴΘΔ w ίʔυΛॻ͔ͳͯ͘ղܾ͕Ͱ͖Δ ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ
ʮࣗϓϩάϥϚ͔ͩΒʯ ͱ͍͏ΞΠσϯςΟςΟʹͱΒΘΕͣ ϢʔβʔϑΝʔετͳϓϩμΫτΛͭ͘Δ ͨΊʹ͜ͷΑ͏ͳʮͭ͘Βͳ͍ʯͱ͍͏ બΛબΔνʔϜϝϯόʔ ελʔτΞοϓͰαʔϏεΛͭ͘Δ্Ͱ ͱͯوॏͳਓࡐ ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ
ʮࣗϓϩάϥϚ͔ͩΒʯ ͱ͍͏ΞΠσϯςΟςΟʹͱΒΘΕͣ ϢʔβʔϑΝʔετͳϓϩμΫτΛͭ͘Δ ͨΊʹ͜ͷΑ͏ͳʮͭ͘Βͳ͍ʯͱ͍͏ બΛબΔνʔϜϝϯόʔ ελʔτΞοϓͰαʔϏεΛͭ͘Δ্Ͱ ͱͯوॏͳਓࡐ ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ ʮࣗϓϩάϥϚ͔ͩΒʯ ͱ͍͏ΞΠσϯςΟςΟʹͱΒΘΕͣ
ϢʔβʔϑΝʔετͳϓϩμΫτΛͭ͘ΔͨΊʹ ͜ͷΑ͏ͳʮͭ͘Βͳ͍ʯͱ͍͏ બΛબΔνʔϜϝϯόʔ ελʔτΞοϓͰαʔϏεΛͭ͘Δ্Ͱ ͱͯوॏͳਓࡐ
w ͳͥͳΒϦιʔεݶΒΕ͍ͯΔ͔Β w Δ͜ͱࢁ΄Ͳ͋Δ w ৗʹʮΒͳ͍͜ͱʯΛҙࣝ͢Δඞཁ ͕͋Δ ٕज़Λखஈͱͯ͠ೝࣝ͢Δ͜ͱ
ٕज़Λखஈͱͯ͠ೝ͍ࣝͯ͠Δ͜ͱ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ ೝࣝͯͤ͠Δ͜ͱ αʔϏεͱڞʹͰ͖Δॊೈ͞Λ ࣋ͭ͜ͱ ͭͷେࣄͳ͜ͱ
ٕज़Λखஈͱͯ͠ೝ͍ࣝͯ͠Δ͜ͱ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ ೝࣝͯͤ͠Δ͜ͱ αʔϏεͱڞʹͰ͖Δॊೈ͞Λ ࣋ͭ͜ͱ ͭͷେࣄͳ͜ͱ
Βͳ͍͜ͱΛʮΒͳ͍ʯͱ ਖ਼͘͠ೝࣝͯͤ͠Δ͜ͱ ՈͷຖΛͬͱসإʹɻ
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ
ϑϧͯ͢ ελοΫٕज़ ϑϧελοΫͯ͢ͷٕज़ ϑϧελοΫΤϯδχΞ ͯ͢ͷٕज़ʹਫ਼௨ͨ͠ΤϯδχΞ ͦͦϑϧελοΫΤϯδχΞͱʁ ຊ࣭తʹ͍͠
w ʮϑϧελοΫΤϯδχΞʯຊ࣭తʹ ͍͠ w ԾʹͳΕͨͱͯ͠ඞͣ͠ʮશ෦Զ͕ Δʯ͕ྑ͍બͱݴ͑ͳ͍ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ೝࣝͯͤ͠Δ͜ͱ
w ՄೳͳݶΓࣗͷೳྗͷ෯Λ͛ͭͭ w Ή͠ΖʮͤΔ͖ͱ͜ΖʯΛೝࣝͰ͖Δ ೳྗͷํ͕νʔϜͰେࣄͳ໘͋Δ w ͦ͏͢Δ͜ͱͰɺνʔϜͱͯ͠ͷΞτϓο τΛ࠷େԽ͠ɺྑ͍αʔϏεͮ͘Γʹܨ͛Δ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ೝࣝͯͤ͠Δ͜ͱ
w ՄೳͳݶΓࣗͷೳྗͷ෯Λ͛ͭͭ w Ή͠ΖʮͤΔ͖ͱ͜ΖʯΛೝࣝͰ͖Δ ೳྗͷํ͕νʔϜͰେࣄͳ໘͋Δ w ͦ͏͢Δ͜ͱͰɺνʔϜͱͯ͠ͷΞτϓο τΛ࠷େԽ͠ɺྑ͍αʔϏεͮ͘Γʹܨ͛Δ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ೝࣝͯͤ͠Δ͜ͱ νʔϜͰϑϧελοΫΛࢦ͢
w ʮϑϧελοΫΤϯδχΞʯຊ࣭తʹ ͍͠ w ԾʹͳΕͨͱͯ͠ඞͣ͠ʮશ෦Զ͕ Δʯ͕ྑ͍બͱݴ͑ͳ͍ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ೝࣝͯͤ͠Δ͜ͱ
w ʮϑϧελοΫΤϯδχΞʯຊ࣭తʹ ͍͠ w ԾʹͳΕͨͱͯ͠ඞͣ͠ʮશ෦Զ͕ Δʯ͕ྑ͍બͱݴ͑ͳ͍ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ೝࣝͯͤ͠Δ͜ͱ • ͨͩ͠ελʔτΞοϓͰ1ਓ͔͍͠ͳ͍ͱ͖ ͕ࣗΔ͔͠ͳ͍
• ͜ͷΑ͏ʹϑΣʔζʹґଘ͢Δ෦͋ΔͷͰ έʔεɾόΠɾέʔε
ٕज़Λखஈͱͯ͠ೝ͍ࣝͯ͠Δ͜ͱ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ ೝࣝͯͤ͠Δ͜ͱ αʔϏεͱڞʹͰ͖Δॊೈ͞Λ ࣋ͭ͜ͱ ͭͷେࣄͳ͜ͱ
ٕज़Λखஈͱͯ͠ೝ͍ࣝͯ͠Δ͜ͱ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ ೝࣝͯͤ͠Δ͜ͱ αʔϏεͱڞʹͰ͖Δॊೈ͞Λ ࣋ͭ͜ͱ ͭͷେࣄͳ͜ͱ
αʔϏεͱڞʹͰ͖Δॊೈ͞Λ࣋ͭ͜ͱ ՈͷຖΛͬͱসإʹɻ
ࠓͷίωώτͷٕज़ελοΫ
ίωώτ্ཱͪ͛ظ
ϚϚϦαʔϏε্ཱͪ͛ظ
ϚϚϦαʔϏε্ཱͪ͛ظ ʊਓਓਓਓʊ ʼɹ1ͭɹʻ ʉY^Y^Yʉ
αʔϏεͱڞʹͰ͖Δॊೈ͞Λ࣋ͭ͜ͱ w αʔϏεͰඞཁ͔ͩΒ͏ɾֶͿ w ͦ͜ʹඞཁͳ݀ ׂ ͕͋ΕຒΊΔ w ඞཁͳ݀ΛຒΊΔ͜ͱͷͰ͖ΔਓؒՁ͕͋Δ w
ࣗͷڥ ৬ྺɾྸ ʹؔΘΒͣॊೈʹ ֶͿ࢟Λ͍࣋ͬͯΔ͜ͱ͕େࣄ
αʔϏεͱڞʹͰ͖Δॊೈ͞Λ࣋ͭ͜ͱ w ͦΕ͍͑࣋ͬͯ͞Εɺ݁Ռͱͯ͠ ʮϑϧελοΫΤϯδχΞʯʹ͍ۙεΩϧΛ ࣋ͬͨΤϯδχΞʹͳΕΔ߹͋Δ w ίωώτϦʔυΤϯδχΞͷྫ w ϓϩμΫτΛͭ͘ΓɺϓϩμΫτʹҭͯΒΕ Δڥ
αʔϏεͱڞʹͰ͖Δॊೈ͞Λ࣋ͭ͜ͱ w ࠓ৽͍͠ϓϩδΣΫτ͕ελʔτ͠ɺʑ ߴΊ߹͍ͳ͕Β։ൃΛ͍ͯ͠·͢ w ࣗ৽͍͠εΩϧʹઓ͍ͯ͠·͢ w ਓͷੜ׆ʹͳͯ͘ͳΒͳ͍αʔϏεΛ ͭͬͯ͘͢Δʑ
·ͱΊ ՈͷຖΛͬͱসإʹɻ
ྑ͍αʔϏεΛͭ͘Δ͜ͱʹݶͬͯݴ͑ ෯͍ٕज़Λ͍࣋ͬͯΔ͜ͱͱಉ͔ͦ͡ΕҎ্ʹ େࣄͩͱࢥ͍ͬͯΔ͜ͱ͕ͭ͋Γ·͢ ϢʔβʔͷͨΊʹྑ͍αʔϏεΛͭ͘Δʹʁ
ٕज़Λखஈͱͯ͠ೝ͍ࣝͯ͠Δ͜ͱ Βͳ͍͜ͱΛʮΒͳ͍ʯͱਖ਼͘͠ ೝࣝͯͤ͠Δ͜ͱ αʔϏεͱڞʹͰ͖Δॊೈ͞Λ ࣋ͭ͜ͱ ͭͷେࣄͳ͜ͱ
࣭͋͝Γ·͔͢ʁ ՈͷຖΛͬͱসإʹɻ
ͪΐͬͱͰΛฉ͍ͯΈ͍ͨͱ ࢥͬͨํ͜ͷޙ͓͕͚͍ͩ͘͞ ՈͷຖΛͬͱসإʹɻ $POOFIJUP*OD$50!UBUTVTIJN
͝ਗ਼ௌ༗͏͍͟͝·ͨ͠ɿ% ՈͷຖΛͬͱসإʹɻ $POOFIJUP*OD$50!UBUTVTIJN