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
Kenta Kozuka
March 29, 2021
Programming
0
30
フィーチャーフラグを使用した開発で 迅速かつ安全にリリースする
Kenta Kozuka
March 29, 2021
Tweet
Share
More Decks by Kenta Kozuka
See All by Kenta Kozuka
事業部を超えた 開発生産性向上に挑戦する
kentakozuka
7
1.2k
1000人を超えるエンジニア組織へのGitHub Copilot導入促進
kentakozuka
0
210
KubeCon 2023 China Recap & ブースを出展してきました
kentakozuka
1
160
サイバーエージェントでCDツールを内製した話
kentakozuka
1
310
PipeCDでGitOpsやってみよう!
kentakozuka
0
420
サイバーエージェントのフィーチャーフラグを活用した高速開発
kentakozuka
0
15
リアルタイムデータ分析基盤をKafka(Strimzi) & Druidで構築し
kentakozuka
0
35
Other Decks in Programming
See All in Programming
Sheets API使ってみた
toshi0383
2
170
TCAとKMPを用いた新規動画配信アプリ 「ABEMA Live」の設計
tomu28
2
130
MicrosoftのPlatform Engineeringガイドを読んで実際になにかやってみた
ymd65536
1
540
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
12
4.3k
Criando a Woovi em uma semana
daniloab
0
110
Three ways to use AI on Android: The Good, the Bad and the Ugly
marxallski
0
110
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
1
1.4k
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
4
920
Tailwind CSSを本気でカスタマイズする方法
fsubal
15
5.6k
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
560
Git Rebase
bkuhlmann
11
1.6k
はてなにおける CSS Modules、及び CSS Modules に足りないもの / CSS Modules in Hatena, and CSS Modules missing parts
mizdra
7
1k
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
62
5k
What's new in Ruby 2.0
geeforr
337
31k
How GitHub (no longer) Works
holman
305
140k
Become a Pro
speakerdeck
PRO
13
4.6k
Designing on Purpose - Digital PM Summit 2013
jponch
111
6.5k
Facilitating Awesome Meetings
lara
43
5.6k
Embracing the Ebb and Flow
colly
80
4.2k
The Invisible Side of Design
smashingmag
294
49k
jQuery: Nuts, Bolts and Bling
dougneiner
60
7.2k
Being A Developer After 40
akosma
67
580k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
GraphQLの誤解/rethinking-graphql
sonatard
56
9.3k
Transcript
フィーチャーフラグを使用した開発で 迅速かつ安全にリリースする @kentakozuka
@kentakozuka CyberAgent所属 - Backend - Go, Python - 最近フロントエンド -
TS, React, Redux, Nx, TailwindCSS, gRPC - 今やっていること →
In-House Feature Flag & A/B Testing Platform 「Bucketeer」という名前です 社内プロダクト用フィーチャーフラ グ
& ABテストプラットフォーム 社内の複数のプロダクトで導入 今回はBucketeerのフロントエンドで Bucketeerを使った開発の話
フィーチャーフラグとは 基本は if文 if (featureFlag) { // 機能がオン } else
{ // 機能がオフ }
フィーチャーフラグでできること 動的なOn/Off - リアルタイム - 管理画面から誰でも 限定的なリリース 段階的なロールアウト - ベータ
- ダークローンチ - ドッグフーディング - 少ないユーザーから徐々 にリリース - 即時ロールバック - トランクベース 開発 - ABテスト - 機能の使用状況の把握 分析
実際のユースケース 1. 開発環境では、開発者のみにフラグをオンにするなどして適宜開発する 2. 本番環境では、機能の開発終了までオフにしておく 3. デプロイ後に段階的にロールアウトを実施、問題なければ全展開する 新画面のリリース デプロイ ロールアウトリリース
0% 100%
メリット PRが小さくなる - レビューしやすい - バグが入りにくい 本番でテストできる リスクが小さいリリース - 開発者のみに機能をオン
- 本番データで動作確認 - 少ないユーザーから徐々 にリリース - 問題があればすぐにロー ルバック
まとめ フィーチャーフラグを使えばストレスレスかつ安全なリリースが可能に 本日の紹介した内容以外にも、いろいろなメリットがあります。 - パフォーマンス調整 - UI変更 - ABテスト -
などなど、、、
ありがとう ございました🙇 CodeZineに寄稿しました。 興味がある方は是非!