こんにちは、マスラオです。
私は、新卒時、プログラミングの経験がまったく無いながら、
国内の大手のアプリメーカーに開発職として就職しました。
そんな私だからこそ書ける、
新卒未経験のど素人がエンジニアになることのメリットを紹介します。
まったくの未経験でIT業界に就職
なんとなくエンジニアになった文系人間
まず、私の経歴からお話します。
大学4年生の春、就活戦線が始まり、取り立ててやりたいこともなかった私ですが、
「これからの時代はITだろう」という、20年くらい前の学生が考えていそうな
安直な思い込みだけを根拠に、IT業界を志望しました。
当時は、「超売り手市場」と言われるほど、景気もよく、人手不足だったので、
お給料がそれなりに良い(しかしブラック企業と評判の)会社に内定しました。
ちなみに、私は小説とか映画とか抽象的なものが好きな超文系人間だったので、
IT企業に就職したことを周りの人に言った時は少なからず驚かれました。
入社後の研修でざっくりプログラミングというものを理解
入社後、同期の新入社員もほとんどが、未経験だということがわかりました。
今考えれば大丈夫なのか心配になる会社です。(実際大丈夫ではなかったのですが)
その後、数ヶ月にわたる研修期間を経て、現場配属されることになりました。
この研修の内容は、HTML、CSS、Javascript、SQLなどの開発言語の基礎や、
他にも、ビジネスマナー研修、営業研修など色々やりました。
思い返すと、かなり手厚い研修だったと思います。
この時点で、プログラミングについて、ざっくり触れられたことで、
後に現場配属されてから、必要以上にあたふたしなくて済んだので、
あまり研修が手厚くない会社に入社する方は、
入る前にざっくりプログラミングの基礎を学んでおくと良いと思います。
調べる癖がつく
Google先生は神
さて、現場に配属されたものの、やはり最初はわからないことばかりです。
研修で学んだのは、Javascriptでしたが、実務で使われていたのはJava。
「そもそもJavascriptとJavaって違うものなんかい!」と思いつつ、
ひたすらソースコードを読み解く作業をしていました。
そして、この時期から今に到るまで、技術面でずっと私を支えてくれる方が、
世界的にも有名なあの方。そう、Google先生です。
エンジニアの基本のキ、それは、「ググる」ことです。
わからないことがあった時に、とりあえず質問するのではなく、
「まずはGoogleで調べろ!」と上司や先輩から言われます。
プログラミングは、パソコンを使ってやるものなので、
エンジニアの集合知というのも、大体インターネット上に転がっています。
3時間悩んだ問題がググったら一発で解決するなどということは、よくある話です。
「調べる」ことで成長が早くなる
確かに、短期的に考えると、聞く方が早いです。
でも、長期的に考えると、自分で調べる方が100倍成長します。
自分で調べることの何が良いかというと、
1. 仕事がはやくなる
2. 自分一人でどんどん成長できる
この2つは大きいかなと思います。
自分で調べて、仕事を進めることができるので、
指示を待ったり、不確かな意見を元に仕事を進めることがなくなったりしますし、
上司や先輩に言われなくても仕事を進めることができるので、
結果的に、「一人でも仕事ができる」という自信を得ることができます。
実際の仕事現場では、一人で進めて効率が良いタスクばかりでもないですし、
周りの人とコミュニケーションを取りながら進めていく能力も大事なので、
一概に、独力で進めることが自分を成長させるものだとは言えませんが、
「1から10まで自分でやった」という自信を積み上げていくのは大事です。
英語を読むことへの抵抗がなくなる
ネットに転がっている文章は、日本語に翻訳されていないことが多いです。
たとえば、StackOverflowなどの海外のエンジニア向けQ&Aサイトには、
かなりダイレクトに、知りたいことの答えが載っていることが多いです。
日本語ソースより、英語ソースの方が情報が多いことは、話者数を考えれば当然です。
独力で問題を解決しようとすれば、必然的に英語を読む機会も増えます。
エンジニアに、比較的英語ができる方が多いのは、
普段から英語の情報に接する機会が多いからという理由もあるかもしれません。
「英語への抵抗をなくす」ことは、エンジニアのファーストステップとして重要で、
なぜかというと、先に挙げたように話者数の問題もありますが、
そもそもプログラミング言語も開発環境も、日本語で作られたものではないからです。
変数名とかつけていてよく感じるのですが、
日本語ネイティブにとって、ぴったりの変数名をつけるのは意外と難しいです。
そもそも、プログラミングにおいては、言語の壁がまず第一にあるということですね。
EclipseやUnityなどは、開発環境として有名ですが、
それらについても、良質な情報を得ようとすれば、
英語情報が一次ソースになる場合がほとんどです。
いやでも英語に直面せざるを得ないので、
プログラミングだけでなく、英語のスキルも上がるというかなり美味しい環境です。
簡単にアプリが作れるようになる
プログラミング言語は、一つ覚えれば、
他の言語も基本的な構造は同じなので、学習コストは少なく済みます。
もちろん、自分が習熟した言語でアプリを作ることもできますし、
アプリ開発に適した言語やライブラリを使って、アプリを開発することもできます。
私自身、学生時代からアプリ制作をやってみたかったのですが、
なかなかハードルが高そうで挑戦できませんでした。
しかし、一度プログラミングができるようになれば、開発環境を入れて
動作するプログラムを書くだけでアプリが作れることがわかったので、
休日に趣味でアプリ制作する時間も増えました。
今も余暇に、税金計算アプリとゲームアプリを作っています。
アプリまでいかなくても、たとえば、Excelでマクロを組むといった場合にも、
プログラミングのバックグラウンドがあるのと無いのとではクオリティが変わります。
「とりあえず動けば良い」という考えではなく、
可読性や保守性が良いマクロを組むことを考えるようになるからです。
転職の選択肢が広がる
今後、現在ある仕事はどんどんなくなっていくと言われていますが、
当分はなくならず、さらに需要が伸びると考えられているのがエンジニアです。
私自身、一度転職しましたが、
IT系のエンジニアは、ホワイトな環境でもかなり引く手数多という感じでした。
また、エンジニアからのキャリアパスとして、
プロジェクトマネージャーや、事業会社の情報システム部などもあります。
数年のエンジニア経験で、IT業界以外のキャリアパスも開けるのは
エンジニアになるメリットの一つと言えるでしょう。
やりたいことがないならエンジニアはオススメ
最近は、労働環境も以前より大分マシになってきて、
IT業界であっても、表立った長時間残業や休日出勤は難しくなりました。
給料は一定水準もらえ、手に職がつくので食うには困らず、
さらにどんな職業でも必要な論理的思考力が身につくのがエンジニアです。
「就職しなきゃいけないけど、やりたいことないなー」と考えている方は、
文系でも、数学苦手でも、エンジニアを候補の一つに入れることをオススメします。
私がまさに数学苦手の文系でしたが、プログラミングは慣れです。
やっているうちになんとかなります。
ということで、新卒未経験でエンジニアになった人間の振り返りでした。