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
【EC/CRM基盤開発】 prismatix事業部 Devチーム(サーバーサイドエンジニア)の...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Keiichi Nomura
December 09, 2022
Technology
0
1.5k
【EC/CRM基盤開発】 prismatix事業部 Devチーム(サーバーサイドエンジニア)の紹介 / Prismatix server side engineer job introduction
EC/CRM に特化したAPIプラットフォームを提供する prismatix 開発・運用の仕事内容について、主にサーバーサイドエンジニアの視点で紹介をさせていただきます。
Keiichi Nomura
December 09, 2022
Tweet
Share
More Decks by Keiichi Nomura
See All by Keiichi Nomura
チーム開発のふりかえり2024 #devio2024
k1style
0
360
ECサイト向け決済機能の開発で学んだ外部決済サービスの活用ポイント
k1style
1
2.1k
開発チームリーダーとしてやってきたことのふりかえり
k1style
0
1.5k
外部決済サービスを利用する上での脆弱ポイントと対策 / Vulnerable points and countermeasures for using external payment services
k1style
0
1.9k
外部決済サービスを利用した開発の反省と改善 #devio2021 / Introspection and Improvement of Development with External Payment Services
k1style
0
1.8k
Developers.IO 2020 Connect Day5 ECサイトの決済システムを作るなら知っておきたいこと / Developers.IO 2020 Connect Day5 Payment Development Flow With E-commerce Site
k1style
0
4.7k
サーバーレスアーキテクチャでサクッと作るアイマスbot
k1style
1
1k
私が考えるAWSを使ったアイマスHack
k1style
1
1.1k
Other Decks in Technology
See All in Technology
夢の無限スパゲッティ製造機 #phperkaigi
o0h
PRO
0
380
Amazon Qはアマコネで頑張っています〜 Amazon Q in Connectについて〜
yama3133
1
150
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
76k
Sansanの認証基盤を支えるアーキテクチャとその振り返り
sansantech
PRO
1
110
Phase03_ドキュメント管理
overflowinc
0
2.8k
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
360
タスク管理も1on1も、もう「管理」じゃない - KiroとBedrock AgentCoreで変わった“判断の仕事”
yusukeshimizu
0
130
ThetaOS - A Mythical Machine comes Alive
aslander
0
210
来期の評価で変えようと思っていること 〜AI時代に変わること・変わらないこと〜
estie
0
110
スケーリングを封じられたEC2を救いたい
senseofunity129
0
110
Phase05_ClaudeCode入門
overflowinc
0
2.4k
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
qa
0
350
Featured
See All Featured
Color Theory Basics | Prateek | Gurzu
gurzu
0
260
Why Our Code Smells
bkeepers
PRO
340
58k
The Invisible Side of Design
smashingmag
302
51k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
210
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
290
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Utilizing Notion as your number one productivity tool
mfonobong
4
270
Darren the Foodie - Storyboard
khoart
PRO
3
3k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
860
Transcript
prismatixࣄۀ෦ͷ։ൃʹ͍ͭͯհ 2022/09/27 prismatixࣄۀ෦ ଜܒҰ
ࣗݾհ ଜ ܒҰ Ϋϥεϝιου prismatix ࣄۀ෦ prismatix จ/ܾࡁαʔϏε୲
ࠓճ͓͢Δ͜ͱ • prismatix ࣄۀ෦ͷ͝հ • prismatix ͷٕज़ελοΫ • prismatix
ΛͲͷΑ͏ʹ։ൃ͍ͯ͠Δ͔ • prismatix ͷ։ൃͰମݧͰ͖Δ͜ͱ • ࢲ͕ײ͡Δ prismatix ։ൃͷ՝ • Ұॹʹ՝ղܾʹऔΓΜͰ͘ΕΔํʹདྷͯ΄͍͠ʂ
prismatixͱʁ
QSJTNBUJYͱʁ https://prismatix.jp/ • EC / CRMಛԽܕϓϥοτϑΥʔϜ • ΫϥεϝιουͷB2BࣗࣾαʔϏε •
ΤϯήʔδϝϯτίϚʔε • ܕίϯαϧςΟϯά
&$$3.ಛԽܕϓϥοτϑΥʔϜ Λ͑Δ൚༻"1*Λඋ͓͑ͯΓɺ֤اۀಠࣗͷ&$αΠτɺ$3.ͷߏங ͕Մೳ
QSJTNBUJYࣄۀ෦ͱʁ prismatix ͷ։ൃɾӡӦΛ͢Δ෦ॺ ʮprismatix ࣄۀ෦ʯ
QSJTNBUJYࣄۀ෦ͷνʔϜߏ https://dev.classmethod.jp/articles/pz-team-structure/ • Dev • Kiban • SRE •
CS (Customer Support) • ৽نϓϩμΫτ։ൃ • ςϯϓϨʔτ։ൃ • SI (System Integration) • ίϯαϧɾϚʔέɾӦۀ • ۀվળ • γε • ૯ • Ϙʔυ
QSJTNBUJYࣄۀ෦ͷνʔϜߏ https://dev.classmethod.jp/articles/pz-team-structure/ • Dev • Kiban • SRE •
CS (Customer Support) • ৽نϓϩμΫτ։ൃ • ςϯϓϨʔτ։ൃ • SI (System Integration) • ίϯαϧɾϚʔέɾӦۀ • ۀվળ • γε • ૯ • Ϙʔυ ຊDevνʔϜͷ͕த৺
prismatix ͷٕज़ελοΫ
QSJTNBUJYͷΞʔΩςΫνϟ • γϯάϧςφϯτ • ඞཁʹԠ͓ͯ͡٬༷ʹಠཱͨ͠ෳͷڥΛఏڙ • ϚΠΫϩαʔϏε • αʔϏεࢦΞʔΩςΫνϟ
(SOA) ʹج͍ͯɺෳͷαʔϏείϯϙʔωϯ τΛఏڙ • API ͷίϛϡχέʔγϣϯύλʔϯ • HTTPϝοηʔδϯάɺPub-Subϝοηʔδϯά • ετϨʔδʹେྔͷϦΫΤετσʔλΛஔ্ͨ͠Ͱ࣮ࢪ͢Δඇಉظॲཧʹ ରԠ
QSJTNBUJYͷٕज़ελοΫ ɹɹ+BWB ɹɹ4QSJOH#PPU ɹɹEPDLFS ɹɹ&MBTUJDTFBSDI ɹɹ(JU)VC ɹɹ$JSDMF$* ɹɹ*OUFMMJ+*%&" &$4
'BSHBUF 3%4 %ZOBNP%# &MBTUJ$BDIF ,JOFTJT 424 4/4 $MPVE8BUDI Development Infrastructure Monitoring / Noti fi cation
prismatix ͷ։ൃͷྲྀΕ
։ൃͷਐΊํ • 2िؒεϓϦϯτͷΞδϟΠϧ։ൃ • ࠷2िؒͰ৽όʔδϣϯΛϦϦʔε • શମͷཁPBL(ϓϩμΫτόοΫϩά)Ͱཧ • ཁҰͭҰͭΛPBI(ϓϩμΫτόοΫϩάΞΠςϜ)ͱͯ͠ν
έοτԽ • PBIͷ༰͔Βɺઃܭʙςετɾސ٬͚υΩϡϝϯτ࡞ ͳͲඞཁͳ࡞ۀΛνʔϜͰٞ͠ղ
։ൃͷਐΊํ
։ൃελΠϧ wϦϞʔτϫʔΫओମ w౦ژɾࡳຈɾԬΛத৺ʹɺ༷ʑͳॴͰۈ w4MBDL(PPHMF.FFUΛϑϧ׆༻ͯ͠ίϛϡχέʔγϣϯΛऔ Δ wφϨοδ/PUJPO શࣾ FTBJP ෦
Λར༻ͯ͠ڞ༗
prismatix ͷ։ൃͰମݧͰ͖Δ͜ͱ
QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ • ECɾCRMʹඞཁͳػೳཁ͕͔Δ • prismatix ͷػೳΛͲͷΑ͏ʹͬͯΒ͍ͬͯΔ͔ • ސ٬͔ΒͲͷΑ͏ͳػೳ͕ඞཁͱ͞Ε͍ͯΔͷ͔ •
ఏڙ͢Δ֤αʔϏεʹؔ࿈͢Δۀࣝ • ೝূɾೝՄ(OIDC,OAuth2) • ձһɺɺࡏݿɺจɺܾࡁɾɾɾ
QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ • APIϓϥοτϑΥʔϜ։ൃͷྲྀΕ͕͔Δ • ͓٬༷ͷཁ͔ΒͲͷΑ͏ͳػೳ͕ඞཁͱͳΔ͔Λཧ͠ɺઃ ܭ͢Δ • prismatix Λར༻͢ΔϑϩϯτΤϯυγεςϜɺprismatix
͕ ར༻͢Δ֎෦αʔϏεަ͑ͨγφϦΦɺॲཧϑϩʔͷઃܭ • API ͷར༻ݖݶϦΫΤετɾϨεϙϯεΠϯλʔϑΣʔεͷఆ ٛ • ඞཁͱͳΔ DB AWS ϦιʔεͳͲΛఆٛ
QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ • Java(Spring Boot) Λར༻࣮ͨ͠ɾςετ • ϑΥʔϚολ੩తίʔυղੳΛར༻࣮ͨ͠ϧʔϧͷ౷Ұ • ࣮ͱ߹Θͤͯςετॻ͘ʢϢχοτςετ౷߹ςετ
• ސ٬͚υΩϡϝϯτΛ࣮ͱ߹Θͤͯ࡞ • markdown + Mkdocs Λར༻ͨ͠υΩϡϝϯςʔγϣϯ • Swagger Ͱ API ΠϯλʔϑΣʔεΛެ։
• CircleCIΛར༻ͨࣗ͠ಈςετɾϏϧυ • ίʔυղੳςετͳͲΛࣗಈ࣮ߦɻ͕͋Ε։ൃऀʹ௨ • ͳ͚ΕDockerΠϝʔδυΩϡϝϯτͷϦϦʔε·Ͱ࣮ ࢪ QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ
QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ • ϚΠΫϩαʔϏεΞʔΩςΫνϟΛѻ͏্Ͱͷ։ൃͷצॴ • จαʔϏεˠܾࡁαʔϏεΛݺͿͳͲෳαʔϏεΛ࿈ܞ͢ Δ߹ͷઃܭ • ଞͷαʔϏεͷॲཧ͕ޭ͍ͯ͠ΔͷʹࣗͷαʔϏεͰॲ ཧࣦഊͨ͠߹ɺଞͷαʔϏεͷεςʔλεิਖ਼͠ͳ͚Ε
͍͚ͳ͍ʢิਖ਼τϥϯβΫγϣϯʣ • ଞͷαʔϏεͷεςʔλε͕มΘͬͨΠϕϯτΛड͚औΓɺࣗ ͷαʔϏε߹ΘͤͯॲཧΛ͢Δ
• ։ൃʹͱͲ·Βͣɺӡ༻͢Δ্Ͱͷߩݙ • ސ٬ڥͰ࣮ࡍʹͲͷΑ͏ʹΞϓϦέʔγϣϯ͕ར༻͞Ε͍ͯ Δͷ͔ΛΔ • ࢹސ٬͔Βͷ͍߹ΘͤΛड͚ɺސ٬ڥͷঢ়گ֬ೝΛ͢ Δ •
ސ٬ڥͷোར༻ϥΠϒϥϦͷ੬ऑੑ͕͋Δ߹ͳͲ • ΞϓϦέʔγϣϯͷϝτϦΫεϩάͳͲௐࠪ͠ɺରԠࡦΛ ݕ౼ QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ
• ར༻͢ΔAWSαʔϏεͷ͍ॴ͕ʹͭ͘ • ECS + Fargate Λج൫ͱͨ͠αʔϏεӡ༻ • SNS,
SQS Λར༻ͨ͠ Pub - Sub ϝοηʔδϯά • CloudWatch, S3 + Athena Λར༻ͨ͠ϝτϦΫεɺϩάͳͲͷ ௐࠪ QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ
• ϑϧϦϞʔτϫʔΫɾϑϨοΫε • Ոఉͷ͜ͱϓϥΠϕʔτͷ༻ࣄ͜ͳͭͭ͠ࣄ͕Ͱ͖Δ • νʔϜͷίϛϡχέʔγϣϯ͕׆ൃ • νϟοτɾϏσΦձٞͳͲͰੵۃతʹରΛॏͶΔ •
φϨοδڞ༗ੵۃతʹߦ͍ɺνʔϜ։ൃʹߩݙͰ͖Δ QSJTNBUJYͷ։ൃͰମݧͰ͖Δ͜ͱ
ࢲ͕ײ͡Δ։ൃͷ՝
ࢲ͕ײ͡Δ։ൃͷ՝ • ՁΛಧ͚ΒΕΔͷʹɺ࣮ݱ͢Δʹқ͕ߴ͍ͷ͕ଟ͍ • ݱঢ়ͷ࣮͔Βͷมߋ༰қੑ͕͍ • ݹ͔͘Βӡ༻͢ΔαʔϏεಛʹ͜ͷ͕͋Δ • Ͳ͜ʹӨڹ͕͋Δͷ͔ௐࠪʹ࣌ؒΛཁ͢
ࢲ͕ײ͡Δ։ൃͷ՝ • prismatix ༷ʹؔ͢Δ͍߹Θ͕ͤଟ͍ • υΩϡϝϯτʹΓ͍ͨใ͕ཏͰ͖͍ͯΔ͔ʁ • ͲͷΑ͏ͳ༷Ͱ͋Εސ٬͕ར༻͍͔͢͠ʁ •
ސ٬ڥͷࢹͰग़ͨΞϥʔτΛௐͨ݁Ռͳ͍έʔε͕ ଟ͍ • Өڹ͋Δ༰ͳͷ͔͕͔ΔΑ͏ʹɺΞϥʔτϩάͷग़ྗํ ๏ͳͲӡ༻ʹؔΘΔՕॴͷվળݕ౼ • ސ٬ڥͷௐࠪʹͨΔɺຊདྷ༧ఆ͢Δ։ൃʹӨڹ͢Δ
՝ղܾʹ͚ͯ • ՝ೝࣝ͠ɺվળʹ͚ͯಈ͍͍ͯΔ • ςετͷਐΊํΛվળ • εϓϦϯτϓϩδΣΫτ͝ͱͷ;Γ͔͑Γ • ސ٬ސ٬ڥʹؔΘΔνʔϜͱͷίϥϘϨʔγϣϯɺͳͲ
• Ұॹʹ՝ղܾʹߩݙͯ͘͠ΕΔํɺprismatix ΛΑΓྑ͘͠ ͯ͘ΕΔํ͕͍Δͱ৺ڧ͍
·ͱΊ
·ͱΊ wQSJTNBUJYࣄۀ෦Ͱɺ&$$3.ʹಛԽͨ͠"1*ϓϥοτϑΥʔ ϜͱίϯαϧςΟϯάαʔϏεΛఏڙ͠·͢ w%FWνʔϜͰ"1*ϓϥοτϑΥʔϜͷ։ൃɾӡ༻Λ୲͍·͢ w&$$3.ͷۀࣝɺϚΠΫϩαʔϏεͷ։ൃࣝͳͲʹͭ͘ ͜ͱ͕ଟ͍Ͱ͢ wҰॹʹࠓͷ՝ʹऔΓΈɺQSJTNBUJYΛΑΓྑͯ͘͘͠ΕΔํ Λ͓͍ͪͯ͠·͢
None