DevOpsのテキスト研修
DevOpsチームはなぜ業務改善のために時間を確保する必要があるか
業務を改善する時間を確保するのは、DevOpsで初めて生まれた手法ではありません。リーン生産方式では数十年前から、次の考え方を大切にしてきました。「仕事を改善することは、仕事そのものよりも重要です。」”
つまり、今日の働き方を改善しなければ、明日にはその仕事が時代遅れになり、やがて市場での競争力を損なうということです。DevOpsではこの手法をリーン生産方式から取り入れ、チームと組織が継続して学べるようにしています。
DevOpsによるソフトウェア開発とデリバリーから、チームと共に時間を使い、仕事を改善して学び続けるための方法をいくつか紹介します。
- 外部からフィードバックを得る 業務プロセスの外にいる人に、そのプロセスを担う人を集中的に支援してもらいます。外部からのフィードバックは、プロセスを改善し、非効率を取り除くのに役立ち、新たな視点をもたらします。
- 技術的負債を定期的に減らす 定期的にチームを集め、新機能の作業を止めて技術的負債を減らします。バリューストリーム全体をカバーするさまざまなスキルを持つエンジニアが、議論するだけでなく、実際にコード、環境、ツール、コンポーネント、アーキテクチャを改善します。こうすることで、新機能をより安定した強固な基盤の上に構築できます。
- 新しいものを生み出す時間を定期的に確保する エンジニアの勤務時間の一部を、技術や事業の革新に使えるようにします。Googleは、この方法を長年使っている有力なDevOps組織の一つです。Googleの従業員は、担当業務に割り当てられていない20%の時間を使い、試作品、製品、機能、テストスイート、ソリューションを開発します。Gmail、Google Maps、AdSenseは、その20%の時間から生まれた主な製品です。
- 教え合い、学び合うことを促す 教える時間を確保します。社内カンファレンス、ワークショップ、メンタリング、コーチング、相談の場を設け、チームが定期的に学べるようにします。開発者は運用の業務と課題を学び、運用エンジニアは開発を学びます。互いの仕事をよりよく理解し、その理解を保つことができます。結果として、互いの業務を理解し、人としてのつながりもある協力関係を築けます。また、同じようなエンジニアリングや運用の課題を他の組織がどう解決しているかを理解するため、チームにカンファレンスへの参加を促します。
- 各分野の専門家を指導者にする 誰でも専門家のところへ行って質問し、進行中のプロジェクトとは関係のない話題でも議論できる時間を設けます。私たちは生涯学び続けます。チームはその考え方を尊重するだけでなく、自分たちも生涯学び続けるからこそ、その意味を理解しています。
- 新しいアイデアを生むハッカソンを開く FacebookのMarc Zuckerbergは、こう説明しています。「数か月に一度ハッカソンを開き、全員が新しいアイデアの試作品を作ります。最後にチーム全体で集まり、できあがったものをすべて見ます。タイムライン、チャット、動画、モバイル開発フレームワーク、HipHopコンパイラーのような重要なインフラなど、最も成功した製品の多くがハッカソンから生まれました。」
まとめ
改善に使う余裕を定期的に設けると、組織のバリューストリームに関わる誰もが、新しい取り組みと品質に責任を持てます。DevOpsチームの全エンジニアが日常業務に、安全性、品質、学び、信頼性、改善を継続して取り入れ、それが最終的に顧客に提供するソフトウェア製品やサービスに反映されます。
DevOpsチームで助け合うことで、組織は競合を追い越し、一人ひとりは人としてもエンジニアとしても、持てる力を最大限に伸ばせます。
