エンジニアになる前にやっておけばよかった10のこと

これからエンジニアになるためにプログラミング学習中!

という方のために、実際に私がエンジニアになるまでにやっておけばよかった…と後悔していることをお話します。あくまで個人的な感想なので、実際に全員こうすればいい!ということではないかもしれません。

それでも一体験談として参考になれば嬉しいです。

初めに結論!

  • 作って公開する、をもっと早い段階ですること
  • プログラミングスクールのメンターさんを利用すること
  • 学んだことを積極的に発信すること
  • Twitterの意見を鵜呑みにしないこと
  • 早いうちからOSSに触れること
  • 勉強会と懇親会に参加すること
  • 低レイヤーの技術を勉強すること
  • 設計やデザインパターンの勉強
  • お金になる、に飛びつかないこと
  • 貯金!

 

簡単にいえば、もっと広い世界を知っておくべきだったと思っています。プログラミング学習中は「言語=全て」という狭い価値観だったのですが、実際にエンジニアになって感じるのはもっと大事なこと、もっと楽しいことはいっぱいあるということでした。

一つずつ解説していきます!

 

作って公開する、をもっと早い段階ですること

プログラミング学習中の方のなかには、いつまで経ってもアウトプットをしないという方がいますが、それはもったいないし、非効率的です!たとえクオリティが低くても、作ったものを公開していきましょう。

何ためにそうするか、というと。一つは周りからフィードバックをもらって、ブラッシュアップできるからです。そしてもっと大事なことは、そのほうがはるかに楽しく、さらなるモチベーションにつながるからです。

公開する方法はいくつかありますが、Herokuがぱっと作れていいかもしれないです。WebサイトならGithub Pagesを利用するのもありですね。

プログラミングスクールのメンターさんを利用すること

実際に私はプログラミングスクールで学習をしていたのですが、その環境をもっと利用したほうがよかったと思っています。講師の方やメンターさんに、エンジニアになってからのことを聞いておけばよかったと思います。

もしいまプログラミングスクールに通っている方、検討している方がいれば、使えるものは全て使い倒しましょう!せっかくそれなりに高い料金払っているですし!

就職サポートがあるところだと、就職についてはもちろん相談にのってくれると思います。でも、就職してから、キャリアプランについてはあまり話す機会がないかもしれません。そういった深いところまで腹を割って話してみると意外と相談に乗ってくれるそうです。

学んだことを積極的に発信すること

 

作って公開する、にも通じますが、学んだことを記事やブログ、Twitterなどで発信することはとても大事です。

話が少しそれますが、インターネットは誰かの発信によって作られています。もし誰も発信しなければ、そこには何も情報がありません。もしあなたが学んだことが、世界中の誰かの役に立つかもしれないんです。些細なことでもいいので、QiitaやTwitter、たまにStack Overflowなどで回答側にたってみましょう。

学んだことを発信していくことで、自分の中で知識や経験が体系的に定着していきます。間違っていても恥ずかしくないので、「知らなかった!」を少しまとめて発信してみることをオススメします。

Twitterの意見を鵜呑みにしないこと

 

これはアンチパターンですが、Twitterでは「声の大きい方」がたくさんいます。そして、意外とその意見や内容は実は間違っていたり、極端な内容であることが多いです…。なので、参考程度にするのがいいと思います。

たとえば「Ruby on Railsはオワコン!」みたいなことを言う人がいたりしますが、実際Railsのコミュニティはいまも活動的ですし、採用する企業は減っていません。さらにRails6によって更に進化していきます。一部の人にとってはそうでも、実際行動してみないと真実は見えてきません。

もし悩んでいることがあったり、迷っていることがあったら、Twitterはそっと閉じましょう。笑

早いうちからOSSに触れること

OSSとはオープンソース活動の略で、身近なところでいうとRailsのgemも一般のプログラマーの方々の手によって作られ、そして日々進化しています。こういったOSSに参加、触れることはエンジニアとしても大きく成長する機会になります。

 

実際に私もOSSのコードを読むようになってから、コードを深く理解できるようになったと感じます。また、自分のコーディング力アップにもつながるように思います。人のコードを見ることは実際とてもいいことだと思っています。

もし可能ならOSSへコミットしたり、PRをたててみるのがいいですが、初めはコードの中身を見るだけでも十分だと思います。普段自分が使っているgemやライブラリの裏側がどうなっているのか?どんな人達が作っているのか?をGithubから見てみるのはどうでしょうか。

勉強会と懇親会に参加すること

 

エンジニアのコミュニティに参加することで、普段得られない知見や経験を得ることができます。

私はエンジニアになる前、そういった勉強会やもくもく会にさえ参加していませんでした。でも最近になってそういった機会に恵まれて、たくさんの人から教えてもらえるようになって、さらに自分の技術がいかに未熟で、そしてもっと広い世界があるのか?を知ることができました。

たしかに初めはとても緊張すると思いますが、気軽に勉強会・懇親会でエンジニアの交流の場を持つことをオススメします!

低レイヤーの技術を勉強すること

低レイヤーといってもなにもコンピューターサイエンスを学ぼう!という話ではなく、普段自分が何気なく使っている技術について一つ一つ紐解いて調べるだけでいいと思います。

私はプログラミング学習当時、なぜWebサイトが表示されるのか?ということさえ理解していませんでした…。でも、いまでは通信プロトコル、HTTPなど裏側でどんな技術がどんな役割をしているのか?を理解することができました。

いまからカンタンにできることといえば、これから学習するなかで「人に詳しく説明できない単語」がでてきたら、それをググって調べてみることです。意外と難しいです!「サーバーってなに?」を子供に説明するイメージです。

設計やデザインパターンの勉強

エンジニアになって痛感することの一つに、設計段階にコミットできないということです。

 

もちろん経験が足りない、というのはありますが、共通認識として「いい設計・悪い設計」についてチームで話し合う機会にうまく参加できないのはとても悔しく、もっと早い段階で勉強しておけばよかったと感じています。

1,2冊本を読むだけである程度基礎は抑えられると思います。残念ながら個人で勉強する中で設計を意識する、ということはあまりないのですが、チームで開発する機会があれば、設計について話してみるといいと思います!

お金になる、に飛びつかないこと

エンジニアになりたてのころ、Webデザインの勉強をしていたことから、クラウドソーシングで1,2件案件をとって、仕事をしていました。でも、お金になるから!という理由で始めるのは個人的にはオススメしません。

最近だと色んな「お金になること」がたくさんありますが、それにすぐ飛びついてしまうと、飛び込んだあとで後悔することもあります。

大事なことは「自分が心からやりたいこと」に対して真摯に、正直に取り掛かることだと思います。それがまだ見つかっていない場合は、色んな経験を試してみる、というのがいいかもしれません。

貯金!

point

大事なことですね。笑

 

エンジニアになると勉強代がそれなりにかかります。そして、欲しい本や行きたいカンファレンスがあったときに、やっぱりお金の余裕があったほうがいいです。

もしいま仕事をしていて、未経験エンジニアとして転職をしたいと考えているのなら、それなりに貯金しておいたほうがいいです!最近だとプログラミングスクールに通ったりする方が多いので心配ですが、それを見越したうえで貯金をしておくことをオススメします。

最後に

プログラミング学習中の方は、是非私のした後悔を味わないようにしてください。笑

大変なこと、辛いことはたくさんありますが、もしいまプログラミングが楽しい!と感じているのであれば、きっとエンジニアになっても楽しく仕事ができると思います。でも、意外とエンジニアの環境は過酷だったり、人間関係で悩む人もいます…。

転職の際はいろんな職場を見ておきましょう。決して年収や会社名だけで選ばないように!エンジニアになって最初の会社はとても重要なので気をつけましょう。

 

人気記事【未経験あり】いまWEBエンジニアに人気転職サイト4選

人気記事【2019年最新版】Twitterで評価の高いスクール5選