この前、友人と話ししていて、IT業界を受けようと思うのだけれど、何を勉強すれば良い?と言われたのを改めて考え直した、個人的な意見
Qiitaを見るような、IT業界を受ける文系就職活動中の大学生がいるかは謎
書いてる人
- AndroidとiOSアプリを作る仕事を3年
- 大学時代は個人でプログラミングなんぞせず、サークルと麻雀にはまっていた理系
- 意識はそこまで高くない。だから勉強のために良いサイトなど知らない
対象
- 今までプログラミングをしていないが、IT業界を受ける文系大学生
- 大学位でしかプログラミングをしていない理系大学生
- 浪人中の文系の友人
自分でプログラムバリバリ組んでるわーという意識高い人は読まなくて良いと思います
最低限の確認
まず、重要なのは短期でも、プログラマとして生きていけるかどうかの最低限のチェックだと思う
(個人的にはいないだろと思うのだが)ごく稀にどうあがいても必須であろう考え(ifやforというもの)が理解できないという人もいるらしい
これが理系であるならば、既に大学で判断できているだろうが、そうでない場合は、チェックをしておくことをお勧めする。ただし、お金をかける必要はない
本当に時間がない場合なら、paizaのJava入門編を受けておくとチェックはできそう。タイトル読んで受けるだけ無駄だと思うなら、大丈夫だと思う。
それなりに時間がある(30時間くらい?)、または、(決めるの早いが)一生プログラマーとして生きていこうというのならUdacityのIntro to computer Scienceを受けておくといい。これはGoogleも推奨しているものである
内容は英語だけれど、youtubeなので日本語字幕を出せるし、すごく丁寧に解説している
途中までしか受けていないが、ただ、プログラム組めるよ!というだけでなく、プログラムとは?みたいな知識的な面もある
欠点はpaizaと言えばわかるかもしれないけれど、Udacityと言ってもプログラマでも分からない可能性があること。
後、本当に念のために言っておくと、わからないことがあったらGoogleで検索するとかそういうPCを触れること。まぁ、これは今時の大学生なら大丈夫だろうけれど
勉強しておくべきこと
さて、浪人もしてるし、文系新卒だし、理系卒に負けずに採用されるために勉強したいという思いがあるかもしれない
で、何を勉強しておけば良いかと言われると、まず英語
新卒文系OKと言ってる時点で大抵の会社は、その時点でのプログラミング能力に期待していない。会社としても、プログラミング?大学でやりましたよ、より、英語?ネイティブですね。の人の方を取りたいはず
後、プログラマとして、最低限度、意味はわからないが英語にアレルギーを出さず、かつ、辞書やGoogleあれば意味は読み解けるレベルは必要(極論言ってしまえば、Google翻訳に打ち込めば和訳できるけど、完璧に出来るわけではないし)
一番重要なのはreading。これは、度々英語が出てくるため、英語で読めるのと逐一Googleを使うのとでは時間が倍以上違う。Googleなんかは和訳されたページもあるけれど、英語しかないページも多く、更にそれを読まないといけない時も多々ある。
その他の、書き聞き喋りは、まぁ、出来ると優秀よね、なんかで役に立つよね、プログラマーから脱却しやすいよね、という感じ(書き聞きは、勉強の仕方次第ではすぐに使うけれど、喋りは少なくとも新卒直後で使うとは考え難い)
というわけで、差別化を図りたいなら英語にするべき
もし、どうしてもプログラミングやコンピューターサイエンス関連を勉強したいなら先ほどのUdacityを上げる。英語も勉強できるし。もしくは、Googleが学生向けの勉強内容を上げているページを上の方から適当に選んで受けていくと良い。なんか有名なエンジニアもアプリエンジニアはここに書いてあるのほとんど受けとけと言ったとか言ってないとか
実際にプログラミング自体を勉強するならFree Code Canpもあるが、全て英語でわかりにくいし、git登録とかハードル高いし、長いのでこの段階ではお勧めはしない
プログラミングのプの時も知らなさそうな面接官に、ハッタリをかますために何かを作るというのであれば、リアルの知り合いのプログラマに教えてもらうのをお勧めする。知り合いのプログラマが居たら、ハッタリかませるようなサイトやアプリくらいなら多分1日くらいで作れる。因みに作って、ではなく、どうすれば良いか、詰まった時に教えてくれるために1日くれにしよう
キャリアについて
勉強の仕方の後で述べることではないが、そもそも将来について考えるべきではある
極端に言えば、プログラマで生きていっても良いと思わないのであれば、別の業界を受ける方が良い
というのも、転職には実務経験がいるよ。というものが多い
ついでに言えば、ITでも、アプリエンジニアの実務経験いるよ、サーバーエンジニアの実務経験いるよ、ゲーム開発の実務経験いるよ、と分かれている
なので、まぁ、生きるために働いてるだけだからなんでも良いとか、なりふり構わない場合以外はやめといた方が良い
また、将来的に、エンジニアで一生食べるのを目指す、営業、PGマネージャーになるなどによって勉強することや、しておきたい内容も変わるけれど、それは内定もらってからで構わないから今気にしなくても良いだろう
まとめ
と、まぁ、意識低い系が、IT業界で内定をもらうためについて考えてみた
書いてあることは、就職なんてなんでも良いと思ってた意識低い系が社会人になって、あの頃しておくべきだったと思ったこと
最低限の確認は、社会人でエンジニアになって条件分岐わからないってなんかで読んだ気がするし
勉強しておくべきことは、大学時代は英語?Google翻訳あるし必要ないやろ、と思っていたし
キャリアについては、今絶賛後悔している。ゲーム業界行きたいけどUnityの実務経験とかねぇよ…
また、サークルの先輩でも何でも、頼れるツテがあるなら、こんな記事よりそちらを頼った方が良い
後、この手の記事のtagは何をつければ良いのだろうか