エンジニア育成について #2「作りたいモノを作る事と仕事で作るモノの違い」

2017年12月4日

コミュニケーション 学習 特集

エンジニア育成の第2回目ですが、前回は育成する環境について書きましたが、2回目は育成する内容と、仕事でつまずきやすいポイントをまとめてみました。 会社で新人採用をした時に、エンジニア(プログラマー)を育成する時の参考にしていただければ幸いです。

WEBエンジニアの育成段階でのつまずきポイント

新人社員というのは、初めに誰もが感じている心境は「不安」が大半だと思います。 その中に、仕事に対する「期待」と「ワクワク感」が入り混じり、複雑な心境であることは間違いないでしょう。 そんな心境の人に対して、物事を教えていくと、「成功する人」と「失敗する人」という風に分類されてきます。 これは何に対しての「成功」と「失敗」かというと、教育を行う時に、教育したい通りにうまくいく「成功」と、 教えた通りにはならない「失敗」という意味ですが、その人自体が「成功」したとか「失敗」したということではありません。 行った教育が、その人に対して「成功」したか、「失敗」したかという内容です。 ここで理解しなければいけないのは、教えたとおりに出来ないことは悪いことかという事です。 普通に考えると、教育を受ける人に非があるわけではなく、
その人に合った教え方ができていない
という事実に気が付かない教育者は、単なる一方通行の教科書マシンでしかないという事ですね。 学生時代の自分を思い出すとよく分かる人も多いと思いますが、周囲がテストの点数がいいのに、自分の点数だけが悪い時に、劣等感を覚えがちですが、そんな時にアドバイスをくれる先生や、周囲の誰かがいるだけで、その人の成長って大きく変わってくるでしょう。 エンジニアに限ったことではないですが、そうした育成段階でのつまずきとして、他の人と成長を比べないという事を認識できるだけで、気分も含めて確実に成長できるポイントであると考えています。

どんなカリキュラムが望ましいのか?

僕が実際に企業においてWEBエンジニア教育を行っていた時の話ですが、JSの書けるフロントエンジニアを育成するという事を念頭に組んだカリキュラムがあります。 そこには、WEBエンジニアとして、知っておくべき、「サーバー、ネットワーク」という知識から、「フロントだけではないサーバーサイドのCGI」という知識までてんこ盛りで用意していました。 受講者の中には、内容についてこられる人、来られない人という2つに分かれ、僕もついてこられないひとに対してどうやって教えていけばいいか、ずっと悩んでいましたが、そういう環境においては、やはりクラス分けをするべきだったと思います。 レベルの違う人達を、ひとまとめに教えようとしていたことに無理があったんですね。 そうかんがえると、理想は、マンツーマンなのだと思います。 カリキュラムは同一でも、進め方は人によって違う為、それらに合わせた進め方をしなければいけません。 ちなみに、その時のカリキュラムは以下のような内容でした。
【WEBエンジニア育成授業】 1. インターネットのれきしについて 2. ネットワークのしくみについて 3. ブラウザについて 4. HTMLの仕組み 5. CSSの仕組み 6. Javascriptの仕組み 7. サーバーサイド処理 8. WEBサイト構築 9. レベルアップポイントについて 10. 仕事の進め方と企業の立ち位置

エンジニアとして作りたいモノとそうでないモノ

次にエンジニアの卵の人達について書きますが、プログラムを職業にすると考えた時に、よく非エンジニアの人達から以下のようなコメントをもらいます。
・数学が得意じゃないとプログラムはできない。 ・英語が苦手なのでプログラムが読めない。 ・エンジニアとしての適正が自分には無い。 ・自分は技術に詳しくないから全く理解できない。
これらは全て間違った認識ですね。 数学や英語が苦手な一流プログラマーはたくさんいますし、技術を深く知らないエンジニアも非常に多くいます。 僕の考えるエンジニアの特性は、上記の「無い無いコメント」に「・・・できないけど、出来たら楽しい」と言葉が続けられる人ではないでしょうか? 無い無いコメントを言う人って、試合を始める前から負ける事を考えているだけの人で、自分がプログラムできない事を言っているだけにすぎません。 簡単なWEBサイトを作る程度の事であれば、英語や数学が苦手な人でも、コンピュータに精通していなくても、インターネットでググるだけでできてしまう時代です。 改めてこうした思考の根本て非常に重要なその人の要素になるので、この辺にポイントをおいてみて、エンジニア初心者のレベルを評価してみると、クラス分けをする参考になると思います。 ちなみに、エンジニアの人達がよく話をする「自分の作りたいモノはモチベーションが上がる」という点がありますが、これも実はスキルの一つで、
仕事として受ける内容を好きになれるかどうか
この思考につきます。 やっている仕事がどうしても好きになれない人は、無理にその仕事をしないほうがいいと思います。 何故なら、その仕事を依頼する人も、良い結果が生まれないからです。

育成のポイントまとめ

きちんとしたカリキュラムがある育成講座は、分かりやすい講座ですが、ここに応用が効くか効かないかがポイントであるので、カリキュラムを随時変更できるぐらいの柔軟性が必要。 苦手意識は持っていてもいいが、自分のスキルアップにブレーキがかかる恐れがあるので、どうすればそれを払拭できるかを自分も含めて講師も考える必要がある。 モノづくり(プログラミングなど)を給料をもらって行うことは、プロフェッショナルである事に変わりありません。 プロ意識が芽生えるタイミングなどを講師が知ることで、一方的ではなく、各個人に合った教え方ができるようになる。 やはり、教える側も教わる側も、決まったレールを進むのではなく、その人による進み方があると考えるだけで、「面白い」と感じる人と、「面倒くさい」と感じる人に別れると思います。 適正の見極めって、一箇所ではなく全てにおいて行うことが重要なようですね。

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。