こんにちは、進撃する人です。
プログラミングをどんどん進めていくとどこかのタイミングで「英語の壁」にぶち当たります。
googleで検索すれば日本語の情報もあるし、書店に行けばプログラミングの書籍も腐る程あるのですが、細かいエラーの内容やフレームワークのニッチな疑問をググっても「英語の情報しかない…」なんてこと結構あります。
そして私自身、エンジニアとして業務をこなしていく上で、今英語の壁にぶち当たっており「英語の学習の必要かもしれない」と実感してますね。
フォロワーさんのエンジニアさんにお聞きしたい。
エンジニアは英語を学ぶべきか?— 進撃する人@現役エンジニア (@mikasa_program) 2019年3月10日
ツイッターでもアンケートを取ったところ、「やった方が良い」という意見が大半でした。
そんなこともあり、改めて5年ぶりの英語学習を行っていくことにしたのですが、エンジニアが英語を学ぶべき理由(私が何故労力を割いてまで英語を学ぶべきだと感じたのか)を書いていきたいと思います。
結論:必須じゃないと思うけど、「かなり大事」だとは思う
結論ですが、プログラミングを学ぶ上で英語は必須ではないと思ってます。
ただ必須ではないけれども、英語がある程度読めないと長くエンジニアをやっていく上でかなりきついのではないか…とは思ってます。
というのも、ある程度プログラミングをやっている人はわかると思いますが、日本語で引っかかる情報が少なすぎてエラーが解決できないことが多々あります。
会社の研修で英語ができる人は海外圏から情報を取ってきて解決するが、自分は英語が苦手なので英語のサイトをスルーしてたら永久に解決できなかった…なんてこと1度や2度ではなく何度もありました。
スピーキングやライティングは別にできなくてもいいと思いますが、少なくともリーディングはスラスラ読める程度はやっておいたほうがいいな、と感じましたね。
また、個人的な話をすると以下で解説しますが、「ググった時に英語圏から情報を探すため」という理由以外でも英語をやる理由が大きくなってきたな、と感じています。
プログラミングの英語での学習教材も増えてきた
日本語の教材もたくさんあるので、基礎的な部分を学ぶのであれば英語は不要ですが、Youtubeにて英語でのプログラミングの細かい部分の学習・Udemyなどの英語教材は増えてきたな…というのは感じてます。
例えば「Laravel」とYoutubeでググりました
すると検索順位1位の動画以外全て英語で出てきたじゃありませんか。
続いてJqueryと打ったら検索順位上位2つ以外は英語の動画が出てきました。
このようにYoutubeで言語・フレームワーク名を検索してみると英語のコンテンツがどんどん引っかかるようになっている以上、リスニングとリーディングの能力をある程度つけておいて少なくとも「英語アレルギー」という状況はなんとかする必要があると思います。
TOEICの点数そのものが錯覚資産として使える
また、「プログラミングの学習に英語力が必要になってきた」こと以外にもキャリア的な観点でも英語力があれば強いです。
参考:DODA
平均年収に関しての比較になりますが、TOEIC400点代と900点代ではおおよそ年間70万円ほどの差があります。(ただし、これはTOEICで高得点を得られるほどの能力と勤勉さが収入に結びついている疑似相関の可能性もありますが)
出典:Oxford University Press『A Teacher’s Guide to TOEIC® Listening and Reading Test Preparing Your Students for Success』P.6
TOEICで現状550点の人が950点達成するのにかかる時間はオックスフォード大学の研究によるとおおよそ1050時間。
1日3時間の英語学習を3年間継続すれば到達できる数字。
これで年収が70万円上がるとするなら、生涯年収は単純計算で40年×70万円=2800万円となります。
1050時間の学習で2800万円になるということは時給換算で2~3万円/時のコストパフォーマンスですね。
実際、もっと未来のことを考えると英語を学んだメリットはどんどん増えていくと思うので、今の時代1000時間くらいは軽く英語に投資する価値あると思います。
海外にアウトソーシングする会社も増えるので、英語力があれば強い
転職活動をしていた時「ベトナムにオフショア開発を委託してます」なんて企業が増えてるな、と感じました。
現地のベトナム人とは当然、英語で会話するわけです。
その点において自分が英語を話すことができないと正直、かなりきついです。
自分が英語を話すことができれば市場価値は高くなりますし(海外のオフショア開発でベトナム人の間に入れるエンジニアとして市場価値は高い)自分が何かシステム開発の会社を起業したとしてもベトナムなどの海外に委託することもできるわけです。
プログラミングと英語のポジションはありきたりな掛け合わせではありますが、どちらもある程度できる人はほぼいないので需要は高いと思いますよ。
英語ができれば凄い!ではなくて「英語ができることが当たり前」になっていくのではないか
また、都心にいると強く感じることなのですが、中国人、タイ人、ベトナム人などのアジア系の移住者が日本に増えてきました。
渋谷や池袋や新宿や秋葉原にいると「ここ本当に日本か?」と感じるくらい外国語が飛び交うケースが多々増えてきましたね。
この状況を見る限り、何処かのタイミングで「英語ができないと不利になってくる」という状況はくるんじゃないかと思ってます。
それに日本自体が衰退路線になるのは確定である以上、企業はガンガン海外に出ていっているわけです。
今はまだ「英語話せなくても大丈夫だよね?」という雰囲気はありますが(いや実際英語できなくても生きていけるんですけど)、「英語をやらないデメリット」が大きくなってきたな…というのが正直思ってることです。
これまでは英語を捨てると割り切ってきましたが、国内でメディア運営していた自営業時代とは異なり、今はエンジニアです。
近い未来、東南アジアの人件費が安いエンジニアとの競争になるのは目に見えてるので、今のうちに英語を攻略して置くのが得策かなと思ってます。
海外で働くことも視野に入れるのであればなおさら英語はやっておこう
また、日系企業に入って海外赴任をしたり、ニュージーランドでエンジニアをされていて「NZ MoyaSystem」を運営しているハッシーさんのように海外で働く可能性があるのであればやっぱり英語をやっておいたほうがいいと思ってますね。
フィリピン留学3ヶ月いっただけでは正確な文法などが身に付きにくく、普段から独学の習慣がない人は留学行ったとしても帰国後英語力はみるみる落ちていくはずです。
なので「普段から1日10分でも英語に取り組んでいる」という状況が大事になってきます。
私も将来的に海外でエンジニアとして働くことを視野に入れ始めたこともあり、英語には力を入れていくつもりですね。
まとめ
以上、私がエンジニアは英語をある程度までは学習するべきなんじゃないか…という持論です。
ただ、「プログラミングの英語圏の情報にアクセスするだけ」であればリーディングだけやればいいと思うのですが、もう少し先を見据えて
- オフショア開発
- 海外人材と仕事するケースが増える
- 海外人材との競争
- 錯覚資産としてのTOEIC
- 海外での就職
この辺りのことを考えても、やっぱり英語は可能な限り早いうちに攻略したほうがいいなとは思いますね。