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
47
フィーチャーフラグを使用した開発で 迅速かつ安全にリリースする
Kenta Kozuka
March 29, 2021
Tweet
Share
More Decks by Kenta Kozuka
See All by Kenta Kozuka
事業部を超えた 開発生産性向上に挑戦する
kentakozuka
7
1.4k
1000人を超えるエンジニア組織へのGitHub Copilot導入促進
kentakozuka
0
290
KubeCon 2023 China Recap & ブースを出展してきました
kentakozuka
1
190
サイバーエージェントでCDツールを内製した話
kentakozuka
1
400
PipeCDでGitOpsやってみよう!
kentakozuka
0
610
サイバーエージェントのフィーチャーフラグを活用した高速開発
kentakozuka
0
32
リアルタイムデータ分析基盤をKafka(Strimzi) & Druidで構築し
kentakozuka
0
69
Other Decks in Programming
See All in Programming
cXML という電子商取引の トランザクションを支える プロトコルと向きあっている話
phigasui
3
2.2k
WEBエンジニア向けAI活用入門
sutetotanuki
0
300
役立つログに取り組もう
irof
26
8.6k
Synchronizationを支える技術
s_shimotori
1
150
現場で役立つモデリング 超入門
masuda220
PRO
12
2.9k
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
7
2.8k
ECSのサービス間通信 4つの方法を比較する 〜Canary,Blue/Greenも添えて〜
tkikuc
11
2.3k
CPython 인터프리터 구조 파헤치기 - PyCon Korea 24
kennethanceyer
0
240
のびしろを広げる巻き込まれ力:偶然を活かすキャリアの作り方/oso2024
takahashiikki
1
410
2万ページのSSG運用における工夫と注意点 / Vue Fes Japan 2024
chinen
3
1.3k
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
1
290
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
390
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
79
8.6k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
How to train your dragon (web standard)
notwaldorf
88
5.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Raft: Consensus for Rubyists
vanstee
136
6.6k
Documentation Writing (for coders)
carmenintech
65
4.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
46
2.1k
The Cult of Friendly URLs
andyhume
78
6k
Art, The Web, and Tiny UX
lynnandtonic
296
20k
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に寄稿しました。 興味がある方は是非!