Slide 1

Slide 1 text

1 縁の下をどう支えるか 〜 の伝え方 CircleCI Developer Advocate 舟木 将彦 (@mfunaki) #JTF2021w_C

Slide 2

Slide 2 text

自己紹介 HIC Researcher Dejima Developer Sybase Eng Mgr SAP Design Thinker 転 Microsoft Digital Adviser 買 転 買 CircleCI Developer Advocate 転

Slide 3

Slide 3 text

最初に質問です

Slide 4

Slide 4 text

ソフトウェアエンジニアの生産性を高めるのは何? 速いCPU、リッチなメモリ、広い画面? 肩こりや腰痛と無縁になれる椅子?

Slide 5

Slide 5 text

どれも正しいと思います。 けど、それって「もの」ですよね。

Slide 6

Slide 6 text

日本はホワイトカラーの生産性は低いが、 製造業(ものづくり)の生産性は他国より優れている → 過去(2000年)までの常識 ただし、日本の生産性が下がっていたわけではない →ほぼ横ばい「何も変わってこなかった」 日本以外の各国は人力ではなく、デジタル・ ITを 活用することで生産性を高めてきた (ただし、アイルランドのように低税率の法人税で 多国籍企業を誘致し、ものづくりは他国で、売り上げは 自国でという現実には留意が必要 ) 6 日本の ものづくり生産性 出典: 日本生産性本部「労働生産性の国際比較 2019」 労働生産性水準 : 就業者1人あたり付加価値

Slide 7

Slide 7 text

作っているのは 「もの」じゃないんだ

Slide 8

Slide 8 text

質問2

Slide 9

Slide 9 text

この2枚の「一日乗車券」、何が違う? その日の終電まで有効 使い始めから24時間有効 人手ゆえの制約

Slide 10

Slide 10 text

10 きっぷなら ● 一日の定義が変えられる ● 終電まで有効は変えないまま、 使い始め時刻により価格を変える デジタル情報+ 自動化で タイムカードなら ● 8時間労働が非連続でもよい ● 働いた時刻(人手の需給)に応じて 時給を変える これまで「手動」でやってきたことが、「自動化」可能に 無理だったアイデアを 実装して「変化」できる

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

人手でやってません? ビルド、テスト、リリース、デプロイ

Slide 13

Slide 13 text

13 継続するビジネスと開発・運用の継続をつなげる プラン コード ビルド テスト リリース デプ ロイ 運用 監視 継続的インテグレーション (CI) 継続的 デプロイ (CD) 自動化できない 完全自動化できない プルリクエスト(コードの追加・修正 )起点で 自動化 ビジネスが継続する限り、プロジェクトは続く 共有 リポジトリ上 で 常に作業 コード追加・修正時は 常にビルド・テスト (最後にまとめてやらな い→早く失敗すれば 早く品質が安定する) サービス停止せず常時 リリース/デプロイ (失敗時にはクイックに 修正 / 前バージョンに 戻せる)しくみ 運用・監視しやすい 品質をコードに反映 (必要なデータの取得、 スケーラビリティの 確保) 継続的: ● お願いドリブンでな いこと ● 遠慮なしに依頼可 能な状態 ● 依頼しなくても 左から右に カンバンが 流れる状態 継続的ではない: 「それ、手元の  コードでは  もう直したんです  けど」

Slide 14

Slide 14 text

の重要さは 既に理解している ≒共感・理解をヨコのメンバーに広げられる ≠お金を出す人(タテ)を説得できる 頭で理解してもらうだけでなく(ROI, 機 能比較などなど) 腹に落としてもらって 行動してもらわないと 開発・運用プロセスは変わらない

Slide 15

Slide 15 text

15 早くFAIL(失敗)すれば、 もっと早く成功できる!

Slide 16

Slide 16 text

16 は「最初のフェーズ」からやるべし マシュマロ・チャレンジ 18分間で 乾燥パスタ20本+タコ糸90cm+ テープ90cm+はさみ でタワーを作り、一番高いチームが 勝ち。 ただし、タワーの頂上には マシュマロを刺しておくこと。

Slide 17

Slide 17 text

17 大人と幼稚園児の アプローチの違い 大人 18分間のほとんどを ● 計画(Plan) ● 構築(Build) で使い、最後の最後になって頂上にマシュマロを突き刺す →あえなく倒れてしまい、  (どんなに一生懸命頑張っていたとしても )結果は0cm。 幼稚園児 18分間を通じて、 ● 低いタワーを作る ● マシュマロを刺す: MVP - Minimum Viable Product ● タワーの高さを少し高くする を繰り返す。 タワーが倒れてしまったら、直前まで立っていたタワーの高さに戻す。 →DevOpsな皆様なら、聞いたことある話 この「マシュマロチャレンジ」を 私(舟木)は2013年以来、 日本企業や海外日本企業拠点を 中心に150社以上で実施 →業界や会社ごとの 「個性」見てきています!

Slide 18

Slide 18 text

テスト・ビルド・ リリース・デプロイ 後でもできる、簡単だと思って、 舐めんなよ 500円玉と同じ程度には 重いって分かってたら もっと早く 取り掛かっていたのでは? 大して中身も なくて スカスカに 見える 私ですが

Slide 19

Slide 19 text

の考える生産性 「もの」以外で生産性を高める

Slide 20

Slide 20 text

20 実データから見る自動化(CI/CD) 調査期間  2020/08/01~30  (2019年版は90日間) 調査対象  44,000組織  160,000プロジェクト  200万ジョブ/日

Slide 21

Slide 21 text

21 ユーザーの 中央値(2020/08) ベンチマーク目標値 スループット ワークフローの平均実行数 0.7回/日 プルリクエストのマージごと いつでも(遠慮せずに)ビルド可能 実行時間 ワークフローの平均実行時間 4分以内 5~10分 自動化可能なことは全て任せる 平均復旧時間 ワークフローの失敗~成功の平均時 間 56分以内 60分以内 大きな失敗を最後にではなく、すぐ に復旧できる失敗を早期に 成功率 ワークフローの成功数/実行数 デフォルトブランチで 80% デフォルトブランチで 90%以上 自動化における4つの評価ポイント ここの数値を「近い目標」として ここの数値をベンチマーク対象にする

Slide 22

Slide 22 text

なぜCircleCIを選ぶべきなのか を知りたい

Slide 23

Slide 23 text

CI/CDマーケットにおけるCircleCIの位置づけ CircleCI https://www.g2.com/categories/continuous-integration?segment=mid-market#grid

Slide 24

Slide 24 text

CI/CDを簡単に定義するためのパーツ(Orbs)が充実 パートナー様製 Orbs CircleCI 製 Orbs

Slide 25

Slide 25 text

数多くのお客様のビジネスをCI/CDの面から支えている実績

Slide 26

Slide 26 text

日本語のウェブサイト・技術情報・情報発信

Slide 27

Slide 27 text

コミュニティ起点での豊富な情報とエンジニアの成長支援 CircleCI (335) GitHub Actions (237) GitLab (134) Jenkins (59)

Slide 28

Slide 28 text

CircleCI Advent Calendar 2020

Slide 29

Slide 29 text

教育やPoCレベル以上のリアルユースケース

Slide 30

Slide 30 text

30

Slide 31

Slide 31 text

雑誌・書籍・技術系同人誌が充実

Slide 32

Slide 32 text

皆さんが選ばれて輝く存在である ように、CircleCIも選ばれて輝く存在でありたい 情報を発信・共有することで 自ら輝く 発信された情報を「まとめる・再発信する」 ことで、反射して輝く

Slide 33

Slide 33 text

33 #CircleCI書き初め大会 開催中! 開発プロセス、テスト、リリース、 デプロイ、自動化、品質、生産性 などなど、みなさまの思うところを #CircleCI書き初め で共有ください!

Slide 34

Slide 34 text

Thank you. 34