5ヶ月前の自分へ、「未経験からエンジニアデビュー前にこれだけはやっておけよ。」という3つのこと

こんにちは。ひろき(@hiro_az4511)です!

1月にWeb系ベンチャーでエンジニアとしてデビューしてから、早くも丸4ヶ月経ちました。
「気がついたら終わっていた。。。」というのが正直な感想で、それほど毎日新しい刺激があり、充実した日々を送っています。

本記事では、エンジニアとして働き始める前に、これはやっておいたほうが良かったなということをまとめます。
どんな「勉強法が良い」みたいな話ではなく、「多分使うからこれは触れておいたほうがいいよ」という内容です。

下記のような方に、役立つんではないかなと思います。

こんな方向けの記事です
  • これから、エンジニアとしてデビューしたい
  • 非エンジニア職からエンジニアへ転職を考えている
  • エンジニアとして数か月以内に働くことが決まっている

1. 開発環境構築をする

いや、開発環境構築しないとチュートリアルできなくね?w
みたいに思う方もいるかも知れません。
実際、私がプログラミングスクールでやっていたのはRuby on Railsのチュートリアルでした。

もちろん、チュートリアルの作業を進めるためには、まず開発環境を構築しなければいけません。

しかし、この「開発環境を構築する」という作業を当時担当してくれていたメンターさんに頼りまくってしまっていたんです。
私は、その後入社して、結構苦労しました。

プログラミングスクールで学んでいる方で、メンターさんや講師の方と一度しか開発環境を作っていない方は、自分ひとりでも開発環境を構築する経験をしておくべきです。

もちろん、入社してチームに入れば、開発環境も違いますし、全く同じことが再現できるわけではないですが、出てきたエラーへの対処等、すごく勉強になるのでやっておいたほうがいいと思います。

現在ではVagrant + VirtualBoxで仮想開発環境を作って開発を進めていったり、 Dockerのようなコンテナ型の仮想化環境を使って開発を進めることが主流です。
そのあたりの技術を用いて、0から環境構築をして、アプリを作るという経験をしておいたほうが、入社後に比較的スムーズに開発がスタートできるはずです。

もし、入社がすでに決まっているのであれば、「ローカルの開発環境ってみなさんどうしてるんですか?」みたいな感じで質問して、その技術に触れておくと良いでしょう。

2. GIT慣れ

プログラミングの学習を始めて個人開発をしたことのある方なら、GitHub等のGit管理サービスのアカウントはもう持っているかとは思います。

個人で開発したソースコードをGitHub等に載せて公開したりもしている人も多いでしょう。

そもそもGITとは、、、、

プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。(Wikipedia)

上記のように、GITはバージョン管理をするシステムで、エンジニアとしてチームに入り、チーム開発がスタートすると、このGitHub等のサービスを使って、アプリやウェブサービスのバージョン管理をしていることが多いです。
(自分が知ってる範囲ではWeb系ベンチャー等ではほとんど当てはまるのでは。。。?)

実際自分は、エンジニアとして企業に入社した直後、一番最初につまづきました。
先輩がGitの概念から使い方まで、すごく丁寧に優しく教えてくれているのにもかかわらず、ぽかーんとちんぷんかんぷんな状態で、「なんでこんなに自分は物分りが悪いんだ、、、」と 本気で悔しく思いました。(笑)

実際、チーム開発が始まると嫌でも毎日使うことになりますが、少なくとも基本的な概念は事前に知っておいた方がいいでしょう。

GIT学習に役立ったサイトを2つ紹介

下記のサイトのチュートリアルは、自分がいくつか試した中で、一番使いやすく、視覚的にもわかりやすいサイトだったので、これから開発チームにジョインする方で、Gitを使ったことがない人はぜひ1〜2周やってみるといいでしょう。

下記リンクの記事で紹介しているチートシートは、よくまとまっているので、一度目を通すといいんじゃないかと思います。
このシートをデスクトップの壁紙にしてもいいかもですねw

3. アウトプット

これだけは、唯一入社前からやっていた事です。(全然足りてないですけど)
このブログも自分が学んだことをアウトプットする媒体の一つですが、自分が考える、ブログ等でアウトプットをすることのメリットは下記の通りです。

アウトプットのメリット
  1. 作るだけでもめっちゃ勉強になる
  2. アウトプットすることで理解が深まる
  3. 転職(面談等)でも見てもらえることが多い
  4. 思考の定点観測ができる

1.作るだけでもめっちゃ勉強になる

特に、Web系の会社でエンジニアデビューを目指している方であれば、自分でドメインを取得し、サイトと紐づけたり、サーバーを契約してWordpressでブログを立ち上げたりするだけでも結構勉強になります。
また、初めてのことをGoogle等で地道に調べながら作業をしていくことは、入社したあとにもバンバンやることになるので、いい練習にもなりますよ!

2.アウトプットすることで理解が深まる

インプットは、アウトプットすることでその質が何倍にもなると思います。
インプットして、学んだつもりの事でも、いざ人に説明するときに上手く言えなかったり、文章で書こうと思ったときに上手い表現が思いつかない。
そんな事を経験したことはありませんか?自分はめちゃめちゃあります。、、、というか毎日そんな感じです。

ただ、それは自然なことなので、大事なのは学んだことをアウトプットするクセ付けをすることだと思います。
経験上、アウトプットをするために考えたり、調べたりする過程で理解が深まっていくとので、あんまり普段から意識していない人はぜひやってみてください。

3.転職(面談等)でも見てもらえることが多い

これは自分の中では結構意外でした。
未経験のエンジニアが就活や転職活動をするときに、ポートフォリオ等を作りますよね。
自分の場合はWantedlyを使って企業を探していました。その際に、プロフィールに自分のブログのリンクを張っていたら、ほとんどの企業でそのブログを見てもらえたんです。(面接の時にブログについて聞かれたりしました)

特にエンジニア未経験の場合、企業側が判断する材料が少ないので、自分が学習したことなどを積極的にアウトプットしていると、企業側からもウケはいいはずです。

4.思考の定点観測ができる

これは最近気づいたことなのですが、過去の自分がどのような考え方をしていたのかを知ることができるのは、ブログやツイッターなどの文章系アウトプットの大きな利点です。

頭の中で過去にさかのぼって、当時と同じ状況に立って、当時と同じ気持ちで文章を書くって、絶対できませんよね。(笑)
人の気持ちや考えは変わっていくものなので、

あー、このときあんなこと考えてたなあ、、、
みたいに、後々に振り返ることができるように記録として残すといいと思います。

まとめ

本記事では、未経験からエンジニア転職を目指していたり、デビューが決まってる人が、これだけは事前にやっておいたほうがいい、ということを書きました。

もし、「そんなの当たり前だよ」という方であれば問題ないですが、誰かの役に立てばいいなーという思いで書きました!

ていうか、自分も全然アウトプットできてない、、、、w
文章書いてて、もっとやらないとなという気持ちになりました。がんばりまーす

それでは!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です