見出し画像

ソフトウェアエンジニアとして4年働いて感じた、学生のうちにやっておいた方がいい2つのこと (エンジニアインターン編)

はじめに

こんにちは、kenmaroです。
普段は技術記事などをキータで書いていたり、
twitterで個人開発について言及したりしています。
たまに技術以外のことをnoteに書く活動をしています。


私はアメリカで修士課程を終了した後に帰国し、
4年ほどスタートアップ企業でエンジニアをやっています。

4年ほど働く上で、キャリアについての考え方や働き方などについて
いろいろと考えることもあったため、
そのようなことを半分自己満足で書き出していきます。


この記事は、

ソフトウェアエンジニアとして4年働いて感じた、学生のうちにやっておいた方がいい2つのこと (留学編)
https://note.com/kenmaro/n/nbad813dd14ad

の続編となります。
留学編では、留学を強くお勧めする理由についてまとめていますので、ぜひそちらもご覧ください。

ここで、エンジニアには実際は半導体を作るエンジニアとか、鉄を作るエンジニアとか、車を作るエンジニアなどもいますが、
この記事では、ソフトウェアエンジニアのことをエンジニアと表記します。


それでは、
私が学生に強くお勧めする、
「エンジニアインターン」について話していきます。


私のインターン遍歴

まずは私のインターン経験について簡単に書かせてください。

私自身は、学生の時にインターンを行うことはありませんでした。
学部生の時は地方大学で、まわりでインターンに行っている人はほとんどいなかったと思います。
基本的にみんなバイトをやっている人が多く、インターンなどの募集もみたことがなかった気がします。

私がインターンを行ったのは、大学院を卒業して帰国したタイミングです。

アメリカの大学院から卒業した6月あたりに帰国したのですが、内定先のIT企業は翌年の4月に入社という条件だったため、10ヶ月も期間が空いてしまいました。

その間、地元で遊んでいてもよかったのですが、IT系の知識、特に業務経験は全くなかったため、どこでもいいのでインターンをしてみようと思い立ち、いくつか東京都内のベンチャー企業のインターンに応募してみました。

その結果、あるIT企業にインターンとして来てもいいよと言われ、スタートしたのがきっかけです。


今思えば、何もスキルのない私を快く受け入れていただき、本当に感謝しています。
(その会社はちなみに昨年マザーズ上場しました。私は結局別のスタートアップ企業に入社することになり、最初のインターン先の会社とはあまり接点がなかったのですが、上場したというニュースを聞き非常に嬉しかったです。そのときにメッセンジャーで当時お世話になった方に「おめでとうございます」とメッセージし、またいつでもおいでよ、と言ってくださり、改めて感謝の気持ちが沸いたのでここに書かせていただきました。)


というわけで、私のインターン経験は都内のベンチャー企業に始まり、
その数ヶ月後に別のインターン先へと移りました。
結局、もともと行こうと思っていたIT企業には入社せず、この2社目のインターン先にそのまま入社して、今に至っています。
少し自分語りしてしまいましたが、これが私のインターン経験です。


なぜ「エンジニアインターン」なのか?

なぜ「エンジニアインターン」なのか?
理由は大きく二つあります。

「プログラミングを効率的に学べるから」
「どんな会社が自分に合っているのか少し感覚がわかるから」


が理由です。
それぞれの理由について説明していきます。

プログラミングを効率的に学べるから


「プログラミングを効率的に学べるから」という理由についてですが、
インターンをするならプログラミングができるインターンに必ず行くべきです。

プログラミングができる人とできない人では、これからの時代できることに大きな差がつきます。

私はこのことを「個人開発」を通じて痛感しています。
なにか頭の中にアイディアがあるとき、それを実現できるのはエンジニアです。
初期投資が大きくかかる事業や、飲食業などの店舗を必要とするものに関しては最初の資金力が必要ですが、アプリやWebサービスのようなビジネスには大きな初期投資は必要ではありません。

もしあなたがプログラミングを少しでもできるのであれば、時間を投下すればほとんど自分の手でそのアイディアを実現できます。
自分のブログを作ってみたり、プロフィールを書いたウェブサイトを作るのでも楽しいですし、
自分のアイディアの実証実験を自分の手で行ったりできるのは非常に重宝します。

仮に全くコードを書かないのであれば、コードをかける人を探さなければならないですし、基本的に報酬を支払うことになるので、アイディアを実現するために大きなお金を用意しなければならないでしょう。

エンジニアはなかなか面白い職業

また、全ての人がエンジニアになるべきだとは言いませんが、エンジニアは非常に面白い職業だと思っています。

特に勉強することが好きな人にとって、エンジニアは天職になる可能性があります。

理由は、現時点で学ぶことが無限にあり、
さらに世界の頭のいい優秀な人たちがどんどん新しい技術を開発して技術の最先端は日々進化しているからです。その中で、OSSと呼ばれるオープンソースソフトウェアは世界中の優秀な人たちが作ったものを手元で動かすことができるため、勉強する対象が無数にあるからです。

このように、エンジニアの基本を学んでおくことは非常に有益だと考えますが、基礎を身に付けるのは大変です。

その観点で、基礎を一番手っ取り早く身に付けるためには、
エンジニアインターンが最強です。


インターンを体験することで、まず第一にお金をもらいながらプログラミングの勉強をすることができます。これは非常にありがたいことです。

社会人になってからプログラミングを勉強しようする人の中には、多くの場合は高額なお金をはらってスクールに通う、もしくはオンラインスクールを使う人が多くいます。

仮に独学でやろうとしたとしても、あまり時間が取れないため学習が進まなかったり、エラーなどで詰まった時に誰も教えてくれる人がおらず、自分で解決できずに挫折してしまった話などはよく聞く話です。

インターンであれば、バイト代程度もしくはそれ以上の時給をもらいながらプログラミングをすることができます。

また、他のエンジニアインターンや、社員の方にわからないことを聞くこともできます。
プログラミングの経験が豊富な人に質問できる、という環境はとても貴重であり、社会人になって独学したとすると、お金を払わなければそのような環境はありません。
金銭的にプログラミングの学習はインターンを通じて行った方が一番都合がいいと私は考えます。


長期のインターンを2社やったら基礎は身に付く


また、プログラミングを学ぶ上で、長期のインターンをおすすめしています。

短くとも3ヶ月、もしくは半年程度のインターンが一番いいかと思います。

このような長期間のインターンが可能という意味では、大企業のインターンよりもスタートアップでのインターンのほうが条件にはあっていると思います。

大企業のインターンは数日から長くても数週間程度のものが多く、あくまで「就活生」としてのインターンです。行く意味としてはプログラミングを勉強するというよりも、内定をもらいやすくするために行く人がほとんどかと思います。
もちろん内定をもらえるのであれば大企業のインターンにも積極的に行くべきだと思いますが、スタートアップでのインターンで数ヶ月集中してプログラミングをすれば、ある程度慣れるくらいにはなれるので、最初の学習ハードルを超えることが可能です。

また、私個人の意見にはなりますが、プログラミングの経験を積むという観点のみで考えると、長期のインターンを2社で行うのが最適だと思います。
というのも、会社によって使っている技術が異なるため、半年もいれば基本的にその技術に慣れることは可能であり、それ以上いてもあまり学習という意味ではメリットがないからです。

また、インターンは非常に有益ではあるのですが、
大学生活をずっとインターンに費やす必要は全くないと思います。

インターンをするのはあくまでも学習や経験のためであり、
一番大事なのは大学生活でしかできないことをすること
だからです。
仕事をしたいのであれば、卒業すれば究極ずっと仕事はできるからです。

最初の記事で書いたように留学したり、たくさん遊んだり、旅行したりするのに時間を使うべきだと考えています。
したがって、インターンは長期のものを2社行い、つまり半年ずついれば1年間はインターンを頑張り、あとはたくさん遊ぶ、みたいな大学生活が理想なのではないか、と考えています。

あくまで私の意見ですが結構最適解ではないかと思っているのでもう一度書きます。

学生インターンではスタートアップ企業でプログラミングを学べる会社でお世話になるべき、そして、3〜6ヶ月の長期インターンを2社経験したら、あとは普通の学生生活に戻るべき!
ということです。


どんな会社が自分に合っているのか少し感覚がわかる


学生時代に就活したとき、自己分析とかいろんな企業の面接を受けたとしても、自分がどんな会社で働きたいのかということはわからないことの方が多いと思います。

理由はいろいろあると思いますが、やはり「会社で働いた経験が全くない」というのが大きな理由でしょう。

インターンとして業務をすると、そこで働く社員の人の働き方が見えたり、会社の雰囲気などを身をもって感じることになります。
この社員の人いいなあとか、逆にこの人は苦手だなあとか思ったりすると思います。

そのような会社の雰囲気とか、人の雰囲気を実際に感じて、どのような雰囲気の会社が自分には合っているのかを考える上で、インターンはいい経験だと思います。

私自身インターンを2社で経験しましたが、2社どちらとも好きだったのですが、雰囲気は結構違いました。
最終的には2社目の会社に入社するのですが、やはり自分に合っている気がした、というのが大きな理由の一つです。

インターンにいき、自分ってこういう雰囲気だと楽しく働けそうだな、とか少しだけわかるだけでも、就活の時に役に立つと思います。
1社だけの経験であれば比べることができないため、この観点からも2社のインターンというのは結構よいのでは、と思っています。


番外編

できれば週2以上出勤した方がいい。


これはかなり主観も入りますが、週一の出勤のインターンの人もたくさんいる中で、週2以上行くのがより良いかなと思います。理由は、週1だとまとまって任される業務というよりは、その日その日に必要なタスクをもらう形になり、あまり主体的に業務に取り組めないからです。
私の場合は、10ヶ月という長い空白の期間があったため、週5とかでインターンにいき、複数のプロジェクトを通して楽しくインターンができたのですが、もちろん週5でインターンができる学生はいないと思うので、(できれば)週2以上、というのをお勧めしています。

スタートアップでインターンをする以上ビジネスについても勉強する


せっかくスタートアップでインターンをするのであれば、技術を学ぶだけではなく、会社がどのように回っているのか、どのようなプロジェクトでどのくらいのお金が動いているのか、どのような役割の人が会社にいて、それぞれどのような仕事をしているのか
についても積極的に勉強してみてください。
小さい企業であれば、会社全体が見えますし、エンジニアの人だけでなく、マーケティング、ビジネスディベロップメント、バックオフィスなどいろいろな人と話して社会経験をしてみてはいかがでしょうか。


まとめ


今回は、私の考える学生のうちに必ずやった方がいいと思うこと
の中で「エンジニアインターン」について話しました。

エンジニアインターンを通して(私のおすすめは半年ほどのインターンを2社やって、あとは学生生活を謳歌すること)学んだプログラミングスキルや、就活へのヒントなどはきっと役に立つはずです。

学生の方はぜひチャレンジしてみてください。

今回はこの辺で

kenmaro


この記事が気に入ったらサポートをしてみませんか?