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
48
フィーチャーフラグを使用した開発で 迅速かつ安全にリリースする
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
300
KubeCon 2023 China Recap & ブースを出展してきました
kentakozuka
1
200
PipeCD Good First Issues
kentakozuka
0
0
サイバーエージェントでCDツールを内製した話
kentakozuka
1
410
PipeCDでGitOpsやってみよう!
kentakozuka
0
630
サイバーエージェントのフィーチャーフラグを活用した高速開発
kentakozuka
0
32
リアルタイムデータ分析基盤をKafka(Strimzi) & Druidで構築し
kentakozuka
0
71
Other Decks in Programming
See All in Programming
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
130
Less waste, more joy, and a lot more green: How Quarkus makes Java better
hollycummins
0
100
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
220
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
170
初めてDefinitelyTypedにPRを出した話
syumai
0
410
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
ローコードSaaSのUXを向上させるためのTypeScript
taro28
1
610
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
120
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.3k
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
920
as(型アサーション)を書く前にできること
marokanatani
10
2.7k
距離関数を極める! / SESSIONS 2024
gam0022
0
280
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
120
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
96
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Side Projects
sachag
452
42k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
890
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に寄稿しました。 興味がある方は是非!