仮想サーファーの波乗り

仮想化エンジニアの日常

プログラミング・SNS分析・仮想通貨・自動化などに関してよく書きます。

「エンジニアになりたい!」て言うやつの9割はエンジニアにならない問題


f:id:virtual-surfer:20180615204435p:plain

マジでこれ、どうにかならないもんですか。


社会に蔓延する「エンジニアになりたい!」詐欺


「エンジニアになりたい!」「プログラミングができるようになりたい!」って言っている知り合い・大学の後輩の9割は、エンジニアになりません。それどころか、「エンジニアになりたい!」っていう相談に乗ってから1ヶ月後には、「そういえば、最近プログラミングどう?」と聞くと十中八九、「ん。最近やってないんだよね!それよりさ〜...」と会話のネタを変えてくる始末。おいおい。お前がやりたいって言ってたんやろがい。


こんなことを書いているのも、最近、「エンジニアなりたいので、相談に乗ってください!」と急にLINEが来ることが増えて、その相談に結構な頻度でしっかり応えているのですが、上記のような始末になってしまうので、これはなんとかしないといけないという次第です。

思い返せば、僕ももともと文系で2年前までは、「HTMLだけでWebアプリケーションって作れないの...?」というレベルでした。そこから周りの人に質問しまくって、嫌な顔をされながらも質問したおして、ようやくエンジニアとして給料をもらえる程度には成長できました。今までお世話になった自分の経験を還元できればと、「エンジニアになりたい!」という話をされると、しっかり聞いて相談に乗るようにしていますいました。


「エンジニアになりたい!」詐欺の被害


自分に相談されたら、その場では毎回以下のように質問されたら、自分の経験ベースで答えられる範囲で答え、一緒に考えています。

・どうやってエンジニアとしてのスキルを上げたのか?完全未経験からエンジニアとして働くまでになるにはどうやって勉強すればいいのか?
・プログラミングを勉強するなら、サーバーサイドとフロントエンドどっちがいいのか?
・中学生からエンジニアしている人もいるのに、自分が今から初めても戦えるのか?

そして、これから1ヶ月・2ヶ月で具体的にどんなことに取り組めばプログラミングスキルを上げることができて、エンジニアとして給料をもらえるまで成長できるのかを一緒に考えています。(⬅️具体的な行動設計までしないと、次に何すればいいのか分からないと思っているので。)

自分としては、自分の週末の時間を削って相談に乗って、なんなら後輩にカフェでコーヒー1杯おごって、一緒にエンジニアになるための行動設計までしているので、「彼ら彼女らが、数ヶ月後にはエンジニアとして何かしらのスキルアップをしていたら嬉しいな!」と思うわけですよ。「エンジニアとして働きたい!」と目を煌めかせてたのに数ヶ月後にエンジニアになれていなかったら、自分の相談の乗り方がダメだったのかな...?とかちょっと気にもしてしまいますよね。それだけ時間を使って気をもんだ結果、タイトルの通り9割の人間はエンジニアリングから離れていきます。そしてエンジニアトークをすると、気まずそうに話題を変える戦法をとってきます。

1ヶ月後にプログラミングのその後の進捗を聞いてみると、自分の興味のあるアプリケーションを作り始めてさえない。そもそも相談に乗ってから何もコードを書いていない...。「1冊本を読んでみて、よくわからなくてやめました!」みたいな人が多すぎる。


「いや、そりゃ1冊読んだだけでわかるかい!」となるわけですよ。「ネイティブと英語で会話し始めて1週間で英語バンバン話せるようにならんやろがい!」と。「英語の勉強なんて、6年間しても話せるようになってないんだから、勉強してても伸びないことなんて明白だよね。自分の作りたいアプリケーションを作ることに時間使ったほうがいいよ!」って伝えたじゃん!ウンウンって頷いてたじゃん!!わかってなかったんかい!


...このように、自分の使った時間の効果はほとんど現れません。エンジニアなりたい/プログラミングやりたい詐欺に、ただただ付き合わされただけか...。という虚無感だけが残ります。


エンジニアになりたい詐欺を使っているやつを見抜く質問3つ


こんな不毛な時間を費やすことが嫌になってきたので、エンジニアとして続かないやつの特徴をまとめておきます。

以下のような質問に答えられなかったら、「エンジニアなりたいっす!!」「プログラミングできるようになりたいっす!」とどれだけ叫んでいても、そいつのプログラミング熱は続かない口だけの虚偽です。こんなやつらの相談に乗る価値はあまりありません。絶対行かないくせに「ハワイ行ってみたいよね〜!バイトしてお金貯めたらワンチャン行けるよね!」とカフェで盛り上がってる大学生くらいの熱量しかありません。奴らにはワンチャンなんてありません。圧倒的ノーチャンです。


「コード何か書いてみたことある?」

この質問でたいていの虚偽は見抜けます。5分ググってコピペすれば、「Hello World!」をコンソールに出力することができるこのご時世、コードを書いてみたことすらないって。この5分間の行動すらしていないくせに、「エンジニアになりたい!」と言っているのは、「プールで泳げるようになりたい!」と言い続けて、1回もプールに入ろうとしないのと一緒です。一生泳げるようにはなりません。相手にする価値は1ミリもありません。可哀想ですが、既読無視を決め込みましょう。


「どんなアプリケーションを作りたいの?エンジニアリングで何を解決したいの?」

これは自分の経験も大きいです。僕も大学1年生の時に初めてプログラミングを触ってみた時は、「何が作りたいのか?」という目的がなかったからか全くモチベーションが続かず、1日触った程度でやめてしまいました。しかし大学4年生の時に、自分の作りたいアプリケーションを作るために改めてプログラミングを触ってみたタイミングで一気に学習を進めることができ、気づいたらエンジニアのインターンシップをしている自分に気づきました。

周りのエンジニアを見ていても、「何が作りたいのか?」が明確にある人の方が学習速度も速いし、新しい技術に対しての感度も高いです。「こんなものを作りたいんです!」と言ってるやつは、ワンチャンありえます。


「どれだけプログラミングに時間を使えるの?」

先の質問で、「一応、簡単なコードを書いたことはあるし、作りたいアプリケーションもあるよ!」という答えが返ってきてワンチャンを感じたら、最後にこの質問をしましょう。自分の作りたいものを初めて作る時は、分からないことだらけで解決していくのに結構な時間がかかります。それでも悩み抜いて考え続けることができるのか。そのための時間を取ることができるのか。

自分の経験を振り返ってみても、自分でエラー解決できるようになるまでは周りの人に聞かないと何が問題なのかも理解できず、自分だけで学習を進めようにも学習効率が低かったです。エラーの自己解決能力が一定以上になると、あとは一人でコードを書いて、分からないことを調べてということの無限ループでどんどん学んでいくことができるようになります。この水準まで一気に駆け上がること、継続することが超重要です。それができるのかどうかをこの質問で知れます。

具体的には、「1日に3時間は最低でも取れます!」と言っているとプログラミングが続く可能性が高いです。実際に3時間確保できるかはともかく、どんなに忙しくても3時間程度はプログラミングに取り組む意志があることがわかるので。


以上、エンジニアになる可能性が少しでもあるかどうか、見分けるための質問たちでした。


「エンジニアになりたい!」が本物のやつの特徴とは?


というか、ここまで書いていて気づきましたが、「エンジニアになりたい!」と言って実際にエンジニアになっている人の特徴は、「相談に乗ってください」なんて言ってくることはありませんでした。「ここの実装でちょっと分からないんですけど、どうやったら解決できますかね?」のような、やってみて具体的なつまづきがあって質問してくる人。今まで13人程度から相談を受けてきて、その中の2人は上記のような質問をしてきましたが、彼らはもれなくエンジニアとしてゴリゴリ成長しています。


・実際に手を動かしていること。
・やってみて、ある程度続けてみて、自分に向いているか判断しようとしていること。
・具体的な実装上の悩みの解決方法に関して質問してくること。


これらがエンジニアとして成長していくやつの特徴ですね。こんな特徴のあるやつとならいくらでも相談に乗ってやりたいものです。ここまでいろいろと書いてきましたが、「エンジニアになりたい!」て言ってるやつの1割は、ちゃんとプログラミングを続けるし、圧倒的速度で成長していきますからね。

f:id:virtual-surfer:20180615203356p:plain

(画像:『インベスターZ』 三田紀房

悩む前にやってる奴は強し。


では!