ぱと隊長日誌

ブログ運用もエンジニアとしての生き方も模索中

泳げないヤツは沈めばいい、だが泳ぎ方は教えるべきだ

「泳げないヤツは沈めばいい」。今はわからないが、昔のマイクロソフトの育成ポリシーだ。

マイクロソフトは、十分な研修をしないことで有名だ。「泳げないヤツは沈めばいい」というのが、新人のルールだった。
闘うプログラマー[新装版] ビル・ゲイツの野望を担った男達

入社してから二か月、ハルプトゾクはオフィスにこもって、C言語のプログラミングを自習した。ウィットマーから本を一冊わたされ、後は自分でやれと言われた。泳げないヤツは沈めばいいのだ。大学では、プログラミング理論を学んでいた。プログラミングの実務は職場で学べると考えていた。しかし、しばらくすると、時間がかかりすぎているのではないかと心配になってきた。ウィトマーがいつ自分のオフィスに来て、クビを宣告するかわからないと思うこともあった。
闘うプログラマー[新装版] ビル・ゲイツの野望を担った男達

この育成ポリシーはIT業界で時折見かける。私が未経験でIT業界に入り、プログラマーとしてのキャリアを始めた時も引用したハルプトゾクのエピソードと同じ教育方法だった。時間がかかりすぎていて、いつかクビになるのではないかとおびえていた。

そして、私は今もIT業界の片隅にいる。泳ぎ切れたということなのだろう。だが、こんな生存者バイアスで語るのはもうやめよう。後輩がエンジニアとしての泳ぎ方(成長の仕方)を知らないのであれば、泳ぎ方を教えるべきだ。

泳ぎ方を教えることで成長のスピードが格段にアップする。そして、そこで教わった経験は次の世代へとつながっていく。

泳ぎ方を教えるというのは、手取り足取りすることではない。それは操っているだけに過ぎない。泳ぎ方を説明し、実際にやってみせる。次に泳がせて、良かった点と改善すべき点を伝える。想定したレベルに到達していなければ、要求レベルをステップに分解して、ステップ毎に教える。これを繰り返すことだ。

スキルは知識と経験の掛け算だ。知識だけなら独学できることもある。知識を効率よく身に着ける方法を伝授することもできる。一方、経験は実践しなければ身につかない。後輩に取り組むチャンスを与えることが重要だ。目の前の効率だけを考えれば、自分でやったほうが格段に早い。後輩に任せると自分の効率まで落ちるかもしれない。でも、後輩の将来のために任せるのだ。知識として泳法を知っていても、泳ぐ経験を積まなければ、泳げないままだ。

自分ができるからといって後輩にそのレベルを求めないことも重要だ。自分が休暇も費やしてスキルアップに勤しんでいるからといって、後輩にも同じことを求めてはいけない。自身のそんな姿勢を見せつつも、取り組み方は後輩に任せる。後輩の置かれている状況は後輩にしかわからない。その中でベストを尽くしていると信じるのだ。

後輩に学ぶ意欲が無ければ諦める。学ぶ意欲が無い方に教えても響かないし、いつまでたっても自分で学べるようにはならない。「泳げないヤツは沈めばいい」。厳しいようだが、やる気の無い方にはできることだけやってもらい、その分の余力を見込みある若者に費やすべきだ。

後輩が育つのには時間がかかる。学ぶ意欲のある後輩が伸び悩んでも見捨てないことだ。成長曲線には踊り場(プラトー)がある。この踊り場を突き抜けた時、急激に成長することがあるからだ。
天才にもおとずれるプラトーの正体とは? | 脳にまかせる勉強法 | ダイヤモンド・オンライン

私は意欲ある後輩の可能性を信じている。例えいつか別の道を歩もうとも、そこで活躍してくれると信じている。だから泳ぎ方を教え続ける。