EMとしてエンジニアの教育で実践してきた理論を紹介!

この記事は ウィルゲート Advent Calendar 2022 - Adventar の24日目の記事です。

こんにちは!ウィルゲート開発室 開発基盤ユニット マネージャー池添です。

私は、普段はプロダクトの開発チームに寄らないプロダクト横断での改善を行うインフラチーム、SRE(Site Reliability Engineering)チーム、CRE(Customer Reliability Engineering)チームを取りまとめています。 また、今年の4月から前任の横道から組織デザインチームのリーダーを引き継ぎ、開発室全体のスキルアップや教育について従事してきました。

私は、前任である横道がいたときから一緒に組織デザインチームに所属しており、組織の技術成長やメンバーひとりひとりのキャリアアップについて考え実践してきました。 この記事では、その中でメンバーの成長に対して組織としてエンジニアリングマネージャーとしてどんなことを意識しているのかについて、まとめたいと思います。

前任である横道の記事もぜひ読んでみてください。 tech.willgate.co.jp

はじめに

私が教育において大事にしていることを大きく4つ紹介したいと思います。

前提として、教育において必ずこうしたらこう育つという決まったものはありません。 なのでここで紹介するものは、今までのわたしの経験の中での成功事例を元にしたハウツーや法則になります。 コーディングとは違って必ず同じ結果が得られるわけではない中で試行錯誤していくのもこの役割の楽しさでもありますね。

1.最も大事なモチベーティング

一つ目はモチベーティングです。教育や教えるといった言葉をこの記事ではよく使いますが、我々にできることはあくまでその学ぶための環境や機会の提供までしかできません。

有名なことわざに「馬を水辺に連れて行くことはできても、水を飲ませることはできない。 」というものがありますが、教育においてもまさに同じことが言えます。 学ぶ環境やいい教育ができる状態を整えても、学ぶ側がそれに対して興味を持ち学ぶ意欲を持てないと意味がありません。

この後に説明する「ティーチング」や「コーチング」はよく教育や指導の観点で出てくることが多いですが、モチベーティングについて触れてるものは少ない印象を受けますが、とても大事だと考えています。

学ぶ側のモチベーションを上げるためには、まずマズローの欲求5段階説における外的欲求が満たされているか、が大事です。 マズローの欲求5段階説についてはこちらの記事がわかりやすいので参照してください。

あたり前ですが、文化的な生活や暮らしが脅かされていたり、社内での安全が担保されていない状態では新しくなにかに挑戦しようという気にはなかなかなれません。

私がしていることとしては、1on1などでのメンバーの近況ヒアリング、中途メンバーのオンボーディングやメンバーの業務課題の早期発見などがあります。

特に自己承認欲求については、私は常々褒めることが教育への近道だと思っていますが、得意なことや好きなことをちゃんと見てあげて褒めることで自己承認欲求が満たされ、自ら学び成長してくれたりもします。 また、他の観点として上の役職者が楽しくない組織では成長もしたくないと思いますので、自分自身が一番仕事を楽しめるように努力をしその楽しんでいる様を見せることも大事ですね。

2.成熟モデルと領域に合わせた「ティーチング」と「コーチング」

次に大事なのが、レベルに合わせた「ティーチング」と「コーチング」の使い分けです。 せっかくモチベーションが高い状態になっていても、適切な教育が出来ていないと、成長はありません。

ここでは、どのようなレベルがありどのように「ティーチング」と「コーチング」を使い分ければ良いかについて説明します。 「ティーチング」と「コーチング」の違いについては、この記事では解説しませんので他を参照してください。

エンジニア教育における成熟モデル

エンジニアの成熟モデルについては、Qiitaにまとまってる下記の記事がとても参考になりました。

qiita.com

こちらの記事にある「S1: 指示型」から「S4: 委任型」までを社内の評価基準やロールに合わせて整理し、各メンバーが今どこの領域なのか、どのキャリアを目指してるのかをすり合わせるのに利用しています。

S1~S4までを社内基準に合わせ整理したもの

このように、知識が必要な段階とその知識を持って実践する経験の段階に大きく分けることができます。

「ティーチング」と「コーチング」の使い分け

「ティーチング」と「コーチング」の使い分けですが、知識学習に対しては「ティーチング」を経験学習に対しては「コーチング」というように使い分けることをおすすめしています。

これは「ティーチング」は教える側が知っていることを教えるやり方に対して、「コーチング」では教わる側の体験を引き出すことで課題や次にやるべきことを考えるためのサポートをしていきます。

まさに、この「ティーチング」と「コーチング」は知識学習と経験学習それぞれに適した教育方法なのです。

そのため先程の成熟モデルに合わせて「S1: 指示型」には「ティーチング」を多めに教育し、そこから徐々に上がっていくにつれ「コーチング」を増やし逆に「ティーチング」の量を減らしていくという教育方法を取ると良いです。

また、知識学習領域においては同じ教材を使って知識獲得をすることができるため、弊社では業務において一定必要な知識をまとめ、講義資料を作成し研修を行うことで効率的な学習体系を構築しました。 その話と資料についてはまたどこかで記事にしたいと思います。

3.1on1を活用し経験を何倍にも増やす

最近では1on1をやってる会社も珍しくなく、様々な目的で実施されていることも多いように思います。

その中でも、特に業務上の困っていることや心理的安全性の向上などが多く挙げられると思います。

しかし、1on1で私が一番重要視しているのはその業務上の困っていることをただ上司が解決してあげるのではなく、その解決までのプロセスを一緒にやることで解決の仕方を身につけてもらうのが重要な役割だと考えています。

そのために必要なのが一緒に振り返りを行い、出てきた事実や行動に対して「チャンクダウン」「チャンクアップ」「スライドアウト」を行うことで学んだことをより価値ある経験に転換する事ができます。

ここで言う「チャンクダウン」「チャンクアップ」「スライドアウト」は次のようなことです。

  • チャンクダウン: 起きた事実から具体的に深堀りすること
  • チャンクアップ: 具体的になった事柄を抽象的に捉え直し汎用的な学びにすること
  • スライドアウト: チャンクアップ等で得た学びを他の似たような事例に対して適用すること

このようなことがスムーズにできるようになってくるとこれはいわゆる「メタ認知能力」や、「抽象化・構造化力」といったスキルに繋がりより自己学習を効率化することができます。

4.効率よく学習するための知識

最後は学習に関する知識をまとめておきます。これは教育する側も受ける側どちらにおいても大事なことです。

学びの段階を意識する

ある特定のものを学習する際に意識するべきこととして「学びの5つの壁」においてどの段階にいるかを意識するというものがあります。

学びの7段階

これは成長を細かく観測するためにも重要ですし、できるようになったと思っていたものが特定のときだとできなかった、などのようなときの振り返りに使えます。 例えば、忙しいときに報告することを忘れてしまうなどは、意識していればできるがまだ習慣になっていないとか、すごく集中して作業すればミスなく作業をこなせるなどは技術習得していないなどにあたります。

また、これは見方をすこし変えると「学習の5段階レベル(あるいは4段階)」と呼ばれるものに置き換えることもできます。

学習の5段階レベル

「学習の5段階レベル」では、意識的・無意識的と無能・有能(できるかできないか)のマトリクスとそれらを兼ね備えた状態(無意識的にできていることを認知して教えることができる状態)と分けています。

学習のレベルを上げるという点では後者の「学習の5段階レベル」で自身のできることできないことがどのレベルにいるかを把握しておくとわかりやすいかもしれません。

そしてここで特に大事なのが、可能な限りスキルは無意識的有能のレベルまで熟練させておくことが大事です。

これは意識しないとできないものは、長いことやっていないと忘れてしまったり、負荷が高いときにできなかったりしてしまうことが多く、意識すること自体もコストになってしまうからです。 私はこれをRPGなどでよくあるアクティブスキル(意識的有能)とパッシブスキル(無意識的有能)にたとえて説明しています。

アクティブスキル(意識的有能)とパッシブスキル(無意識的有能)のイメージ

ちなみにスポーツなどは、まさにこの積み重ねであることが多く、最初はいろんなことを意識的にやるためうまくできないのですが、基礎練習を繰り返すことで無意識でできるようにすることで複雑な判断や繊細なコントロールをできるようにしたりします。

認知特性と記憶率(ラーニングピラミッド)

知識学習の学習方法において大事なことが自分の認知特性を知ることです。 認知特性とは大きく「視覚優位」「言語優位」「聴覚優位」の3つに分けられており、それぞれ映像や言葉、音に対して得意な認知方法が人によって異なることを指します。

自身の認知特性を知っておくことで、より効果的な学習方法を行うことで知識獲得を効率よく行う事ができるはずです。 例えば「視覚優位」であれば図に整理したり絵を書いたりすると覚えやすかったり、「言語優位」であれば自分なりの考えや理解を文章に書き起こすことで覚えやすいでしょう。

認知特性はWeb上で簡単にテストできるサイトもあるので、ぜひ自分の特性を理解しそれにあった学習方法を取り入れてみましょう。

また、スキルを効率よく自分の身に取り入れるためには「ラーニングピラミッド」を意識しましょう。

ラーニングピラミッド

このラーニングピラミッドでは、例えば講義を受けるだけだとその知識を覚える割合は5%程度とされており、それについてグループ討論をすると50%程度まで上昇しています。

これはただ話を聞くだけより、そのことについて自ら考え話したり意見を交換するという主体的な行動をすることでより記憶に定着することを表しています。

その中でも特に高いのは、「他人に教えた経験」で記憶率は90%となっています。これはいろんな認知を利用することもあり特に認知特性においても有効な方法ですね。

また、エンジニアの登壇文化とも密接に関わっており、よく登壇するエンジニアがいろんな知識を博している要因の一つとも言えるのではないでしょうか。

おわりに

今回は私が組織デザインチームとして、教育活動をしてきた中で蓄積してきた知識や考え方について整理してアウトプットさせていただきました。 この記事が皆さんの教育や成長に少しでも役に立てられれば嬉しいです。

これからも、開発室全体のキャリア支援や組織育成について尽力していきますので、よろしくおねがいします。

ウィルゲート Advent Calendar 2022 - Adventar」、翌日は向平康将さんの「ウィルゲートの開発組織の今とこれから」です!