Webエンジニアになるための環境を整えよう

久しぶりの記事になってしまい恐縮なのですが、今回は環境構築についての話です。

環境構築と言ってもRailsのインストールとかLAMP環境の構築とかいう初心者がつまずくあの環境構築の話ではないです。

これは特に、今までIT業界との関わりが少なく日常的にPCを触る時間の少ない非エンジニアの方には特に気をつけて 欲しい話なのですが、

「Webエンジニアになるための学習環境や習慣を整えよう」

という話です。

ひとえに学習環境や習慣といっても「プログラミングするならMacを買え」というかそういう話ではなく、 単純に「Webの情報やプログラミングの情報に触れる機会を増やしましょう」という話です。

 

現役エンジニアと見習いエンジニアの違い

ここからはちょっと違う話にはなるかと思うのですが、何かを上達しようと思ったときにすでにできている人と 自分を比べて何が違うのか、何が足りないのかという比較・分析というのは非常に効果的で、これまでの人生で 何度かためしてみた経験のある方も多いと思います。

それでは、すでに現役のWebエンジニアとこれからプログラミングを勉強しようという見習いエンジニアの違いとは何でしょうか?

一つ確実に言えるのは知識・経験の差だと思うのですが、見習いエンジニアと現役のエンジニアの知識・経験の差というのはどれくらいあるのでしょうか?

Webなりの他の記事で触れたようにプログラミングができるようになる(自力でWebアプリケーションを作れるようになる)には、1ヶ月や2ヶ月で身につけられるほどのものではありません。

Webエンジニアになるには。エンジニアになるために必要な技術6個

別に不安にさせるために言っているわけではないのですが、控えめに言って現役エンジニアと見習いエンジニアとの知識・経験の差はかなりあり、 プログラミングスクールに通っていれば、優秀なメンターから教えて貰えばその差がうまるということではありません。

もちろん現役のエンジニアがプログラミングについて全て知っているということもないのですが、今までもこれからも業務で納期に追われながら 必死にアウトプットを出しているエンジニアと仕事終わりや休日の時間で勉強をしている見習いエンジニアではその差を埋めることはなかなか難しいです。

さらに上のWebエンジニアになるための必要な技術というのはかなりプログラミングによった内容で、他にも必要なSlackやBacklogなどWeb系でよく使われるツールの知識、 プログラミングの勉強方法に関する知識、IT業界の知識、ハウツーのようなMac、Windowsの使い方の知識などなどWeb界隈では常識とされているけど、 他では手に入りづらい情報というのもたくさんあります。

初心者のうちにこれらすべてをわかっていないとエンジニアになれないのか?と言われるとそうではないのですが、これらを身に付けるための何らかの工夫がないと 現役のエンジニアのレベルにはなかなか近づけないということがわかっていただけるかと思います。

 

現役エンジニアの習慣に注目する

よくベンチャー界隈ではエンジニアは勉強好きと言われるくらいによく勉強している人が多いです。勉強と言っても決して机に向かって一心にインプットしているというよりは 自分の学びをブログに書いたり、勉強会に参加して勉強会のテーマで会話したりという習慣を持っている人が珍しくありません。

将来的にエンジニアを目指す方には、いずれこう言った習慣を自然と身に付けるようになるので、プログラミング初心者のうちからこれらの習慣を身につけておけると スクールでプログラミングを習っても独学していても、メンターがいても吸収が早いんじゃないでしょうか?

「勉強会とかわからないことだらけだからちょっと・・・」

という気持ちもわかりますが、connpassなどのサービスを使えば初心者向けの勉強会に参加することもできます。 勉強会に出たりすると自然と自分の周りにIT詳しい人がいる環境がつくれるので、そういったイベントに気後れしない方はぜひ参加してみましょう。

 

勉強会はちょっとハードルが高い方でも

  • 最低限技術系の本を読む時間を毎日つくる
  • 通勤時間帯はQiitaなどで自分の知らない技術に関する記事をよむ。
  • 空き時間に聞いたことがあるけどちゃんと理解してない単語でググる。
  • 移動時間にprogateなどで復習をする。

というような形でプログラミングやPCに触らない日をなくせるように努力しましょう。 一日何時間必ず机に座って勉強するとかするとつづかないので隙間時間で暇さえあればIT系の情報に触れるような習慣を作りましょう。

この習慣を作って、プログラミングが占めるマインドシェアを増やすことによって同じ話題にふれる回数が増えて、 すでに勉強したプログラミング知識の定着も早くなります。

「スクールに通っているけどいまいちできるようになる気がしない」 「一回覚えたことをすぐ忘れてしまう」

というような人はぜひこの方法で意識的にプログラミングの情報に触れる機会を増やす(現役エンジニアと同じような習慣を身に付ける)ことで、 効率よくプログラミングの勉強ができるようになるはずなのでぜひ意識してみるようにしてみてください。

 

プログラミングの情報に触れる機会を増やす際のアドバイス

ここまで、現役エンジニアと同じようにプログラミングの情報に触れる機会を増やすことについて書いてきましたが、

ここまでの内容について納得してよしやってみようという方には,

「目的を持ったインプットを心がける」

というのも合わせて意識できるとさらに効率良い学習ができるはずです。

具体的には、例えば隙間時間に本を眺める時もRubyの本を手に取ったときに最初からじっくり読み進めるのではなく、 「正規表現がわからないからこの数分で正規表現を理解しよう」というように目的を持ってインプットできると記憶に 残りやすく効率良いインプットができると思います。

他にも私もよくやるのですが、電車にのってここの駅からここの駅で一つの技術テーマについて決めてをそれをひたすらググるというのをやります。

このように、目標は何でもよいのですが、「隙間時間にプログラミングに触れる + 目的をもったインプット」という二つを 意識できるとさらに勉強がはかどると思います。

プログラミングの勉強でいまいち成果が出ないという方はこちらを試してみることをお勧めします。

 

まとめ

ここまで、現役エンジニアのようにプログラミング情報に多く触れる習慣をつくろうという話をしてきましたが、 定期的なインプットの習慣は実際エンジニアになって働き始めてからも必ず必要になる習慣なので初心者のうちにこれを身につけておけると あとがとても楽になります。

エンジニアになって数年で勉強をやめてしまう人も結構な数がいるので、これをするだけでエンジニアとして働き始めたあとに追いついて技術的な差をつけることも十分可能です。

「エンジニアになるにはこれとこれがわかれば大丈夫」という言い方もできなくはないのですが、 やはり技術的な話は日々変わっていて、情報も古くなりますし、そもそも初めて取り組む分野を一回聞いて覚えて置ける人なんてほとんどいないはずなので、 忘れてもよくて、細切れでも良いからプログラミングの情報に触れる時間を増やすことがWebエンジニアになるための第一歩なのではと思います。

最後まで読んで頂いてありがとうございました。