if-up 2019 a4 「進化し続けるプロダクトを作るための開発チーム」のまとめ

2019年2月14日に行われたif-up 2019のa4セッションの模様をまとめました。
2
ふみきり @fumikiriX

進化し続けるプロダクトを作るための開発チーム #ifup2019 #ifup2019a

2019-02-14 16:47:24
関 満徳@fullvirtue @fullvirtue

「進化し続けるプロダクトを作るための開発チーム」はじまりました。マイクロサービスの活用の話を中心に進めていきます。 Tably 及川 卓也 氏 クックパッド 成田 一生 氏 freee 横路 隆 氏 ソラコム 安川 健太 #ifup2019 #ifup2019a if-up2019.soracom.jp pic.twitter.com/wAslBStEYW

2019-02-14 16:50:23
拡大
拡大
拡大
もす🇹🇼 @mookura

マイクロサービスの認識を再確認 モノリシックアーキテクチャではなく、個別の小さな機能(Function)単位でのコンポーネントの組み合わせでサービスを構成する。というもの。 i see. #ifup2019 #ifup2019a

2019-02-14 16:51:25
はたぽん @hataponia

進化し続けるプロダクトを作るための開発チーム、マイクロサービスをいかに活用するか。 クックパッド成田さん、freee横路さん、ソラコム安川さん、モデレーターは及川卓也さん。 #ifup2019 pic.twitter.com/D7nVahpo8I

2019-02-14 16:52:23
拡大
akanuma CTO@UniFa @akanuma

クックパッドでは2014年ごろからモノリシックアーキテクチャからマイクロサービスへの移行を決断。既存機能はビジネス上必要性のある単位で分割を進める(やりすぎない) #ifup2019a #ifup2019

2019-02-14 16:53:43
ふみきり @fumikiriX

クックパッドCTO 成田さん インフラエンジニア出身 クックパッドのシステムは10年ほど運用しているが、システムが巨大過ぎて拡張しにくい、構造を把握しにくい そのため、新しい機能は別サービスを作ってつなぐ 進化し続けるプロダクトを作るための開発チーム #ifup2019 #ifup2019a

2019-02-14 16:54:34
akanuma CTO@UniFa @akanuma

メリット:自分が担当している部分へのオーナーシップ、当事者意識。開発速度は共通基盤が整ってきてからは快適 デメリット:社内流動性が高く、オーナー不在のサービスが発生することがある。コスト面でも技術投資が必要 #ifup2019

2019-02-14 16:55:33
ふみきり @fumikiriX

メリット ・開発基盤が整えば快適 ・一から機能を設計するので教育的によい デメリット ・担当不在になる可能性がある ・開発基盤が整う前はつらい 進化し続けるプロダクトを作るための開発チーム #ifup2019 #ifup2019a

2019-02-14 16:55:55
もす🇹🇼 @mookura

「マイクロサービス化したほうがいいのか?」 ↓ しらん!時と場合による! マイクロサービスはある種の文化だからねぇ。 #ifup2019 #ifup2019a

2019-02-14 16:56:49
akanuma CTO@UniFa @akanuma

うまくやれてそうな部分:現場ニーズからではなく、経営判断として進めている マイクロサービス化した方が良いかどうかについては、場合による。大抵の場合はやらなくて良い #ifup2019 #ifup2019a

2019-02-14 16:57:02
ふみきり @fumikiriX

※大抵の場合はマイクロサービスはいらない? #ifup2019 #ifup2019a

2019-02-14 16:57:03
関 満徳@fullvirtue @fullvirtue

クックパッドさんからみた、マイクロサービス導入のメリットとデメリット。クックパッド全体としては大きいプロダクトではあるが、個別のマイクロサービス単位でみた場合、ゼロから作る機会が得られるため、愛着が沸きやすい。 #ifup2019 #ifup2019a if-up2019.soracom.jp pic.twitter.com/bb57TvkPis

2019-02-14 16:57:46
拡大
拡大
関 満徳@fullvirtue @fullvirtue

(午後最初のセッションでも言われていましたが、ゼロからプロダクトを創る経験は積んだ方がよいという経験を積ませる機会を創出できるというのは、とてもよさそうでした) #ifup2019 #ifup2019a if-up2019.soracom.jp

2019-02-14 16:58:06
関 満徳@fullvirtue @fullvirtue

freeeさんからみた、マイクロサービス導入のメリットとデメリット。プロダクトが大きくなっていくと、品質、速度、デプロイ頻度が同時に悪くなっていく。マイクロサービスを導入すると、その3点について改善が見込める。 #ifup2019 #ifup2019a if-up2019.soracom.jp pic.twitter.com/m1AKnzVnoH

2019-02-14 17:01:10
拡大
akanuma CTO@UniFa @akanuma

freeeのマイクロサービス導入での工夫したポイント ・プロダクト戦略から考えて重要なところから分割 ・DB Transaction境界・サービスIFの設計がほぼ全て ・腐敗防止層を設けて段階的リリース(Facade, Adapter) ・サービス基盤チームへの投資とセットで実施 #ifup2019

2019-02-14 17:03:43
ふみきり @fumikiriX

freee 横路さん ミッション スモールビジネスを世界の主役に #ifup2019 #ifup2019a pic.twitter.com/O8uqME28jg

2019-02-14 17:03:44
拡大
はたぽん @hataponia

コードベースが大きいと、デプロイペースが遅くなり、開発スピード・品質が悪くなるので、マイクロサービス化を意識している。 プロダクト戦略から優先順位をつけ分割、DB・サービスのIF単位、組織単位で分割、サービス基盤チームへの投資とセットで実施。by横路さん #ifup2019

2019-02-14 17:03:54
関 満徳@fullvirtue @fullvirtue

横路氏が紹介していたアクセラレートは、この本かな... amazon.co.jp/dp/4295004901/ #ifup2019 #ifup2019a

2019-02-14 17:05:31
もす🇹🇼 @mookura

SORACOMのアーキテクチャ詳細、初めてみたかも!! ワクワクするぜ。 #ifup2019 #ifup2019a pic.twitter.com/lkV5xdz6zI

2019-02-14 17:07:59
拡大
関 満徳@fullvirtue @fullvirtue

SORACOMのアーキテクチャ。実はアーキテクチャ設計した後に、マイクロサービスと言い始めた。(結果的にはマイクロサービスの考え方もうまく取り入れて設計されている。) #ifup2019 #ifup2019a if-up2019.soracom.jp pic.twitter.com/uCzuu35FA2

2019-02-14 17:09:12
拡大
akanuma CTO@UniFa @akanuma

コンポーネントごとに向いている言語を選べる #ifup2019a #ifup2019

2019-02-14 17:09:49
もす🇹🇼 @mookura

使用言語は適材適所。例えばSORACOMのGGSN/PGWの部分はパケットを高速に処理しなければいけないのでC言語で書いたり、 API GatewayはGoで書かれてたり。 ほーーーーぉ。 #ifup2019 #ifup2019a

2019-02-14 17:11:37