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
yamarkz
November 30, 2022
Technology
0
1.8k
ネットスーパーの買い物体験を支える工夫と決済機能実現の過程
泥臭くも価値を届ける決済の仕組みと工夫 by 10X + CAMPFIRE + Kanmu
https://kanmu.connpass.com/event/266209/
yamarkz
November 30, 2022
Tweet
Share
More Decks by yamarkz
See All by yamarkz
Flutter/Dartと共に歩んだスタートアップの開発を振り返って得た、成功と失敗の教訓
yamarkz
5
3.1k
Bloc PatternにおけるBloc分割の方針と実践例 / Division plan and practical example in bloc pattern
yamarkz
7
27k
Smart Contract Design Pattern
yamarkz
4
2.8k
トークンの概要と開発観点から見たICO / Token and TokenSale
yamarkz
5
61k
Zilliqa Next Gen High Throughput Blockchain Platform
yamarkz
0
2.1k
詳解 Ethereum Transaction / detail ethereum transaction
yamarkz
5
2.6k
Proof of Stake Casper
yamarkz
8
13k
Blockchain R&D Introduction
yamarkz
2
51k
Bitcoin Improvement Flow
yamarkz
5
4.4k
Other Decks in Technology
See All in Technology
【shownet.conf_】3Dアプローチで守るセキュリティ
shownet
PRO
0
330
ガバメントクラウド開発と変化と成長する組織 / Organizational change and growth in developing a government cloud
kazeburo
3
700
エンジニアは伝え方が9割/90% of what engineers need is communication skills
ykanoh
2
170
ドメインと向き合う - 旅行予約編
hidenorigoto
4
540
令和最新版 Perlコーディングガイド
anatofuz
4
2.8k
山手線一周のパフォーマンス改善
suzukahr
0
120
分析者起点の企画を成功させた連携面の工夫
lycorptech_jp
PRO
1
230
【shownet.conf_】ローカル5Gを活用したウォーキングツアーの体感向上
shownet
PRO
0
300
FastAPIでのasync defとdefの使い分け
takashi1029
6
1.9k
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(2-1)WebAPI座学
nomu
0
150
OPENLOGI Company Profile for engineer
hr01
1
12k
YAPC::Hakodateの映像記録を支える技術
godan
4
190
Featured
See All Featured
The Mythical Team-Month
searls
218
43k
Rails Girls Zürich Keynote
gr2m
93
13k
[RailsConf 2023] Rails as a piece of cake
palkan
49
4.7k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Build The Right Thing And Hit Your Dates
maggiecrowley
31
2.3k
Why You Should Never Use an ORM
jnunemaker
PRO
53
9k
Atom: Resistance is Futile
akmur
261
25k
Embracing the Ebb and Flow
colly
83
4.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
231
17k
Producing Creativity
orderedlist
PRO
341
39k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
327
21k
Transcript
©10X, Inc. All Rights Reserved. ωοτεʔύʔͷങ͍ମݧΛࢧ͑Δͱ ܾࡁػೳ࣮ݱͷաఔ 1 టष͘ՁΛಧ͚ΔܾࡁͷΈͱ /
10X, inc. yamarkz
©10X, Inc. All Rights Reserved. 2 ࣗݾհ Kazuki Yamaguchi yamakazu
(@yamarkz) Software Engineer at 10X, inc. Flutter, Dart, Kubernetes, Architecture ͡Ίʹ
©10X, Inc. All Rights Reserved. 10Xʹ͍ͭͯ • খചΓνΣʔϯ͚ECϓϥοτϑΥʔϜ Stailerͷ։ൃӡ༻ •
খചࣄۀऀ༷͚ʹωοτεʔύʔɾωοτυϥοάετΞࣄۀͷ্ཱͪ͛Λࢧԉ • αʔϏείϯηϓτʮຖͷੜ׆Λࢧ͑Δങ͍ʹ৽ͨͳબࢶΛʯ 3 ͡Ίʹ
©10X, Inc. All Rights Reserved. ࠓͷͷίϯηϓτ • ങ͍ମݧΛ࣮ݱ͢ΔͨΊʹࢪͨ͠ • ωοτεʔύʔʹ͓͚ΔܾࡁػೳͷಛͱΈ
• ܾࡁػೳͷ࣮աఔͱ࣮දݱ 4 10XͷϓϩμΫτͰ͋ΔStailerΛࡐʹɺࣗͨͪͳΓͷܾࡁػೳͷ࣮աఔΛհ͠·͢ɻ ෳࡶͳܾࡁ੍ޚ͕ඞཁͱ͞ΕΔϓϩμΫτͷ։ൃʹऔΓΉํͷࢀߟʹͳΔΑ͏ͳʹ·ͱΊ·ͨ͠ɻ ͡Ίʹ
©10X, Inc. All Rights Reserved. ͷݩωλ 5 10X Product BlogͰΧʔυܾࡁॲཧͷ͠͞ʹ͍ͭͯհ͢ΔهࣄΛॻ͖·ͨ͠ɻ
͜͜Ͱͷ༰ɺΑΓ։ൃʹϑΥʔΧεΛͯͨ༰ʹͳ͍ͬͯ·͢ɻ ͡Ίʹ
©10X, Inc. All Rights Reserved. ΞτϥΠϯ 1.ωοτεʔύʔʹ͓͚Δങ͍ମݧͷಛͱจૢ࡞ 2.Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ 6 ͡Ίʹ
©10X, Inc. All Rights Reserved. 7 ωοτεʔύʔʹ͓͚Δങ͍ମݧͷಛͱจૢ࡞
©10X, Inc. All Rights Reserved. ωοτεʔύʔͷങ͍ମݧͷಛ 8 ωοτεʔύʔʹ͓͚Δങ͍ମݧͷಛͱจૢ࡞ ҰൠతͳEC ωοτεʔύʔ
ߪೖ 2~3 20Ҏ্ จૢ࡞ จมߋͳ͠ จมߋ͋Γ ࡏݿཧ Εൃੜͳ͠ Εൃੜ͋Γ ཧ ෆඋՄೳੑ ෆඋՄೳੑߴ • ಛͱͯ͠ߪೖͷଟ͞ɺจૢ࡞ͷॊೈੑ (≒ෆ࣮֬ੑ)ɺࡏݿෆ࣮֬ੑɺෆ࣮֬ੑ͕͋Δ • ωοτεʔύʔҰൠతͳECαʔϏε (Amazon, Yahooγϣοϐϯά) ͱൺͯɺෆ࣮֬ͳཁҼ͕ଟ͍
©10X, Inc. All Rights Reserved. ωοτεʔύʔͷओͳϢʔεέʔε 9 ωοτεʔύʔʹ͓͚Δങ͍ମݧͷಛͱจૢ࡞ ωοτεʔύʔͷओͳϢʔεέʔεɺ”ੜ৯ΛؚΉ20Ҏ্ͷ·ͱΊങ͍” ར༻Ձ͕ߴ͍ҰํͰɺར༻ϋʔυϧߴ͍ɻʮࠓ͔Β20Ҏ্ͷΛબΜͰങ͑·͔͢…ʁʯ
(ࢀর) https://10x.co.jp/blog/10xblog/to-c-product-growth/
©10X, Inc. All Rights Reserved. ωοτεʔύʔͷओͳϢʔεέʔε 10 ωοτεʔύʔʹ͓͚Δങ͍ମݧͷಛͱจૢ࡞ ར༻ϋʔυϧΛԼ͛Δͷ1ͭ ”จมߋ”
1จͨ͠ޙʹɺมߋՄೳظؒͰ͋ΕԿͰมߋՄೳʹ ʮΕͯͨΞϨങ͍͍ͨ͠ʯʮྫྷଂݿʹ͔͋ͬͨΒͬͺΓങ͏ͷΊ͍ͨʯ͕Ͱ͖Δ ٯʹ1จͨ͠Βม͑ΒΕͳ͍ͱ͍͏ෆՄٯͳจૢ࡞ɺར༻ϋʔυϧߴ͍ = จૢ࡞ͷॊೈੑ͕ٻΊΒΕ͍ͯΔ (ࢀর) https://10x.co.jp/blog/10xblog/to-c-product-growth/
©10X, Inc. All Rights Reserved. จૢ࡞ͱܾࡁૢ࡞ 11 ωοτεʔύʔʹ͓͚Δങ͍ମݧͷಛͱจૢ࡞ ͳͥɺܾࡁͷͰઌʹจૢ࡞ͷΛ͢Δͷ͔ʁ จͱܾࡁ͕ີ݁߹Ͱɺ”ܾࡁจֹۚʹґଘ͢Δ”
͔Β ͭ·Γɺจૢ࡞Ͱॊೈੑ͕ٻΊΒΕΔͳΒɺܾࡁૢ࡞ʹॊೈੑ͕ٻΊΒΕΔͱ͍͏͜ͱ ܾࡁૢ࡞ΛॊೈʹͰ͖ͳ͚Εɺॊೈͳจૢ࡞Λ࣮ݱ͢Δ͜ͱͰ͖ͳ͍ 🙅 ͜ͷॊೈͳจૢ࡞Λ࣮ݱ͢ΔͨΊʹɺܾࡁૢ࡞ΛͲ͏දݱ͢Δͷ͔͕ຊ ༷ʑͳΛࢪܾͯ͠ࡁػೳͷ։ൃΛ͖͕ͯͨ͠ɺࠓճ͜ͷॊೈͳจૢ࡞ͷΛਂ΅Δ
©10X, Inc. All Rights Reserved. 12 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮
©10X, Inc. All Rights Reserved. ॊೈͳܾࡁૢ࡞ͷ࣮ݱΛࢦͯ͠ 13 ॊೈͳจૢ࡞Λ࣮ݱ͢ΔͨΊʹɺܾࡁૢ࡞ͷॊೈੑ͕୲อ͞Ε࣮ͨΛࢦ͢͜ͱʹɻ ͱͱ͋ͬͨػೳΛকདྷతͳ֦ுੑΛߟྀͯ͠ϦϑΝΫλϦϯά͢Δγʔϯ͕ۙ͋Γɺ
࣮ࡍʹऔΓΜͩϞσϦϯάΛऔΓ্͛ɺ͞Βʹ۩ମͷ࣮දݱ͕Ͳ͏ͳͬͨͷ͔Λࣔ͠·͢ɻ ͳ͓ɺ͜͜ͰͷϞσϦϯάػೳ։ൃͷϞσϦϯάͰ͋ΓɺσʔλϞσϦϯάͰ͋Γ·ͤΜɻ ܾࡁػೳ֎෦ͷܾࡁߦձࣾΛར༻͍ͯ͠·͢ɻ Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮
©10X, Inc. All Rights Reserved. จঢ়ଶͷมભͱܾࡁૢ࡞ͷશମ૾ 14 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ จલ จྃ
Ωϟϯηϧ ४උ ୡྃ ࢧ֬ఆ จมߋ Stailerͷจঢ়ଶͷมભΛநԽͯ͠දݱ͢Δ จมߋ
©10X, Inc. All Rights Reserved. จঢ়ଶͷมભͱܾࡁૢ࡞ͷશମ૾ 15 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ จલ จྃ
Ωϟϯηϧ ४උ ୡྃ ࢧ֬ఆ จมߋ จมߋ จঢ়ଶͷมભʹ߹ΘͤͯݺΕΔܾࡁૢ࡞ͷΠϕϯτΛϚοϐϯά 4ͭͷૢ࡞ύλʔϯɺ6ͭͷૢ࡞γʔϯ ΦʔιϦ Ωϟϯηϧ ࠶ΦʔιϦ ࠶ΦʔιϦ Ωϟϓνϟʔ
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ3ͭͷม 16 શମΛ၆ᛌͭͭ͠ৄࡉΛੳ͢Δͱɺܾࡁૢ࡞3ͭͷมͰܾఆ͢Δ͜ͱ͕ݟ͖͑ͯͨ 1. ܾࡁૢ࡞Λߦ͏จ຺
(create, update, cancel, finalize) 2. ݱࡏͷࢧֹ͍ۚ (0ҎԼ, 1Ҏ্) 3. ݱࡏͷΦʔιϦऔಘঢ়گ (ະऔಘ, औಘෆཁ, औಘࡁΈ, ΩϟϯηϧࡁΈ) Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ3ͭͷม 17 ͳͥɺ͜ͷ3ͭͷมͩͱݴ͍ΕΔͷ͔ʁ ఆ͢ΔશͯͷϢʔεέʔεͰԿͷܾࡁૢ࡞Λબ͢Δ͖͔Λઆ໌Ͱ͖Δ͔Β ྫ1.
ΦʔιϦΛऔಘ͢Δ จ࡞ͷίϯςΩετ(1), ࢧֹ͍͕ۚ2800ԁ(2), ΦʔιϦ͕ະऔಘ(3) => ΦʔιϦΛऔಘ͢Δ ྫ2. ΦʔιϦΛߋ৽͢Δ จมߋͷίϯςΩετ(1), ࢧֹ͍͕ۚ4700ԁ(2), ΦʔιϦऔಘࡁΈ(3), => ΦʔιϦΛ࠶औಘ͢Δ Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮
©10X, Inc. All Rights Reserved. ܾࡁͷঢ়ଶભҠͱΞΫγϣϯ 18 ܾࡁঢ়ଶʹભҠ͕͋ΔͷͰɺঢ়ଶભҠਤΛఆٛ Ͳͷঢ়ଶͰԿͷΞΫγϣϯ͕औΕΔͷ͔ɺͦͷ݁ՌͲͷঢ়ଶʹมΘΔͷ͔Λ໌จԽͨ͠
Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷύλʔϯཧ 19 3ͭͷมͱঢ়ଶભҠͷཧΛܦͯɺૢ࡞ͷύλʔϯԽΛࢼΈΔ ݁Ռͱͯ͠32ύλʔϯͷૢ࡞Λચ͍ग़͢͜ͱ͕Ͱ͖ͨ
ίϯςΩετ (4) * ࢧֹ͍ۚ (2) * ΦʔιϦঢ়گ (4) = 32ύλʔϯ… 🤯 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 20 ͜͜·Ͱ͕ϞσϦϯάͷɻ͜ͷϞσϦϯάͰཧͰ͖ͨ༰Λݩʹ࣮Λߦ͏ ચ͍ग़ͤͨ32ύλʔϯͷذΛ۪ʹ࣮͢Δͷ͔…? ͑No.
🙅 อकੑ, Մಡੑ, ςετ༰қੑΛඋ࣮͑ͨΛࢦ͠ɺߏԽ͞ΕͨΫϥεઃܭΛࢼΈΔ Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 21 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ ࣗͨͪͷΫϥεઃܭͷ͑
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 22 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ PaymentTransaction
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 23 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ ԿΛ࣮ߦ͢Δ͔ΛӅṭ͢ΔPaymentTransaction
Public InterfaceexecuteͱrollbackͷΈ ܾࡁૢ࡞ͷΛ୯ҰΫϥεͰදݱ͢Δૂ͍ 1Ϋϥε͋ͨΓ60~80ߦͰऩ·Δ
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 24 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ Factory
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 25 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ ͲΕΛ࣮ߦ͢Δͷ͔ΛӅṭ͢ΔFactory
Public InterfacecreateͷΈ ύλʔϯબ(ذॲཧ)ΛΧϓηϧԽ͢Δૂ͍ શମͰ150ߦɺ1ϝιου͋ͨΓ࠷େ20ߦ΄Ͳ
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 26 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ UseCase
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 27 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ executeͱrollbackΛݺͼग़͚ͩ͢ͷUseCase
۩ମͷखଓॲཧΛΒͳͯ͘Α͘͢Δૂ͍ ʮΠϯλʔϑΣʔεʹରͯ͠ϓϩάϥϛϯά͢Δʯ વΔ͖ݺͼग़͠λΠϛϯάͰϝιουΛݺͼग़͚ͩ͢
©10X, Inc. All Rights Reserved. ܾࡁૢ࡞ͷ࣮ 28 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ ΫϥεઃܭΛ3ͭͷΓޱͰऔΓ্͖͛ͯ·ͨ͠
©10X, Inc. All Rights Reserved. ϞσϦϯάͱ࣮ʹΑͬͯಘΒΕͨͷ 29 Stailerʹ͓͚Δܾࡁૢ࡞ͷϞσϦϯάͱ࣮ • ඞਢཁ݅Ͱ͋ͬͨɺܾࡁػೳͷॊೈੑύλʔϯΛཏ͢Δ͜ͱͰ࣮ݱͰ͖ͨ
• ϞσϦϯάաఔͰੜΈग़ͨ͠Ռ (ύλʔϯද, ঢ়ଶભҠਤ, γʔέϯεਤ) Λݩʹ ੜΈग़ͨ͠ίʔυɺอकੑ, Մಡੑ, ςετ༰қੑ͕උΘͬͨ • ෳਓͰڠྗͯ͠औΓΜͩ͜ͱͰɺ։ൃӡ༻ऀͷՄ༻ੑಘΒΕͨ
©10X, Inc. All Rights Reserved. 30 ·ͱΊ
©10X, Inc. All Rights Reserved. ·ͱΊ 31 ωοτεʔύʔͷങ͍ମݧΛࢧ͑Δͱܾࡁػೳ࣮ݱͷաఔ • ωοτεʔύʔͷങ͍ମݧΛࢧ͑Δͷ1͕ͭจมߋ
• ॊೈͳจૢ࡞Λ࣮ݱ͢ΔͨΊʹɺܾࡁૢ࡞ͷॊೈੑ͕ඞཁ • StailerͰ32ύλʔϯͷܾࡁૢ࡞Λݟग़ͨ͠ • υϝΠϯͷෳࡶͳ՝Λ۪ʹటष͘ϞσϦϯάΛॏͶͯղܾʹ͔͍ͬͯΔ
©10X, Inc. All Rights Reserved. 32 ࠷ޙʹ
©10X, Inc. All Rights Reserved. We are Hiring!! 10XͰ͓٬༷ͷཧͷମݧ͔Βٯࢉͯ͠ɺॏେͳΠγϡʔ͔Β࢝·Δ։ൃʹऔΓΊ·͢ ෳࡶͳυϝΠϯͰటष͘ߟ͑ൈ͘͜ͱେมͰ͕͢໘ന͍Ͱ͢Α
33 ࠷ޙʹ https://10x.co.jp/recruit/
©10X, Inc. All Rights Reserved. 34 End.