LAMPエンジニアってこういうもんでしょ

こういうもんでしょって話をつらつらと

エンジニアの教育に力入れるってなかなか難しいと思うので殴り書き

転職なんぞして
環境がガラリと変わりました。
何が一番変わったかと言えば
エンジニアじゃない人と一緒に仕事をする機会が非常に増えたことです。
前職だと社員はみんなエンジニアだったので
エンジニア的な話はツーカーでいけたのですが
今はそうではないということです。


新卒のエンジニア職の人もそこそこいるのですが
エンジニアとしての業務もしつつ
社内のオペレーション業務もしつつなので
なかなかエンジニアスキルがついていかないな〜
という悩みもありつつ
ふと、どうやってエンジニアとして一人前になっていくんだろう
という事を考えるようになりました。


世の中には
「非エンジニア職の人にエンジニアとしてのスキルの入り口に立ってもらう」
というサービスがたくさんあります。
ドットインストールしかり
Hack for Playしかり
非エンジニア向けにデザインやプログラミングの勉強会も定期的に開催されています。
しかし
初心者エンジニア職の人が深く広い知識をつけるための
体型立った教育の方法って未だに聞いた事がないです。


企業やサービスに属すると
そのチームの中で必要な技術は先輩が教えてくれます。
しかし世の中で「エンジニアが欲しい」と言っている会社は
特定企業に特化した技術を持っているエンジニアが欲しいわけではありませんし
もっと言えば自分のチームの技術に特化したエンジニアが欲しいわけです。
スタートはA社の技術を学んでいた初心者エンジニアが
B社にも転職出来るスキルぐらいまでスキルをつけていく過程であったりとか
あるいはC社にもD社にもオファーされるぐらいにまでなるのに
どういう事が必要なんだろうかと思ったのです。


まずは「一人前のエンジニア」の定義です。
IT業界にしてもWEB業界にしてもLAMPエンジニアにしても
とてもたくさんの技術が世の中に氾濫しています。
htmlが上手に書けるエンジニアが
必ずしもLANケーブルを上手に配線出来るとは限りません。
様々な分野でエンジニアと言われている人の中で
「一人前のエンジニア」として共通していることとは何か
というところです。


経験則から言うならば
「自走出来るだけの知識量を保持する能力を持っている」
ということかと思います。
一度仕入れた知識は使っていなければ忘れてしまいますし
定期的にアップデートしなければ時代に取り残されます。
新しい情報を仕入れなくてはいけない場面も多々あります。
そういった事を行って自走していける知識量を常に持ち続けている人を
世の中では「一人前のエンジニア」と言うのではないかなと思うのです。
SESの営業とかだと「一人称で開発が出来る」みたいな表現をされることも多いですが
おそらくそういうことだろうと。。。


では全く知識が無いところから
一定量の知識を持ち
常に知識の更新と新規取得が出来るエンジニアになるにはどうしたら良いのでしょうか。
一定量の知識については体系立てた勉強が効率的なのは言うまでもありません。
そのためにスクールがあったり本があったりするのです。
しかしそこにプラスして
知識の更新と新規取得をする術も学ばなくてはいけないのです。
こちらは正直どうやって身につけたのか自分でもわかりませんし
多くのエンジニアが「気がついたらそういう風になっていた」のではないかなと思います。
「技術に興味を持ってアンテナを張ること」と言うエンジニアもいるとは思いますが
正直好きでも無いものに興味を持つことはとても難しく
人に言われたからといってそう簡単にできるものではありません。


裏を返すと
技術が好きになる事が一人前のエンジニアになる近道だということになります。
技術を好きになってもらう近道はあるのでしょうか。
そもそも採用の時によく見極めるという方法もありますが
「一定量の知識を取得してもらうための体系立てた教育」の中で
それを刷り込んで行くことは出来ないものか
と考えるわけです。


さらに言うと
エンジニアとしての一人前というだけでなく
ビジネスにおけるトップランナーとしてのエンジニアであったり
企業における「最初のエンジニア」になり得るための過程は
どういうものがあるのだろうと考えるのです。
ベンチャー大流行のこの時代において
ITが欠かせないこの時代において
高度なエンジニア教育のフローが出来上がれば
それは世の中に大きなインパクトになるんじゃないかな〜と
最近はそんなことばかり考えております。