Upgrade to Pro — share decks privately, control downloads, hide ads and more …

サイバーエージェントのフィーチャーフラグを活用した高速開発【CADC2022】

 サイバーエージェントのフィーチャーフラグを活用した高速開発【CADC2022】

フィーチャーフラグを使用することにより、トランクベース開発が可能になりダークランチやベータリリースが可能になります。これにより、短いサイクルでの機能開発やA/Bテストによる効果測定を実現し、ユーザーへの価値提供をより高めていくことができます。
本発表ではABEMA、Winticketなどのプロダクトでどのようにフィーチャーフラグを活用しているのか、具体例を交えて紹介します。またメディア統括本部のDeveloper Productivity室が提供するフィーチャーフラグ&ABテスト基盤Bucketeerや、OSSとして公開しているフィーチャーフラグを管理するクライアントライブラリFlagfitについても紹介します。

2016ba6b977a2e6691811fa66d5f4336?s=128

CyberAgent
PRO

March 24, 2022
Tweet

More Decks by CyberAgent

Other Decks in Technology

Transcript

  1. 䝃䜲䝞䞊䜶䞊䝆䜵䞁䝖䛾 䝣䜱䞊䝏䝱䞊䝣䝷䜾䜢ά⏝䛧䛯㧗㏿㛤Ⓨ

  2. ဌ།ೃང Ꮠუ౓័୥୔஀஬୘஬୨ୗண୸஑୷୓୒ᣰስ፱ᵄ %FWFMPQFS1SPEVDUJWJUZ࿝஀୳ୟ୘ண୹ Ⴆ௴ᴆഊ័ _"#&."

  3. వጄᯌଋଅଚ  அ୓஬ୱஓ஬அஙୠ—᷻ᜲ  ័ങஅ୓஬ୱஓ஬அஙୠ໱ᝑଠᣞశ  ࿚ṃଠ஖஬୩ୡ஬୩  "#&."ଙଠஅ୓஬ୱஓ஬அஙୠଠᔲᛟఔ౺

  4. அ୓஬ୱஓ஬அஙୠ — ᷻ᜲ

  5. அ୓஬ୱஓ஬அஙୠଚଡ ṹ᜷ῧඐ᜷ଝᑺᧄଠ0/0''ୄ൐଼፝ૺଽᇸᔕ

  6. அ୓஬ୱஓ஬அஙୠଚଡ $!! /0- '"x ‰‰*.*( /#$)"` y '. x ‰‰*.*(

    /#$)" '. ` y䈊
  7. அ୓஬ୱஓ஬அஙୠଚଡ அஙୠଠಱଡ୚ணῧ୚அଠಱଙଜଁଘ଴ᨭ૶ ౺DPMPSYYYYYY ZZZZZZ ౺ዥᮟ૖ᜳᶿୄૼẹ૶ଉରଋ૗ ૖ᜳᶿୄୟச୳ୟῙ૗ அஙୠଠಱଡಱౄ௥ଙ଴ᨭ૶ ౺B C D

  8. ᑗ૏ଜ஖஬୩ୡ஬୩  Ḣ࿖᜷ଜசச஬୩  ୸ஙணୟஉ஬୩᷻ᜲ  "ῧ#୶୩୸

  9. 㝈ᐃⓗ䛺䝸䝸䞊䝇  உ஬୯ῧ୒஛அ୑ῧஇஜஏ୒ஐசச஬୩  ୰஬ୟ஝஬ணୱ  ᓃḼ᜷஝஬஛୒ୖ୸  ஝஬஛஀୳ୟ

  10. ୸ஙணୟஉ஬୩᷻ᜲ ᄟᎋଠ᷻ᜲଙଡ  ᷻ᜲஆஙணୱଙ᷶૶ጤ᷾૽ଃଽ  எ஬୨ୣணஅசୟ୸૾ᱹ૿ଶଋ૶  ஜஃக஬૾ག༷ 0DVWHU 0HUJH

    &RQIOLFW
  11. ୸ஙணୟஉ஬୩᷻ᜲ ୸ஙணୟஉ஬୩᷻ᜲଙଡ  ጄଜଛឌ૶සౡଙNBTUFSஆஙணୱଝஎ஬୨ଋଽ  ୣணஅசୟ୸૾ᱹ૿ଝଁ૶  ஜஃக஬ଉଶଋ૶ 0DVWHU 5HOHDVH

    5HOHDVH
  12. "#୶୩୸ ࿚ṃଠ஖஬୦஬ଙዹᡩଠඇ᎞ୄ឴૽ଳଜ૾଻᷻ᜲଋଽ

  13. அ୓஬ୱஓ஬அஙୠଠ஑ச୳୸ ୷இ஝୔ଚசச஬୩ୄ൐଼Ṟଋ  ச୩ୟୄ፞ဌḢଝልૺଘἙᴌଜ᷻ᜲ  ፱᛺ᛋ༕ଙ୶୩୸ଋଽ  ୩୸ஜ୩ଠဍଜ૶᷻ᜲ %ąűŁŒƧňąŊƄɵʖɵ›ąŁąÚŻą

  14. அ୓஬ୱஓ஬அஙୠଠ୷஑ச୳୸ ୣ஬୹ᵸଠ༗඀ அஙୠᡷᚫୣ୩୸  ଛଠஅஙୠ૾൙ᛟଇାଘ૶ଽ૽  அஙୠฉ༪ଠಁྺ ࿁᥯ῧဋഊୣ୩୸

  15. ័ങஅ୓஬ୱஓ஬அஙୠ໱ᝑ ଠᣞశ

  16. ័ങஅ୓஬ୱஓ஬அஙୠ"#୶୩୸இங୳୸அ୙஬ஐ Ⴆ፠"#&."ଠ໱ᝑஇ஝୰ୟ୸ଚଉଘசச஬୩ ଏଠᄛ ஑୷୓୒ᣰስ፱ᵄ%FWFMPQFS1SPEVDUJWJUZ࿝ପ᠇ᡷૌ"#&."ౄ༻ ଠ័ങஇ஝୰ୟ୸ପଠဋഊ᷻ཷૌ "#&."ୄ௴ᄮଝ័ങଠᮉ፩ୄ෫ଃଜ૾଻ᑺᧄ᷻ᜲୄଉଘ૿ଘ૶ଽૌ

  17. %XFNHWHHU சୟ୘୩୸ ୟங୔୒ண୸4%,૽଻அஙୠಱୄஇ஛ଋଽૌ ୥஬஀஬೅ଙ஖஬୦஬ဪᅌᆁ༁ୄ೺ଝஅஙୠಱୄൗ࿖ଋଽૌ அஙୠಱ

  18. ࿚ṃଠ஖஬୩ୡ஬୩

  19. ᷻ᜲ᥽ଶ2"ଜଛḢ଻ା଑஖஬୦஬ଠ଱୚ணଝଉ଑૶ GPP IPHF஖஬୦஬ଡUSVFોGFF஖஬୦஬ଡGBMTFଝଜଽૌ

  20. ొᆜଠ୒இச஀஬୨஗ணଠ଱ᑺᧄୄ୚ணଝଉ଑૶ ୒இசଠBQQ@WFSTJPO૾ର଑ଡౄ௥ଙ૴ାଢUSVFଝଜ ଽૌ

  21. ఒଳᓴଳ଻ା଑ጄጤଝசச஬୩ଉ଑૶ ଝஅ୓஬ୱஓ஬அஙୠ૾፡ඇටଇାଽૌ

  22. Ṅ࿢ጤଝᨅඐ᜷ଝᑺᧄୄ୚அଝଉ଑૶ #VDLFUFFS "QQ 䜶䝷䞊䜲䝧䞁䝖䛾㏦ಙ ୘ங஬ஜ஬୸ଠᮣᡴ  அஙୠଠ୚அ அஙୠಱଠᳵ෍

  23. அ୓஬ୱஓ஬அஙୠଠ༷ፕୄ෌ጤ෧ጙଇ଍଑૶ #VDLFUFFS 'JSFCBTF "QQ '$.இ୳୧கᴉញசୟ୘୩୸ '$.இ୳୧கᴉញ அஙୠಱଠᮉᓥ அஙୠಱଠᳵ෍ ገଁଘዝ៽ଙஅஙୠಱ૾፞ዶଝ༷ፕଇାଽૌ

  24. ଏଠ఼ ୥஬஀஬୥୔୹ଙ଴౶૶଑૶ ߓ(P /PEFKTଠ୥஬஀஬୥୔୹4%,ୄசச஬୩ ༻ᵄஒ୻୯சணୠ୧୩୶ஐ૽଻அஙୠಱୄ༷ፕଉ଑૶ ߓXFCIPPL"1*ῠ᷻ᜲ௴ῡ அஙୠ"૾USVFଠଚ૿ોஅஙୠ#଴USVFଝଉ଑૶ ߓ'MBH%FQFOEFODZῠ᷻ᜲ௴ῡ "#୶୩୸ଠ଑ଳଝஙண୰ஐଝ൵଼ჾଘ଑૶ ߓଙஙண୰ஐଝ൵଼ჾଘଽଅଚ૾෺ᧄૌ

    FUD
  25. "#&."ଙଠ அ୓஬ୱஓ஬அஙୠଠ ᔲᛟዷᔕ

  26. "#&."ଙ౶ᛟଇାଘ૶ଽ அ୓஬ୱஓ஬அஙୠ ሐ଄ᶦ፡ඇஅஙୠ 117፡ඇஅஙୠ ஜண୯஛ᑺᧄ፡ඇஅஙୠ 7PJDF0WFSଙୱஓண୽஛൐଼፝ૺ ஁஬୭୺ங୔୪Ⴒยᵒಘஅ୙஬஛஀୳ୟ፡ඇ፫᷾ 117ᛨᱥ᮱࿖ ᑥᖓᛨᱥ ଠ႑໫௥Ḣಱ

    "70%$.ᓍଠ୯୔ஐ୒ୖ୸ ៽ ዶᝫ᮴ᓥ஍୳இ୒୳இ ஃ୷୚୸୳இஂ஬஝஬Ꭰஒ୨க஬஛ᭇ៍൝ᄤ ୒ணୡ஬୸ജᭇ៍஝୨୳ୟജᭇ៍ଠ෺ณ஫ጄా᷾Ḿ஫ຳዝ௥Ḣ FUDవରଙଙౄ௥౶ᛟૌ
  27. சச஬୩᝗൩ଝஅஙୠୄ୚ணଝଉ ଘඐ᜷ଝ༷ፕଙ૿ଽ଺૸ଝଋଽૌ "#&."ଙଠᴛᛟ சச஬୩൩ଡஅஙୠୄᄰଌ୚அଝ ଉଘૼଁૌ ଑଒ଉો୷஀୳ୠଶ୶୩୸ଜଛଡ ᨅᛣଝ୚ணଝଙ૿ଽૌ சச஬୩ᄛો౶ᛟଉଜଁଜକ଑அ ஙୠଡ൦Ḩଋଽૌ சச஬୩

  28. 'MBH῏U "#&."ᜲஅ୓஬ୱஓ஬அஙୠᡷᚫ ங୔ஆஙச

  29. "#&."ଙ᷻ᜲଉ଑அ୓஬ୱஓ஬அஙୠୄᡷᚫଋଽ"OESPJEᛟୟங୔୒ண ୸ங୔ஆஙசῠ044  அஙୠୄLPUMJOJOUFSGBDFଚଉଘሄૺଽ  ୒୾୶஬୧஗ணୄ౶ᛟଉଘ᛽ଜଽஅஙୠ୭஬୩૽଻ᣰ௟ଉ଑୔ண ୯஬அୗ஬୩ଙஅஙୠᡷᚫ૾෺ᧄૌ  அஙୠୄ࿍ഋଝᡷᚫଋଽૌ J04ଙ଴ฉᑗଠ఻ᣣ଱ୄ࿚᭢ଉଘ૶ଽૌ

    'MBH῏U ฟ඾KWWSVJLWKXEFRPDEHPDIODJILW
  30. $)/ -! '" -1$ x ™**' )'"t & 4k) 2g2

    .*( g! /0- k_  !0'/'0 !'. u !0)2 .*(  /0- )' tua**' ) y 1'!'"!$/'"!$/t . )1(+!t f ff /*0$'*)!$"` u u 1'!'" -1$ a'" -1$ !'"!$/`- / tu 1'2 .*(  /0- )' !'" -1$ `2 .*(  /0- )' tu 'MBH῏U
  31. ™**' )'"t & 4k2 .*( g! /0- k_  !0'/'0

    !'. u ™*""' 4+ `*-& )-*"- .. !0)2 .*(  /0- )' tua**' ) ™'"4+ `*-& )-*"- .. ୒୾୶஬୧஗ண૾ଖ૶ଘ૶ଽஅ୑ணୟ୧஗ணଡᄰଌGBMTF૾ᳵ෍ଇାଽૌ
  32. ™**' )'"t & 4k2 .*( g! /0- k_  !0'/'0

    !'. u ™'"4+ `3+ -$( )/ !0)2 .*(  /0- )' tua**' ) ™'"4+ `3+ -$( )/ ቁ࿖ଉ଑୭஬୩૽଻ಱ૾ᳵଇାଽ
  33. ଏଠ఼ଝ଴  ୷஀୳ୠጤଝஅஙୠಱୄొᆜଠಱଝଋଽૌ  ୶୩୸ጤଡ஝஬୛஛ଙ᮱࿖ଉ଑ಱୄ౶ᛟଋଽૌ  ୛୩୯ஐ୒୾୶஬୧஗ண  FUD 'MBH῏U

    ฟ඾KWWSVJLWKXEFRPDEHPDIODJILW
  34. ରଚଳ

  35. அ୓஬ୱஓ஬அஙୠଡ୷இ஝୔ଚசச஬୩ୄ൐଼Ṟଋ  ச୩ୟୄ፞ဌḢଝልૺଘἙᴌଜ᷻ᜲ  ፱᛺ᛋ༕ଙ୶୩୸ଙ૿ଽ  ୩୸ஜ୩ଠဍଜ૶᷻ᜲ #VDLFUFFSῲ័ങஅ୓஬ୱஓ஬அஙୠ"#୶୩୸இங୳୸அ୙஬ஐ  ័ങଠᑗ૏ଜ୻஬୪ଝ࿾ᄷଉଘ૶ଽ

    "#&."ଙଠᔲᛟ  ࿚౺  ங୔ஆஙசୄ౶କ଑᷻ᜲ_சச஬୩ᄛରଙଠᴛᛟ ରଚଳ