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
5
サイバーエージェントで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
CSC509 Lecture 11
javiergs
PRO
0
180
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
EMになってからチームの成果を最大化するために取り組んだこと/ Maximize team performance as EM
nashiusagi
0
100
Quine, Polyglot, 良いコード
qnighy
4
650
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
3
690
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
190
cmp.Or に感動した
otakakot
3
200
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
110
Macとオーディオ再生 2024/11/02
yusukeito
0
370
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
610
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
170
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
900
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
427
64k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Side Projects
sachag
452
42k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Building Adaptive Systems
keathley
38
2.3k
Designing for humans not robots
tammielis
250
25k
Designing the Hi-DPI Web
ddemaree
280
34k
Building Applications with DynamoDB
mza
90
6.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Teambox: Starting and Learning
jrom
133
8.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
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に寄稿しました。 興味がある方は是非!