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

18-E-5_Uzabase_高山温_デブサミ登壇資料

UZABASE
February 26, 2021

 18-E-5_Uzabase_高山温_デブサミ登壇資料

UZABASE

February 26, 2021
Tweet

More Decks by UZABASE

Other Decks in Technology

Transcript

  1. !"#として招聘されて1年で
    $%&!'()*'(+を大幅改善するために追求した
    唯一の成果指標
    !"!"#"!#$%
    !"#$#%&'()*)+),)-'.(/-'012#3&4*#'

    View full-size slide

  2. 5
    自己紹介
    高山 温
    !"#$#%&'()*)+),) / -./0)*1
    スペック1
    ピクシブ株式会社
    2012年-2019年
    ● 主にサーバーサイドエンジニア、
    エンジニアリングマネージャー
    ● 新規プロジェクト立ち上げや福岡オフィ
    ス立ち上げなどの経験多数
    ● 2017年からCTO
    スペック2
    ISUCON 6 本選出題担当
    2016年
    スペック3
    株式会社ニューズピックス
    CTOとして入社
    2020年

    View full-size slide

  3. 6
    会社名
    設立
    代表者
    本社所在地
    事業内容
    上場市場
    代表取締役CEO 梅田優祐 / 代表取締役COO 稲垣裕介
    2334年5月6日
    株式会社ユーザベース / Uzabase, Inc.
    東京都港区六本木7-7-7 TRI-SEVEN ROPPONGI 13F
    企業活動の意思決定を支える情報インフラの提供
    東証マザーズ (3966)
    ձࣾ֓ཁ

    View full-size slide

  4. 7
    Our mission
    私たちは、世界中で愛される経済情報インフラをつくります。
    あらゆる経済情報を人とテクノロジーの力で整理・分析・創出し、
    ビジネスパーソンの生産性を高め、創造性を解放します。
    私たちは経済情報を通じて世界中の意思決定を支え、世界を変えます。
    経済情報で、世界を変える
    We guide business people to insights that change the world

    View full-size slide

  5. 8
    エキスパート・ネットワーク
    経営企画部、新規事業担当者向けにリサーチ支援サービスを提供。専門家にインタビュ
    ーができる「エキスパートリサーチ」や先端領域における専門家の見解を集約した「エ
    キスパートオピニオン」を展開
    経済情報プラットフォーム
    金融機関、事業会社向けに世界中の企業財務データ、業界レポート、市場データ、
    9:!情報など、企業戦略の分析や策定に必要な情報を提供
    経済ニュースメディア(日本市場向け)
    国内外;<<メディアのニュースのほか、012#3&4*#編集部のオリジナル記事・動画
    コンテンツを配信し、業界人や専門家のコメントと併せて閲覧可能
    =5=マーケティングプラットフォーム
    ユーザベースグループの企業データベースと顧客の内部データを統合し、データ
    分析に基づいて成約確度の高い企業を特定。!=9(アカウント・ベースドマーケテ
    ィング)の実践を支援
    スタートアップ情報プラットフォーム
    スタートアップの事業概要、資金調達、投資家、提携先、オリジナル記事などをワン
    ストップで提供
    コンサルティング事業
    法人向けに新規事業開発・次世代⼈材育成・組織活性化の推進及びユーザベースグルー
    プの>))>サービスの導入を支援
    ベンチャーキャピタル事業
    シードからアーリーステージの>))>とメディア関連のスタートアップに特化して投資
    0VSTFSWJDFT ʔʮܦࡁ৘ใʯʹಛԽͨ͠αʔϏεల։

    View full-size slide

  6. 78$は何しに9.:#;&<*#へ?
    !"#$%
    今回のテーマ

    View full-size slide

  7. <; | Youは何しにNewsPicksへ? @
    Youは何しにNewsPicksへ?
    ミッション駆動
    「経済情報で、世界を変える」とい
    うミッションが浸透
    ニュースを届けるだけでなく、人々
    の行動が変わることを目指す
    個人的な目標「日本を真に豊かな国
    にすること」ともマッチ
    会社 = プロダクト
    多種多様な職種の人が集まって一つ
    のサービスを作っている
    記者などの「人」がやってこそ価値
    のある仕事がある
    人だけでもテクノロジーだけでもな
    く、人とテクノロジーの融合
    ユーザベースがすごい
    SaaSどころかtoBのインターネット
    企業が無かった時代から、SPEEDA
    という素晴らしいプロダクトを作っ
    ていた

    View full-size slide

  8. A
    直面していた技術的課題
    ❏ NewsPicksは2013年に誕生して以来ずっと「壮大な創業期」
    機能も多く、周辺サービスもいくつかある、まあまあ複雑なシステム
    ❏ 長らく少数精鋭チームで作ってきたがゆえの暗黙知
    ❏ その後2年ほどで開発メンバーの数が一気に50人程度に
    新機能開発が先行し、開発効率が後回しになり、
    開発者が増えてもスピードが出にくい状況になってしまった
    <; | Youは何しにNewsPicksへ?

    View full-size slide

  9. ;<
    直面していた技術的課題
    ❏ NewsPicksは2013年に誕生して以来ずっと「壮大な創業期」
    機能も多く、周辺サービスもいくつかある、まあまあ複雑なシステム
    ❏ 長らく少数精鋭チームで作ってきたがゆえの暗黙知
    ❏ その後2年ほどで開発メンバーの数が一気に50人程度に
    新機能開発が先行し、開発効率が後回しになり、
    開発者が増えてもスピードが出にくい状況になってしまった
    そんな中での...
    突然のCTO
    <; | Youは何しにNewsPicksへ?

    View full-size slide

  10. ;;
    突然のCTO
    「まあまあ複雑なシステム」を任されたCTO
    ❏ 経験はあるが、事業・システム・社内事情、すべてにおいて知識ゼロ
    ❏ 見えてくる課題は様々
    ❏ 期待される役割も様々
    ネックポイント
    <; | Youは何しにNewsPicksへ?

    View full-size slide

  11. ;5
    CTOに期待される役割
    エンジニアリング
    マネージャー
    プロダクト
    マネージャー
    アーキテクト、チーフエンジニア
    新規開発、研究開発
    採用、発信
    <; | Youは何しにNewsPicksへ?

    View full-size slide

  12. ;6
    CTOに期待される役割
    エンジニアリング
    マネージャー
    プロダクト
    マネージャー
    アーキテクト、チーフエンジニア
    新規開発、研究開発
    採用、発信
    すべての期待に
    応えられるのは
    超人だけ
    <; | Youは何しにNewsPicksへ?

    View full-size slide

  13. ;7
    CTOに期待される役割
    エンジニアリング
    マネージャー
    プロダクト
    マネージャー
    アーキテクト、チーフエンジニア
    新規開発、研究開発
    採用、発信
    ただ、超人じゃなくてもできる
    CTO作戦がある
    <; | Youは何しにNewsPicksへ?

    View full-size slide

  14. CTO作戦
    今回のテーマ

    View full-size slide

  15. <5 | CTO作戦 ;?
    CTO作戦
    よくできたテンプレートに乗っかる
    作戦
    =>'?@&".@&)

    View full-size slide

  16. ;B
    CTO作戦
    $%&!'()*'(+とは
    ❏ CTO協会が監修・編纂している企業のデジタル化と
    ソフトウェア活用のためのガイドライン
    ❏ デジタル技術を企業が活用するために必要な要素を
    多角的かつ具体的に体系化したもの
    ❏ 目的は「超高速な事業仮説の検証能力を得ること」
    <5 | CTO作戦

    View full-size slide

  17. ;@
    $%&!'()*'(+
    CTO作戦
    <5 | CTO作戦

    View full-size slide

  18. ;A
    $%&!'()*'(+
    CTO作戦
    <5 | CTO作戦

    View full-size slide

  19. 5<
    $%&!'()*'(+
    CTO作戦
    <5 | CTO作戦

    View full-size slide

  20. 5;
    $%&!'()*'(+
    CTO作戦
    <5 | CTO作戦

    View full-size slide

  21. 9.:#;&<*#で診断してみた
    (2019年末)
    55
    「新機能開発が先行し、開発効率が
    後回しになり、開発者が増えても
    スピードが出にくい状況」
    を象徴するような結果に...
    CTO作戦
    <5 | CTO作戦

    View full-size slide

  22. 56
    ところで…
    デブサミ2020 ベストスピーカー
    1位:「質とスピード」和田 卓人氏
    <5 | CTO作戦

    View full-size slide

  23. 57
    デブサミ2020『質とスピード』和田卓人氏
    [4つのキーメトリクス]
    ・リードタイム
    ・デプロイ頻度
    ・MTTR(平均修復時間)
    ・変更失敗率
    <5 | CTO作戦

    View full-size slide

  24. 58
    『LeanとDevOpsの科学』
    ❏ DX Criteriaからも参照多数
    ❏ ソフトウェア企業の開発スタイルと、
    市場占有率や収益性との関係性を科学的に
    証明していく試み
    ❏ より高速かつ安全に仮説検証できる組織が
    エリート組織に
    [高速]
    開発に迷わない、待たない、
    無駄なコミュニケーションが発生しない
    [安全]
    意識しなくてもセキュリティが保たれ、
    大きな障害にならず、心理的安全
    <5 | CTO作戦

    View full-size slide

  25. 5?
    『LeanとDevOpsの科学』
    <5 | CTO作戦
    入社前からこの本を布教

    View full-size slide

  26. 5B
    [4つのキーメトリクス ]
    エリートクラスタとローパフォーマークラスタの差
    ・開発速度と品質はトレードオフの関係ではない
    ・組織間の差はかなり大きく、さらに開いている(2016-2019)
    ・圧倒的な差は継続的デリバリやDevOpsへの組織的な投資の差
    JaSST'20 Kyushu 基調講演「質とスピード〜ソフトウェア開発の典型的な誤解を解く〜(2020 秋バージョン)」2020.11.20 和田卓人氏
    <5 | CTO作戦

    View full-size slide

  27. 5@
    キーメトリクス
    <4つのキーメトリクスの計測難易度>
    ● コードがコミットされてからデ
    プロイが完了するまでの時間
    ● 多数のリポジトリで画一的に計
    測するのが難しい
    リードタイム:中
    ● 定義が明確で画一的に計測しや
    すく、比較的バラつきも少ない
    デプロイ頻度:低
    ● 障害の始まりと終わりの定義が
    難しい
    MTTR:高
    ● 数のリポジトリで画一的に計測
    するのが難しい
    変更失敗率:中
    <5 | CTO作戦

    View full-size slide

  28. 5A
    キーメトリクス
    <4つのキーメトリクスの計測難易度>
    ● コードがコミットされてからデ
    プロイが完了するまでの時間
    ● 多数のリポジトリで画一的に計
    測するのが難しい
    リードタイム:中
    ● 定義が明確で画一的に計測しや
    すく、比較的バラつきも少ない
    デプロイ頻度:低
    ● 障害の始まりと終わりの定義が
    難しい
    MTTR:高
    ● 数のリポジトリで画一的に計測
    するのが難しい
    変更失敗率:中
    高速かつ安全に開発できるエリート組織は、
    すべての指標が高い
    極論、どれか一つだけを定点観測すれば
    十分では?
    <5 | CTO作戦

    View full-size slide

  29. おすすめ案
    エラー数やSLOなどいくつかの品質に関する指標を
    定点観測し、品質低下傾向にでなければ良しとする
    6<
    キーメトリクス
    ● 計測難易度が低く、アクションが取りやすい
    「デプロイ頻度」をKPIとする
    1
    ● MTTRや変更失敗率は定点観測には向かない
    2
    <5 | CTO作戦

    View full-size slide

  30. 6;
    デプロイエンジニアリング
    「デプロイ頻度」をKPIとして行った改善の
    一部を披露します
    <5 | CTO作戦

    View full-size slide

  31. 65
    デプロイエンジニアリング
    デプロイするためにsshして
    コマンドを実行していた
    A.18@.
    マージされたらbotが動いて
    Slackでポチポチしていけば
    デプロイできるように
    !1".@
    1
    cron実行中はデプロイすることが
    できなかった
    A.18@.
    バイナリを上書きするのではなく、
    まず移動させてから新しい
    ディレクトリにバイナリを配置
    !1".@
    2
    <5 | CTO作戦

    View full-size slide

  32. デプロイ前の手動確認項目が多数
    A.18@.
    Seleniumやアプリのテストビルド
    でのシナリオテストで自動化
    !1".@
    最低限の動作チェックが主だった
    プッシュ通知の前後はデプロイできなかった
    A.18@.
    サービスの性質上、1日の決まった時間にプッシュ通知が
    あり、アクセスが増える。blue/greenデプロイだと
    切り替えの時にDBへのコネクションが枯渇。
    <)B)@+C@8DD&BEデプロイに切り替え
    ● デプロイ作業自体はcanary確認までで完了
    ● その後数十分かけてrolling切り替え
    66
    デプロイエンジニアリング
    !1".@
    3 4
    <5 | CTO作戦

    View full-size slide

  33. 67
    デプロイエンジニアリング
    変わったこと
    ❏ 1回のデプロイ作業に30分〜1時間かかっていたのが5分に
    ❏ 開発者1人あたりのデプロイ頻度は2倍〜3倍に
    ❏ 権限の低い開発者も安全にデプロイできるように
    ❏ デプロイ作業が面倒という理由で複数のコミットをまとめ
    てデプロイしていたのが激減
    デプロイ頻度を定点観測して開発者全員の意識を
    高めるとともに、改善を称えるように
    <5 | CTO作戦

    View full-size slide

  34. 68
    品質への取り組み
    ❏ [高速] 開発に迷わない、待たない、
    無駄なコミュニケーションが発生しない
    ❏ [安全]意識しなくてもセキュリティが保たれ、
    大きな障害にならず、心理的安全
    片方に偏ると、もう片方がおろそかになる
    エラーを放置して機能開発を優先するマインドに
    なっては本末転倒!
    アクセルとブレーキが大事!
    <5 | CTO作戦

    View full-size slide

  35. 6?
    品質への取り組み
    ❏ いくつかの指標を定点観測できる
    ようにした
    ❏ 悪化傾向にならなければOKとした
    ✔エラー数
    ✔レスポンスタイム
    ✔スマホアプリのCrash Free率
    ✔セキュリティリスクアセスメントの自動化
    ✔お問い合わせ起因のチケットの生存期間
    MTTRや変更失敗率の指数関数的な
    改善を目指せるかは今後の課題
    <5 | CTO作戦
    指標

    View full-size slide

  36. 6B
    そして、1年後...
    2019年末のDX Criteria 2020年末のDX Criteria
    <5 | CTO作戦

    View full-size slide

  37. 6@
    お伝えしたいこと
    ❏ ソフトウェア開発組織運営のためのよくできたテンプレがある
    ❏ 突然CTOになっても大丈夫
    ❏ 多くの場合で、デプロイ頻度をKPIにするのは効果的
    $%&!'()*'(+ ,*+-と$*.#/0の科学
    <5 | CTO作戦

    View full-size slide

  38. 6A
    お伝えしたいこと
    ❏ CTOの最も重要な責任は、会社の未来を左右する大きな技術投資
    ❏ 短期トレンドを見極めるのは難しい
    ❏ いつでも変わらず、必要になる技術に投資して社内に蓄積しよう
    ❏ 開発者がより高速かつ安全に開発できるための技術はどの会社で
    も必ず投資すべき技術
    <5 | CTO作戦

    View full-size slide

  39. Uzabaseからのお知らせ
    <6 | お知らせ 7<
    9.:#;&<*#
    %""F#GHH".<%I$J)K)#.I<8,H
    LJ)K)#.'(.<%'
    ポータルサイト
    M公式(:&"".@N
    -LJ)K)#.O(.<%
    %""F#GHH":&"".@I<8,H$J)K)#.O".<%
    %""F#GHHB.:#F&<*#I<8,H

    View full-size slide

  40. Uzabaseからのお知らせ
    7;
    【UB企業ブース両日開催中】
    ブースに来訪してくださった方から抽選で
    スマートフォン充電器パッドをプレゼント!!
    <6 | お知らせ

    View full-size slide

  41. アンケートのお願い
    75
    本セッションのアンケートにご協力をお願いします
    ・右のQRコードを読み込んでいただく
    ・チャットに流れているURLから入力
    どちらでも構いません。
    <6 | お知らせ

    View full-size slide

  42. "1+-2&345&64'&7(0)*-(-89

    View full-size slide