【Udemy】文系学生がエンジニアインターンに採用されるまでのロードマップ

やっはろー、ひぐらしです。

昨今のプログラミングブームで情報系の学部生ではないけど、プログラミングに興味があるという人が増えていると思います。

プログラミングができるようになり、自由な働き方と高い収入を手に入れたいですよね?

学生のうちからインターンを通して実務経験を積んでおけば、社会人になってからすぐに即戦力として活躍できるでしょう。

ですので、今回はエンジニアの学生インターンとして採用されるレベルに至るために受けるべき講座を紹介していきます。

Udemyってなに?という方は、まず最初にこちらのプログラミングの独学には圧倒的にUdemyがオススメである理由を解説という記事をお読みください!

スポンサーリンク

前提

①社会人でエンジニア転職を目指している方は、ここに書いている内容では足りないかもしれないです。筆者は学生なので転職のレベル感はわかりかねます。

②誰もが知っているようなメガベンチャー企業のインターンに採用されることは想定していません。新卒で就職するよりも難易度が高いと言う人もいるくらいです。

③筆者はバックエンドエンジニアとして働いていますが、フロントエンド志望の方もインターンに採用される人のレベル感として参考にしてください。

④初学者向けに書いているので、できるだけ説明に専門用語を使っていません。

⑤講座で学んだ方が、より正確な知識を身に付けられるので、この記事での説明はざっくりとしたものにしています。

まずはプログラミング言語学習以前に必要なことを学ぶ

これからご紹介するものは、個人で趣味としてプログラミングをしているだけであれば必須ではないのですが、業務に携わるためにはどうしても必要になってくるんですよね。ですので、最初に勉強することをオススメします。

しかし、プログラミングがどのような世界か覗いてみたいという感覚の人であればこの過程を飛ばして、次の過程から始めてもいいかもしれません。ただし、インターンに行くまえに必ず勉強することをオススメします。

Linuxコマンド

今までファイルの移動とか作成ってマウスを使って行っていたと思うのですが、Linuxコマンドを覚えるとコマンドでそういった操作ができるようになります。プログラマーっぽくないですか?

以下の講座で学んでおきましょう。
もう怖くないLinuxコマンド。手を動かしながらLinuxコマンドラインを5日間で身に付けよう

 

Git/GitHub

専門用語を使わずに凄いざっくり説明しますと、Gitというのは、コードなどを書き足して更新したファイルの更新履歴を管理してくれる仕組みです。GitHubとはGitの仕組みを応用して更に使いやすくしたWebサービスです。

実務未経験者が口を揃えていうのが「Gitの使い方がわからない」です。Gitが使えないと初日からあたふたしてしまうので以下の講座で学んでおきましょう。

Git: もう怖くないGit!チーム開発で必要なGitを完全マスター


Docker

Dockerを使うと環境構築がかなり楽になります。Dockerを使わないで開発環境を構築しようとすると、いろいろなところから、開発に必要なソフトウェアなどをバージョンまで揃えてインストールしなければならないのです。

そのインストールする際にもエラーが出たりして、大変な思いをします。開発環境構築は初学者が挫折するポイントの一つでもあったりします。

しかし、Dockerを使えばそれらの手間を省くことができ、開発環境構築が容易になるので、最初のうちに覚えてしまっておいた方がいいです。以下の講座がオススメです。

この講座の製作者の方もブログを書かれていて、クーポンを配布しているので利用するといいと思います。

製作者のブログ

米国AI開発者がゼロから教えるDocker講座

SQL(バックエンド志望のみ)

バックエンドエンジニアになるのであればSQLの講座も受けておくべきです。フロントエンド志望であれば必要ないと思われます。

フレームワークを使っていると素のSQL文を書くことはあまりないのですが、やはり前提となるものなので勉強しておいた方がいいです。
SQL入門 - MySQLで学ぶデータベース

HTML/CSSを学ぶ

CSSに関しては、フロントエンド志望でなければ使う機会はないと思います。HTMLも実際に書く機会は少ないと思いますが、これら二つはエンジニアの常識であるうえに、取り組みやすいので、ここから始めるべきだと思います。

ちなみにこれらはマークアップ言語と呼ばれるものでして、プログラミング言語ではないのでご注意ください。

オススメの講座はこちらです。

Build Responsive Real World Websites with HTML5 and CSS3

英語の講座なのですが、Google Chromeの翻訳機能を使いながら、Udemyの英語字幕を表示する機能を使えば日本語字幕で見ることができるので、問題ないと思います。

どうしても日本語の講座が良いという方はこちらが良いと思います。

HTML5+CSS3  手を動かしてマスターする WEBデザイン/プログラミング動画講座

プログラミング言語1つ + フレームワークを学ぶ

学ぶプログラミング言語は、Java, Ruby, PHP, Pythonなどの主流のものであればなんでもいいです。フロントエンド志望の方はJavaScript一択ですね。言語の違いは、方言のようなものなので、1つ学習すれば別の言語を学習するのもそこまで時間はかかりません。

しかし、個人的にはPythonをオススメします。理由を簡単に説明すると、用途の幅が広いことに加え、書き方がシンプルなので、初心者の方でも理解しやすいからです。

フレームワークについてざっくり説明すると次のようになります。どのようなアプリケーションを作る際にも必要となる機能があるのですが、それらの機能が施されている雛形がフレームワークです。

Python講座

まず最初にプログラミングの基礎をPythonを通じて学ぶという観点からこちらの講座をオススメします。
はじめてのPython 少しづつ丁寧に学ぶプログラミング言語Python3のエッセンス

また、シリコンバレーエンジニアの方の講座が以下のものです。この講座はPythonでできることを網羅的に解説している講座となっており、とても素晴らしい講座ではありますが、プログラミング未経験の方には少し難しい印象です。こちらの講座を選ぶにしても、とりあえずは基礎編までで十分かと思います。
現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル

上記2つの講座のどちらかを修了したらフレームワークの講座に取り掛かってもいいとは思うのですが、できれば以下の講座を受講することをオススメします。

「Pythonの文法を知っている」から「Pythonを書ける」というレベルまで引き上げてくれる講座です。私がインターンとして働いている会社でも面接の時に簡単なコーディングテストがありましたので、受講しておくことをオススメします。
【キカガク流】プログラミング力向上のためのPythonで学ぶアルゴリズム論(前編)

Pythonのフレームワーク

PythonのWebフレームワークでよく使われているのはDjangoとFlaskです。他にもありますが、この2つを目にすることが多いです。ざっくりと違いを説明すると、Djangoは大規模開発に利用され、Flaskは小規模開発向けであるといった感じです。どちらを学んでも良いと思いますが、Flaskの方が学習コストが低いと言われています。

いくつか講座を紹介するので、どれか一つを受講すればいいです。受講した後は自分で何かを作ってみることが一番成長します。

【徹底的に解説!】Djangoの基礎をマスターして、3つのアプリを作ろう!

こちらはDjangoの講座の講座です。私も受講しましたが、丁寧に説明してくれていて、Djangoの全体像を掴むのに最適だと思います。

Python+FlaskでのWebアプリケーション開発講座!!~0からFlaskをマスターしてSNSを作成する~

こちらはFlaskの講座ですね。Pythonの文法もセットになっている講座なので安く済ませたいという方はこちらがいいのではないのでしょうか。私はこの講座自体は受講していませんが、この講師の他の講座を受講しており、一生懸命説明しようとしてくれているのが伝わってくる講師でした。

現役シリコンバレーエンジニアが教えるPythonでFXのシストレFintechアプリの開発


こちらはシリコンバレーエンジニアの方のFlaskを使ってFXの自動トレードアプリケーションを作る講座です。FXに興味がある人は上記2つの講座よりも取り組みやすいのではないかなと思います。

PHP

基本的にはPythonの講座を受けていたのですが、インターン先の業務の関係でPHPと、そのフレームワークであるLaravelを勉強する必要があったので、PHP/Laravelの講座を受講しました。PythonではなくPHPを勉強したいという方は以下の講座が良いと思います。
PHPからLaravelまで サーバーサイドをとことんやってみよう【初心者から脱初心者へ】【わかりやすさ最重視】

まとめ

私がインターンに採用されたときの知識のレベルとしては、これらの講座を受講し終えたくらいのレベルでした。

勘違いして欲しくないのは、ここまでの知識で一人前のエンジニアとして働けるわけではないということです。私自身、毎日わからないことだらけで、休みの日も勉強している状態です。ですが、ここまでの知識を身に付けたのであれば、エンジニアインターンの採用募集に申し込んでみる価値はあります。

私はフレームワークの講座を終えて、自分で何かを作ってみようと思ったところで、WantedlyにPythonを使えるインターンの募集の新着があったので、ダメ元で応募してみたら採用されたというわけです。

社会人のエンジニア転職ではポートフォリオ(製作物)は必須かもしれませんが、長期インターンは実際のところアルバイトですから、そこまで求められないのかもしれないです(もちろん会社によりますが)。詳しくはこちらの   という記事で書いています。

もちろん、何かを自分の手で0から作れば成長できますが、「お金を貰っているから結果を出さないといけない」という状態に自分を追い込んだ方が勉強に身が入り、成長できると思います。ですので、このくらいの知識をつけたら、勇気を出してインターンに応募してみてはいかがでしょう?

本番はインターンではなく就職活動の時ですので、なるべく早い段階でインターンで実務経験を積んで、現場使われているものやコードの書かれ方を参考にして就職活動のためのポートフォリオを作ることがベストだと思います。

スポンサーリンク
おすすめの記事