Azure のペースで信頼性の文化を推進する

2020年8月31日 に投稿済み

Chief Technology Officer, Microsoft Azure

「お客様がクラウド サービスに価値を置かれるのは、クラウド サービスがビジネス ニーズの変化に対応できる優れた俊敏性、適応性、拡張性、そして変革力を備えているからです。その変化の速度は、ともすれば信頼性の理念にそぐわない場合もあることから、Azure エンジニアリング チームは、イノベーションのペースとパフォーマンスや品質の確保を両立させるために、チームの文化やプロセス、フレームワークを進化させました。本日は、Azure の Advancing Reliability ブログ シリーズの一環として、Azure エンジニアリング チームのオンボーディング スキル トレーニングによって信頼性の文化を育む上での課題について、プリンシパル プログラム マネージャーの Anne Hamilton に話を聞きました。」- Azure、CTO、Mark Russinovich


 

Azure には、たとえば、エンジニアリングの信頼性を重視するといったような文化があります。そうした中、大いなる成長を遂げ、未知の可能性を切り拓くにあたり、新しいもののスピードと既知のものの安定性の両立を図る必要に迫られています。新入社員が新しいアイデアや視点をもたらすのに対し、ベテラン社員は経験から得た知識や組織に蓄積される知識をもたらします。そのどちらもがチームの文化に貢献することに変わりはなく、品質とイノベーションにどの程度価値が置かれ、実践されるかはそれぞれのチームの文化によって異なってきます。

最良の品質を生み出すには、Azure エンジニアリング チームの文化が、アイデアをオープンに共有し、徹底して検証し、効果的に実現できる場でなければなりません。それは、発想力と創造力を培う場ともいえます。

スキル、プロセス、フレームワークについては教育することができますが、文化はどうでしょうか。新入社員が信頼性を重視する文化に馴染めるようサポート (オンボーディング) するにはどうすればよいでしょうか。

Azure に関するどんな業務でもそうなのですが、私たちは新入社員のオンボーディングとチームの文化の育成を Azure らしいスピードで行う中で、多くの課題に直面しながらも、豊かな学びを得ることができました。

エンジニアのオンボーディング - Azure エンジニアリング ブート キャンプ

クラウド コンピューティングが目覚ましい速さで成長を遂げたことにより、エンジニア職の需要が世界中でかつてないほど高まりました。その結果、Cloud + AI チーム内の、Azure エンジニアリング チームにも、毎週何百人もの新入社員が入ってきています。つまり、何百人もの人々に重要なスキルや社内ツール、ベスト プラクティスのトレーニングを行う必要があり、何百人もの人々がチームの文化に初めて触れるということです。多数の新入社員に絶えずオンボーディングを実施している状況で、組織に蓄積された知識を継承し、信頼性を重視する文化を行き渡らせるにはどうすればよいでしょうか。

新しいエンジニアがマイクロソフトに入社したら、初日は新入社員オリエンテーション (NEO) を受けてもらいます。そして、1 週目はチームと環境に慣れてもらい、2 週目には Azure エンジニアリング ブート キャンプ (ABC) に参加することになります。

ABC の受講者は、ハンズオン ラボで知識を深め、Azure のツールやサービスについて学び、エンジニアリングとビジネスに関する戦略について知るための講習や活動に参加します。信頼性に関するさまざまな理念 (システム思考、アダプティブ リーダーシップ、ダイバーシティとインクルージョンの尊重、顧客開拓など) が明確に伝えられます。たとえば、"システム思考" のセッションでは、機能開発の速度と品質の両立に注目し、より多くの開発者を関与させるかどうかと、いつ関与させるかが、品質を損なわずに機能開発の速度を上げるという難題に対処する上でどう影響するかを探ります。ただし、その真の目的は、信頼性の理念を定着させることにあります。対面でのトレーニングを 1 週間集中して行うことで、トレーナーは、受講者が技術スキルだけでなく、信頼性の文化の特性をリアルタイムで身に付けられるよう規範を示し、コーチングし、支援することができます。

コロナ禍以前に行われた ABC イベントでの新入エンジニア

コロナ禍以前に行われた ABC イベントでの新入エンジニアのグループ

アジェンダには一切書かれていませんが、ABC のインストラクターは文化を伝えることに重きを置いています。それは、マイクロソフトが新入社員に対して技術スキル以上のものを身に付けた状態でチームに加わることを求めていると知っているからです。新入社員には、現状に疑問を持てるだけの自信と、チームの文化的な原動力となるために貢献する姿勢の両方が必要とされます。ABC では、参加者が初めて到着したときからこの期待される能力を高めていけるようにするために、帰属意識を促し、ダイバーシティを尊重すると共に、参加者にカリキュラムへの挑戦を勧め、時に事例とは異なる個人的な体験を共有することで、共有体験を生み出します。ABC は、受講者たちが自ら文化を探究することのできる特別な場です。参加者は、Azure チームに加わるにあたり、本来の自己を分析し、バランスを見い出します。

Microsoft Azure の他の要素と同様に、ABC も Azure の規模の変化への適合性を高めるべく、さらなる成熟と受講者のニーズへの適応を図っています。以降では、プログラムに対する意識を深める上での 3 つの問題と、それらに関する現在の見解を示します。

問題 1: 世界規模での再現性の実現

ワシントン州レドモンドでの ABC の成功要因となった理念には、他のグローバルな組織で採用する上で課題となることもあります。しかし、物事を総体的・包括的に考えることは、信頼性エンジニアリングにおける基本原則です。レドモンドでは、新入社員に信頼性の文化を浸透させる上で、ABC のインストラクター主導の参加型グループ環境が必須の要素となってきましたが、はたしてレドモンドの文化はヨーロッパの文化と同じでしょうか。また、インドはどうでしょうか。ABC でグローバルな標準に一貫して基づきながら、ローカルでの適合性を確保するにはどうすればよいでしょうか。

チームはビデオ オプションを検討しましたが、レドモンドで作成したビデオ トレーニングでは活発なエンジニアリング文化を生み出す上で逆効果となることにすぐに気付きました。代わりに、各地域の関係者と連携して、主要開発センターで地域別のトレーニングを設定することにしました。その結果として生まれたのが、"crawl (はいはいする)、walk (歩く)、run (走る)" アプローチです。このアプローチでは、各地域のセンターが各々のペースで Azure エンジニアリング教育プログラムを成熟させることができます。これにより ABC では、ラボでの演習の改善や、技術関連カリキュラムのより正確でタイムリーな更新など、多数のグローバルな向上効果が得られるようになり、その貢献者の多様性によって信頼性に関する成果も全体的に向上しています。

一例としては、ABC へのデータセンター スタッフの参加が挙げられます。このグループは、キャリアが浅いかあるいはコミュニティ カレッジの卒業生で、ソフトウェア エンジニアリングとは対照的に、インフラストラクチャのエンジニアリングや運用の専門知識を持つ傾向があります。データセンター スタッフは、ABC を、本社チームとのつながりが持てるまたとないチャンスと捉え、本社チームは、大半がこれまでにデータセンターを訪れる機会のなかったこのグループに実際に働く体験を提供します。これらのグループが共に学び、実際のデータセンター体験と本社の洞察を共有することで、両者の成長が促されます。

Crawl、walk、run の各レベル

"crawl" (はいはい) レベルでは、イベントが四半期ごとに行われます。地域のセンターは、ABC のトレーナーを迎えます。また、ローカルのリーダーシップ チームから基調講演者を出すほか、ローカルのエンジニアによる最新の機能とサービスに関するランチタイム講演や、ローカルのベテラン エンジニア グループによるアーキテクチャ設計に関する総仕上げのプロジェクトを通じた受講者のメンタリングを提供します。この場合の利点は、受講者がイベントの間、ローカルとグローバル両方の Azure 文化が混在する環境に浸ることができることです。欠点は、ABC のイベントでしか体験できないので、機会が少ないことです。展開例としては、インドのハイデラバードにある開発センターが挙げられます。

"walk" (歩く) レベルでは、ローカルのプログラム マネージャー (PM) がボランティア トレーナーのグループを監督して、セッションで教え、Azure エンジニアリング文化にローカル色を取り入れます。ローカルの PM が、基調演説者、講師、メンターを集めます。また、新入社員とベテランのエンジニアリング チームとのつながりを深めるために、情報伝達や、関連するコミュニティ、マーケティングの管理を行うのも、ローカルの PM です。この場合の利点は、受講者がローカルの Azure 文化とより深く触れ合い、ローカルのリーダーシップとの関係を深めることができる点です。PM の仕事は、ABC を超えて文化に触れる機会を広げ、受講修了者をより多くのイベントに誘い、参加を進めることにあります。展開例としては、イスラエルのヘルツリーヤにある開発センターが挙げられます。

 

"run" (走る) レベルでは、レドモンド チーム直属のローカル FTE トレーナー 2 名が、ABC で教え、ローカルの講演者や講師を引き込んでプログラムの地域化を図り、Azure Engineering Learning の全面的なアンバサダーとしての役割を果たして、その地域が ABC を超えてトレーニング イベントに完全に取り組めるようにします。これにより、文化の相互交流が一層促進され、学習プログラムがチームの枠組みに深く組み込まれます。学習文化はイベント中心の色合いが薄まり、より日々の有機的な構造の中に溶け込むことになります。展開例としては、アイルランドのダブリンにある開発センターが挙げられます。

ダブリンの ABC トレーナーである Paul Mooney と Jyoti Gupta

2019 年 12 月、次のセッションへの準備を整えたダブリンの ABC FTE トレーナー、Paul Mooney と Jyoti Gupta。

確かに、これはあらゆるレベルにおいて教訓と改善を伴う漸進的な取り組みです。これらの地域は、今後もアプローチを共有し、生み出し、実験を進めて、学習と成長を続けるでしょう。

問題 2: 工場での教育のパーソナライズ

意図的に、ブート キャンプは産業化時代の教育における実利的前提に根差しているため、受講者の大部分が特定の知識およびスキル レベルへと導かれます。軍隊の文脈におけるブート キャンプでは、幅広い経歴、身体能力、スキルを持つ人々が、学習面および身体面での成果として標準のベースラインを達成できるようにします。ブート キャンプは工場の作業員あるいは兵士に取扱説明書の読み方を教えるのに最適ですが、教育を個人の能力開発に合わせて調整することはできず、信頼性の文化で必要とされる構成主義的思考を養う上でほとんど役に立ちません。集中的なオンボーディング プログラムで、個人の能力開発に合わせて調整された学習体験を大規模に提供するにはどうすればよいでしょうか。

ABC はこのニーズに対して問題を抱えていますが、解決に向けて取り組みを進めているところです。そのカリキュラムでは、受講者に対し、Azure でのキャリアにおいて早い段階から頻繁に遭遇するツール、テクノロジ、およびベスト プラクティスに関する調査が実施されるようになっており、基本的な概要、簡潔な実地体験、自己ペースで学習を続けられるリソースの提供に重点が置かれています。ABC の修了後、受講者は、提供される追加のトレーニング イベントや自己ペースで進められるリソースを組み込んだ、個人の学習方針を定義するよう求められます。

ABC 修了者は、ABC の研修室でモデル化され重視された行動を体験したことで、実務の早い段階でより自信を持って提案や主張を述べることができるようになると聞いています。トレーナーは、受講者の体験に基づく実話を利用して、信頼性に関する理論をより具体的に説明します。ABC の PM 兼トレーナーである Devidas Gupta は、次のようにコメントしています。「学習における最高の状態とは、私が受講者の横に立ち、最低限のガイダンスや誘導を行うだけで、受講者同士が意見を共有し議論できるようになることを指します。その時点で私は、受講者が学習体験から抜け出し、他者と効果的にかかわることへの自信と意欲を持ってチームに加わることができると判断します。」

二段階のスピードに分かれる受講者グループ

ABC の受講者を評価すると、大まかに 2 つのグループに分けられます。キャリアが浅いタイプには、ペースが速すぎると感じたり、十分な背景情報や事例が示されていないと感じる人がいるのに対し、経験豊富なエンジニアはカリキュラムが初歩的すぎるとぼやき、より高度な内容を多く取り上げ、もっと掘り下げてほしいと言います。

表面上は、リソースと事業計画が許せば、プログラムを基本クラスと上級クラスに分けて、各々に適した内容とペースで進めることが最善の解決策となるように思われます。ABC ではこれまで、共に学ぶことで両グループが恩恵を受けるような、より弾力性の高い成長を目指す文化を築くために、異なるアプローチを取っていました。キャリアの浅いエンジニアはより経験を積んだエンジニアから学び、経験豊富なエンジニアは大学を卒業したばかりのエンジニアから新しい視点やアプローチを得ることができるためです。そうなると、研修室はチームの文化的体験のるつぼと化します。

インストラクター主導型の場合、インストラクターは、各グループのニーズに合わせてペースを調整したり、背景情報を加えたり、カリキュラムの枠組みを検討したりできるように、それぞれのグループの構成を理解しようとする必要があります。早く来て、遅くまで残り、ABC の終了後もしばしば受講者とかかわってメンタリングを行い、各領域の専門家 (SME) とのつなぎを付けたり、あるいはガイダンスやリソースを提供したりします。このような継続的な深いかかわりが、ABC を非常に特別なものに変えるのです。

新しいアプローチを試験的に導入する

昨今の顧客開拓は、米国の東海岸での大規模な雇用を可能にしています。それらの新入社員のほとんどはキャリアが浅いグループなので、より DevOps に重点を置いたカリキュラムが必要になります。これにより ABC は、体験の中心に文化を据えたまま、ペースを落とし、内容の幅を変える機会を得ます。その目的は、学習期間を延ばして、より多くの背景情報の中で基礎知識を提供し、そのグループをより経験豊富な新入社員と結び付けて、体験を拡大させることにあります。この春初めて試験運用を行い、ひと夏かけて微調整を行ったことで、現在カリキュラムは本格展開の段階に入っています。

問題 3: コロナ禍によるリモート ワークにおける文化の創造

現在のコロナ禍における制限が、ライブでのインストラクター主導型イベントを不可能にしました。現行の形式では、ABC を録画して提供しても、学習体験が大幅に損なわれ、文化的原動力の大半が失われてしまうことが考えられます。しかし、今でも新入社員は毎週増え続けていて、オンボーディングとトレーニングが行われるのを待っているのです。このコロナ禍において新入社員に文化を伝えるにはどうすればよいでしょうか。また、未来に備えて新たな能力を育成するにはどうすべきでしょうか。

喫緊のニーズ

ABC は NEO チームとの緊密な連携のもと、新入社員にできる限り最良のオンボーディング体験を提供すべく取り組んでいます。文化の構築に向けて、現在、"キャンプ カウンセラー" と呼ばれる学習メンターを新入社員の小規模グループごとに割り当て、ABC の内容に大まかに沿った自己ペースの学習オプションの提供を通じて指導を行うことを検討中です。

ビデオベースのコースを試験運用中の ABC トレーナー

ABC FTE トレーナーの Tim Colbert がビデオベースのコースを試験運用しています

短期的な解決策

ABC は、自己ペースの学習用オンライン ビデオ シリーズへと舵を切りました。一連のビデオは、技術スキルとデモに重点を置き、Microsoft Teams を利用した就業時間内のディスカッションを柱として、インストラクターと各領域の SME によって提供されます。キャンプ カウンセラーは、この体験をサポートする学習メンターの役割を果たします。これにより、受講者は実際にメンターやインストラクター、他の受講者とつながる場を持てるため、文化への親しみがわき、研修室での体験が失われたとはいえ、ある程度パーソナライズされたサポートが得られます。

長期的なアプローチ

ABC では、Azure の信頼性文化のモデル化、サポート、拡大がいかに行われているかに細心の注意を払いながら、受講者の反応から学び、適応し、ビデオおよび Teams を利用したトレーニング アプローチの拡張を図ります。今後も新しいアプローチの試験運用と、トレーニング体験の拡充に向けた対応能力の強化を進めます。ABC を超えて、信頼性は Implementing SLOs コースやいくつかの Cloud Talk でも取り上げられています。

今後の展望

Azure の信頼性の中心は、そのエンジニアリング チームの文化から始まっています。チームとは、アイデアを生み出すことができ、意見の相違が検討され、品質への情熱が第一とされる場でなければなりません。目まぐるしい変化がシステムの信頼性を妨げるように、新入社員のペースもチーム文化の育成を阻害する可能性があります。オンボーディング トレーニングにおいて、望ましい文化の特性をモデル化して身に付けることが極めて重要になりますが、その規模がグローバルか、学習レベル全体か、コロナ禍に直面しているかにかかわらず、大規模に実現することがますます困難になってきています。ABC トレーニングでは、すべてのエンジニアが実務の早い段階から信頼性の向上に効果的に参加できるようにするため、今後も新しいアプローチの試験運用と、より良いソリューションへの進化を続けてまいります。

教訓

  • 信頼性エンジニアリングは、チームの文化的な原動力に根差しています。エンジニアリング チームの文化において信頼性を実現する特性に価値を置くことで、信頼性があらゆる行動の一部となるようになります。
  • オンボーディングでは、新入社員に組織の文化を浸透させるチャンスを見逃さないようにしましょう。技術スキルを教えるだけでなく、信頼性文化をモデル化するこで、日常の体験に向けて新入社員の準備がより万全なものとなります。
  • また、グローバル展開を行う際には、ローカル拠点の裁量権と貢献を認めて、ローカルでの信頼性の文化的要素と技術的要素の説得力および適合性が高まるようにします。
  • 適合性を高め、弾力性を養うために、オンボーディングは、まさに慎重な顧客開拓、頻繁な実験、および俊敏な反復が含まれるエンジニアリング パイプラインのように扱いましょう。

詳細については、Azure の Advancing Reliability ブログをご覧ください。