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
GoとGCPとkubernetesを使った MF KESSAIの歴史
Search
shinofara
January 30, 2018
Technology
3.6k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GoとGCPとkubernetesを使った MF KESSAIの歴史
golang.tokyo #12
shinofara
January 30, 2018
More Decks by shinofara
See All by shinofara
コーポレートも管掌するCTOを経験した事で見えてきた課題 / 組織の信頼性を高める 〜SRE/情シス/セキュリティの領域を超えて〜
shinofara
1
710
MF KESSAIが、技術的挑戦を繰り返しながら サービス価値と開発のIKIOIを上げ続けてる話
shinofara
1
2.3k
マネーフォワードの子会社MF KESSAIが選択したアーキテクチャ
shinofara
18
5.7k
酔いどれGCPUG 2018/03/02 / PubSubとGAE/FEでサクッと大量にPDF生成出来るようにしたお話
shinofara
0
380
Other Decks in Technology
See All in Technology
From Vanilla Kubernetes to a Batteries-Included Platform: Developer Experience at 1,300+ Clusters
yosshi_
0
570
Redmine 7.0で私が開発した新機能の狙いと背景
vividtone
1
110
AI時代におけるプロダクト横断勉強会の設計
zozotech
PRO
0
160
AIとペアプロを始める。人とのペアプロをやめる。ペアプロの良さを改めて知る。もっと好きになった。 / Rediscovering Pair Programming
honyanya
1
250
Webとヘルスデータ
yukukotani
0
190
その指示、Bobにしっかり伝わってる?初心者でも即実践できる プロンプト/コンテキスト設計のコツ
muehara
1
170
Bet AI Day 2026丨How We Bet AI: AIとともに働く場をつくる
layerx
PRO
2
2.6k
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
250
Autonomous AI Databaseサービス・アップデート(FY27)/ adb-service-update-jp-fy27
oracle4engineer
PRO
0
120
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
0
130
AIで仕事のやり方を変える
matsu7874
1
850
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
PRO
1
240
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
10k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
HDC tutorial
michielstock
2
850
WENDY [Excerpt]
tessaabrams
12
39k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
270
New Earth Scene 8
popppiees
3
2.5k
Facilitating Awesome Meetings
lara
57
7.1k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
450
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
4 Signs Your Business is Dying
shpigford
187
23k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
45k
Transcript
HPMBOHUPLZP (Pͱ($1ͱLVCFSOFUFTΛͬͨ .',&44"*ͷྺ࢙ !TIJOPGBSB
ࠓ͢ࣄ ࣗݾհ .',&44"*͍ͭͯ ձࣾʹ͍ͭͯ αʔϏεʹ͍ͭͯ HPMBOHUPLZPͰຊ ;Γ͔͑Γ ʒ
ࠓ͢ࣄ ࣗݾհ .',&44"*͍ͭͯ ձࣾʹ͍ͭͯ αʔϏεʹ͍ͭͯ HPMBOHUPLZPͰຊ ;Γ͔͑Γ ʒ
·ͣ ୭ʁ
୭ʁ ࣰݪ༞و !TIJOPGBSB w (Pྺ"84ྺ($1ྺ%PDLFSྺ w &NBDT(PMBOE w ৽ଔͰ:BIPP+"1"/ʹೖࣾɺͦͷޙస৬Λ܁Γฦ͢
w ݄ΫϥυίϯςφԽͤͯԼ͍͞ʂͱ.'ʹೖࣾ ͔݄͠͠ʹ.',&44"*גࣜձࣾͷٕज़ऀͱͳΔ
ࠓ͢ࣄ ࣗݾհ .',&44"*͍ͭͯ ձࣾʹ͍ͭͯ αʔϏεʹ͍ͭͯ HPMBOHUPLZPͰຊ ;Γ͔͑Γ ʒ
.',&44"*ͱ .',&44"*ͱ͍͏ձࣾΛ͝ଘͰ͔͢ʁ
.',&44"*ͱ w ݄ઃཱ w ϚωʔϑΥϫʔυͷࢠձࣾ w σʔλͷՄࢹԽʹΑΔʮۀޮԽʯ͚ͩͰ ͳ͘ɺʮࢿۚ܁ΓվળʯʹϑΥʔΧεͨ͠ ձࣾ
.',&44"*Ͳ͏͍͏αʔϏεͳͷ͔ ٻۀΛߦͬͨࣄ͋Δਓ͍·͔͢
.',&44"*Ͳ͏͍͏αʔϏεͳͷ͔ ചΓख ങ͍ख ༩৴ௐࠪ ٻॻൃߦ ೖۚཧ ಜଅɾ࠵ଅ ۚճऩ ٻۀϓϩηε ͜ͷϓϩηεͷͯ͢Λߦ
.',&44"*Ͳ͏͍͏αʔϏεͳͷ͔ ؆୯ʹݴ͏ͱɺٻߦ
ࠓ͢ࣄ ࣗݾհ .',&44"*͍ͭͯ ձࣾʹ͍ͭͯ αʔϏεʹ͍ͭͯ HPMBOHUPLZPͰຊ ;Γ͔͑Γ ʒ
HPMBOHUPLZPͰ͓͢Δࣄ ͯ͞ɺຊ
HPMBOHUPLZPͰ͓͢Δࣄ .',&44"*ͷΛৼΓฦͬͯɺ(PΞ ϓϦέʔγϣϯɺपลͷΞʔΩςΫνϟ ͕Ͳͷ༷ʹมΘ͖͔ͬͯͨΛ͓͠·͢ɻ
HPMBOHUPLZPͰ͓͢Δࣄ .',&44"*ͷྺ࢙
.',&44"*ͷྺ࢙ ۀॳظ ಋೖاۀ͚αʔϏε։ൃظ ݱࡏ
ۀॳظ ΤϯδχΞ໊̎ 10݉ΤϯδχΞ Πϯϑϥ݉ΤϯδχΞ ։ൃͰ͏ٕज़ΛܾΊͨ (PMBOHΛ͏ࣄ %PDLFSΛ͏ࣄ ($1Λ͏ࣄ ࣾπʔϧͷ։ൃ
(PMBOHΛ͏ࣄʹͨ͠ཧ༝ ࣮ࡍʹ͓ۚʹؔΘΔࣄͳͷͰɺܕݫ֨ʹ͍ͨ͠ .'3VCZ3BJMTͷϝϯόʔ͕ଟ͍ͷͰɺ৽͍͠ ݴޠͷҠߦίετՄೳͳݶΓগͳ͘ ୭͕ॻ͍ͯ͋Δఔಉ༷͡ͳίʔυ͕͔͚Δɻ
(PMBOHͰͲͷΑ͏ʹ։ൃ͔ͨ͠ &DIP(JOͱ͍ͬͨϑϨʔϜϫʔΫΘͳͣ ඞཁʹԠͯ͡ɺHPDIJDIJɺHPSJMMBDTSGͳͲ Λબͯ͠ɺ֦େ͍ͯ͘͠ํ (PΒ͘͠ॻ͘ UFTUMJOUWFU࠷ॳ͔Βಋೖ
(PMBOHΞϓϦέʔγϣϯͷঢ়گ w ϦϙδτϦ̍ w (P w ґଘཧ(MJEF (Pͱґଘཧ ར༻ύοέʔδ HJUIVCDPNVOSPMMFESFOEFS
HPVCFSPSH[BQ HJUIVCDPNHPSJMMBTDIFNB HJUIVCDPNHPSJMMBDPOUFYU HJUIVCDPNHPSJMMBTFTTJPOT HJUIVCDPNHPSJMMBDTSG HJUIVCDPNQSFTTMZDIJ HJUIVCDPNKJO[IVHPSN
%PDLFSΛ͏ࣄʹͨ͠ཧ༝ ڥͷಉҰੑͷ୲อ ͩΕ͕Ͳ͜Ͱ࡞ͬͯಉ͡ڥΛ࠶ݱ͍ͨ͠ ΧϓηϧԽ ΞϓϦέʔγϣϯຖʹಈ࡞ڥΛͯ͠ཧ
SVOUJNFڥͷҰ؏ੑ εςʔδϯάͳͲͰݕূͨ͠ڥΛɺಉ͡Πϝʔ δΛ͍·Θ͢ࣄͰɺݕূࡁΈͷڥΛຊ൪ʹ దԠͰ͖Δ
($1Λ͏ࣄʹͨ͠ཧ༝ (4VJUFͱ࿈ܞ͢ΔࣄͰɺ༰қʹݖݶཧ͕ग़དྷΔࣄʢ*".ʣ ҙࣝ͠ͳͯ͘σʔλ͕ੵ͞ΕΔ4UBDLESJWFSͷଘࡏ ,VCFSOFUFTαʔϏε͕ଘࡏͨ͠ࣄ ࠓ"84ɺ#MVF.JYɺ"[VSFʹଘࡏ͍ͯ͠Δ
ΠϯϑϥΤϯδχΞෆࡏͰӡ༻͍͢͠
ࣾπʔϧʹઐ೦͢Δࣄʹͨ͠ཧ༝ ࠷ݶҎԼͷػೳ͕͋ΕɺϏδωεΛ։࢝͢Δࣄ ͕Ͱ͖ͨͷͰɺࣾπʔϧͷ։ൃ͔Βணख w اۀ৹͕ࠪग़དྷΔࣄ w औҾใͷཧ͕ग़དྷΔࣄ w ৼࠐͷҝʹܭࢉ͕Ͱ͖Δࣄ
͜ͷ࣌Ͱͷ($1ͷߏ ࣾཧ༻ 8*
.',&44"*ͷྺ࢙ ۀॳظ ಋೖاۀ͚αʔϏε։ൃظ ݱࡏ
ಋೖاۀ͚αʔϏε։ൃظ (PQIFS໊̎ ϑϩϯτΤϯυΤϯδχΞ໊̍ೖࣾ ಋೖاۀ͚8&#αʔϏεͷ։ൃ ಋೖاۀ͚3&45"1*ͷ։ൃ ෦"1*ͱͯ͠H31$"1*ͷ։ൃ
H31$"1*։ൃ H31$Λ࠾༻ ݩʑͷϩδοΫࣾπʔϧͰ։ൃ ࡁΈͳͷ͕ଟ͔ͬͨͷͰɺΠϯλʔ ϑΣʔε෦͕ओʹ։ൃͨ͠
3&45"1*։ൃ 3&45"1*ͷ։ൃʹ HJUIVCDPNHPBEFTJHOHPBΛ࠾༻ "1*,&:ೝূɺήʔτΣΠͱͯ͠ "1*"HHSFHBUPSͷ,POHΛ࠾༻
(PMBOHΞϓϦέʔγϣϯͷঢ়گ w ϦϙδτϦ̐ w (P w ґଘཧ(MJEF (Pͱґଘཧ ར༻ύοέʔδ HJUIVCDPNVOSPMMFESFOEFS
HPVCFSPSH[BQ HJUIVCDPNHPSJMMBTDIFNB HJUIVCDPNHPSJMMBDPOUFYU HJUIVCDPNHPSJMMBTFTTJPOT HJUIVCDPNHPSJMMBDTSG HJUIVCDPNQSFTTMZDIJ HJUIVCDPNKJO[IVHPSN HJUIVCDPNHSQDHSQDHP HJUIVCDPNHPMBOHQSPUPCVG HJUIVCDPNHPBEFTJHOHPB HJUIVCDPNKJO[IVDPOpHPS
͜ͷ࣌Ͱͷ($1ͷߏ ಋೖاۀ͚ 8* ಋೖاۀ͚ 3&45"1* ࣾཧ༻ 8* ܾࡁ H31$"1* "1*"HHSFHBUPS
4FSWJDF.FTI %BUB%PH"HFOU &UD
.',&44"*ͷྺ࢙ ۀॳظ ಋೖاۀ͚αʔϏε։ൃظ ݱࡏ
ݱࡏ (PQIFS͕ߋʹ໊̍ೖࣾͯ͠߹ܭ໊̒ʹ εέʔϥϒϧͳ1%'ੜαʔϏεͷ։ൃ ϞχλϦϯάɺΤϥʔτϥοΩϯάݟ͠ 4FSWJDF.FTIಋೖ
εέʔϥϒϧͳ1%'ൃߦͷΈ ٻॻൃߦʹؔ͢ΔࣝΛΞϓϦέʔγϣϯΒͳͯ͘ྑ͘ͳΔ QVCTVC ("&Λ༻͍ΔࣄͰɺδϣϒͷฒྻ࣮ߦ͕ՄೳʹͳΓɺ࣌ؒͰେྔʹੜͰ͖Δ
(PMBOHΞϓϦέʔγϣϯͷঢ়گ w ϦϙδτϦ̑ w (P w ґଘཧ%FQ (Pͱґଘཧ ར༻ύοέʔδ HJUIVCDPNVOSPMMFESFOEFS
HPVCFSPSH[BQ HJUIVCDPNHPSJMMBTDIFNB HJUIVCDPNHPSJMMBDPOUFYU HJUIVCDPNHPSJMMBTFTTJPOT HJUIVCDPNHPSJMMBDTSG HJUIVCDPNQSFTTMZDIJ HJUIVCDPNKJO[IVHPSN HJUIVCDPNHSQDHSQDHP HJUIVCDPNHPMBOHQSPUPCVG HJUIVCDPNHPBEFTJHOHPB HJUIVCDPNKJO[IVDPOpHPS (PPHMF$ISPNF%FCVHHFS HJUIVCDPNXJSFQBJSHDE
ݱࡏͷ($1ͷߏ
($1ͷߏ ($1શମͷNPOJUPSJOHɺ4UBDL%SJWFS (,&ͷதͷNPOJUPSJOHɺ%BUB%PH (,&ͷதͰൃੜ͢ΔΤϥʔɺ4FOUSZͰཧ
($1ͷߏ ϚΠΫϩαʔϏεͷͦΕͧΕͷαʔϏε୯ҐͰ1PETԽ͠ ͍ͯ·͢ɻ (,&ͷதͷߏ͋ͱͷεϥΠυͰઆ໌
($1ͷߏ ٻॻ໌ࡉॻ1%'ͷൃߦΛ݅ෛՙʹԠͯ͡εέʔ λϒϧʹੜͰ͖ΔΈΛߏங͍ͯ͠·͢ɻ
,VCFSOFUFTͷؔਤ
,VCFSOFUFTͷؔਤ Ϣʔβ͕ར༻͢Δ6*ຖʹ1PETΛ͚ ͍ͯ·͢ɻ w ಋೖاۀ͚6* w ಋೖاۀ͚3&45"1* w ࣾ༻ཧ6* w
,POHʢ044ʣ ฐࣾͰՄೳͳݶΓࣗࣾ։ൃͤͣ͋Γ ͕͋Ε͏ํͳҝɺ(BUFXBZ 0BVUI&OEQPJOUͷΛ,POHʹ· ͔͍ͤͯ·͢ɻ
,VCFSOFUFTͷؔਤ ࠓޙΑΓϚΠΫϩαʔϏεԽ͕ਐΉࣄͰɺH31$"1*͕૿͍͑ͯ͘ࣄ͕༧ ͞ΕΔҝɺݱࡏ༷ʑͳ"1*ͷ4FSWJDF%JTDPWFSZ3PVUJOH1SPYZ͕ߦ ͑Δ4FSWJDF.FTIͷ-JOLFSEΛಋೖ͓ͯ͠Γ·͢ɻ *TUJPʹ৺ऒ͔ΕͨΓ͍ͯ͠·͕͢ʣ
,VCFSOFUFTͷؔਤ H31$"1*͕υϝΠϯͷίΞϩδοΫ ෦ͳͲΛ୲͍ͯ͠·͢ɻ
ࠓ͢ࣄ ࣗݾհ .',&44"*͍ͭͯ ձࣾʹ͍ͭͯ αʔϏεʹ͍ͭͯ HPMBOHUPLZPͰຊ ;Γ͔͑Γ ʒ
;Γ͔͑Γ ৽نࣄۀʹHPMBOHΛબΜͰΈͯ 1SPT$POT
৽نࣄۀʹ(PMBOHΛબΜͰΈͯ1SPT ৽نαʔϏε্ཱͪ͛࣌ಛʹɺ༷มߋɺ్த͔Β࠷దԽͳͲߦ͏ࣄ͓͓͍ҝ ίϯύΠϧ͕͋Δ͓ӄͰɺେنͳϦϑΝΫλΛߦͬͨ࣌ʹɺग़͔ͯ͠ΒյΕ͍ͯΔ ࣄʹؾ͘ͳͲͷͳ͘ͳͬͨͷͰΑ͔ͬͨ HPGNU HPWFUͳͲͷ੩తνΣοΫπʔϧͷ͓͔͛ͰϨϏϡʔͰࠣͳࢦఠΛ͠ͳͯ͘ ࡁΉ ϨϏϡʔίετݮ
ݴޠࣗମͷ࣭ΤίαΠΫϧͷվળ DPOUFYUͷඪ४Խͱ͔ɺEFQͱ͔ ͕ʑߦΘΕ ͍ͯͯɺ͜Ε͔Βઌ҆৺ͯ͑ͦ͠͏ νʔϜ։ൃʹ͍͍ͯΔɻ ݴޠతʹઃܭ͕ૄ݁߹ʹͳΓ͕ͪ ྫJOUFSGBDFͬͨΓͱ͔ɺDIBOOFMͰͷϝοηʔ δϯάͱ͔ ͳͷͰɺෳਓͰฒߦͯ͠։ൃ͢ΔͷࣗવʹͰ͖ɺ։ൃ্͕Δ
৽نࣄۀʹ(PMBOHΛબΜͰΈͯ$POT ੩తܕ͚ݴޠ৽͍͠ݴޠɺະܦݧऀ͕ډͯΔ߹ɺࠓ·Ͱग़དྷ͍ͯͨࣄ͕ग़དྷ ͳ͍ɺ͍ͨ͠ͱ͍ͬͨײ͡Ͱҙݟͷিಥى͖Δ తʹϦονͳ6*Λఏڙ͢Δͱ͔ʹ͍ͯͳ͍ 8FCΞϓϦͳͲɻόοΫΤϯυ ͱಉ͡ϊϦͰཧը໘ͱ͔(PͰ࡞Ζ͏ͱ͢Δͱख͕͔͔ؒͬͨ
ΤϥʔϋϯυϦϯάͳͲͰ هड़ྔ͕ͦΕͳΓʹଟ͘ͳΓ͕ͪɻαΫοͱ࡞Δʹ*%& ͱ͔ͦΕͳΓʹ͍ࠐΜͰͳ͍ͱݫ͍͔͠ ྫ֎͕ແ͍͕Ώ͑ʹɺ*GFSSOJM\^͕େྔʹඞཁʹͳΔखؒΛײ͡Δࣄଟ͍
ࠓ͢ࣄ ࣗݾհ .',&44"*͍ͭͯ ձࣾʹ͍ͭͯ αʔϏεʹ͍ͭͯ HPMBOHUPLZPͰຊ ;Γ͔͑Γ ʒ
࠷ޙʹ ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ