【プログラミングに英語は必要】プログラミング学習に英語力が欠かせない理由

日本でプログラミングをしているのになぜ英語が必要なのでしょうか?

それは、プログラミング開発の主流が海外にあるからです。

英語が必要な理由、英語を習得して得られるメリットをご紹介します。



プログラミングに英語力が必要とされる理由

プログラミングに英語力が必要とされる理由について解説していきます。

プログラミング学習をする上では英語力が欠かせません。

それはなぜか?

「英語ができるエンジニア」と「英語が出来ないエンジニア」では、仕事の幅に雲泥の差が出ます。
エンジニアエンジニア

プログラミングをする上というより、IT業界の用語全般として英語や英単語が主流になってきています。

特にプログラミングをする上では、仕事に必要なネーミング規則を英語で書くことを義務付けている会社が大多数です

ファイルの命名規則や処理の命名規則など、必ず必要なこれらを英語で書くことを義務付けしている会社が多いので英語は必須です。

この記事では、

  1. プログラミングと英語が斬っても切り離せない理由
  2. 英語ができないエンジニアとできるエンジニアに仕事の幅に雲泥の差が出る理由

をご紹介します。




英語ができないとエンジニアの仕事やプログラミングの能力に影響はあるのか

英語ができないとエンジニアの仕事に多大な影響があります。

「プログラミング+英語」を習得することにより、エンジニアとしてのキャリアをより素晴らしいものにできます。

「英語ができないエンジニア」と「英語のできるエンジニア」の間では仕事の幅、収入、技術の習得に大きな影響を表します。

「英語」は仕事の幅を広げるためにも、最先端の技術を習得するためにも必須なアイテムです。

仕事の幅が広がる、最新の技術を習得すれば、自ずと収入もUPします。

なぜなら現在日本の大規模プロジェクトは、「海外からの受注案件」が大多数を占めているからなんです。

また、Microsoft Silverlightなどの最先端の開発案件は、日本語のマニュアルが存在しないことがあります。

エンジニアエンジニア

英語ができなければ触ることすら難しいですね

エンジニアとして英語ができるといかに有利か、詳しく紹介していきます。

英語とエンジニアとしてできることに関係性はある

「英語」と「エンジニアとしてできること」には大いに関係性があります。

IT業界の用語全般では英語や英単語が主流となってきている

そのため、「英語ができるエンジニア」と「英語が出来ないエンジニア」では仕事の幅に雲泥の差が出てきます。

エンジニアエンジニア

業界として英語力があるエンジニアのほうが、リーダーやマネージャーに昇進しやすい傾向にあるんだよ

給料の査定に英語の資格の有無を反映させる会社も存在します。

  • TOEIC
  • 英検
  • 国連英検

さらにPMPの有無も給料査定に大きな影響を与えます。

PMP(プロジェクトマネージメントプロフェッショナル)とはアメリカのPMIという機関が認定した、プロジェクトマネージャーの資格。

この認定用の申し込みや担当者とのやり取りは全て、英語もしくは英語のフォームで行われるため、英語力が必要です。

エンジニアエンジニア

この資格は日本国内でも10年ほど前から高い評価を受けている資格です。

この資格の有無で大幅な年収差額が出てきます。

実際の差額が幾らになるかは企業の資格手当になりますので一概には言えません。

目安として

  • 中小企業で大体30万
  • 大企業に行くと100万

ぐらいの差額が出てくる可能性もあります。

この資格を受けるためには、上司からの資格保有者のスキルがあるという承認を得る必要があります。

PMPの認定には

  • プロジェクトマネージメントのスキル
  • プログラミングのスキル
  • 英語のスキルが必須
  • 上司からこれらのスキルを保有しているという承認を得る

エンジニアと英語の関係性の例1

ここ数年、システムの多言語化や東京オリンピックなどの要因により、外国人にもわかりやすい表示にするよう、政府が進めています。

システム開発の現場でもその影響は現れています。

特に、「旅行」に関するシステム「宿泊」に関するシステムでは影響が大きいです。

海外企業との共同で案件定義を行うことが多くなっています。

案件定義とは‥システムの動作や機能の概要をまとめる作業のこと。

特に上記のシステムでは、海外大手のサイトと共同開発を進めているところが大半です。

そのため、資料や案件定義の会議書類は全て英語です。

プログラマのスキルが周りに劣っていても、英語での仕様や要件の調整力があったことで大逆転したケースも数多く存在します。

実際にプログラマとしては案件から解任される候補だった人が、英語でのコミュニケーション能力が買われ、いきなりマネージャー職に昇進したケースもあるのです

英語力の有無がエンジニアの昇進にも大きく関与します。

エンジニアと英語の関係性の例2

プログラミングの最先端は常にアメリカにあります。(後述します)

最先端技術を導入する場合は、日本語のマニュアルが一切存在しないケースが多数あります。

一例としてMicrosoft Silverlightであったり、Blendという開発環境についてはSilverlight2時代は日本語のマニュアルは1冊も存在しなかった時期があります。

存在していたのは1冊の分厚い英語のマニュアルのみです。

英語で書かれた、分厚いマニュアルを読みながら開発をしなければなりませんでした。

プログラミングの知識や技術だけでなく、英語力も多いに必要とされる作業です。

エンジニアエンジニア

「Silverlight」は日本でも「歌詞を掲載するサイト」で利用されるなど認知されることで日本語マニュアルが作られました。

※日本語のマニュアルが出たのはSilverlight2発表から約1年後

日本語のマニュアルが出るまで、英語のマニュアル本や英語の参考サイトしか情報源がなかったのです。

英語ができないと、最先端の技術を習得することが不可能です

最新の情報を海外から得られる

大半のIT大手企業は海外企業です。

そのため、最新の情報を得たい場合は「海外から得る」ことになります。

もちろん、日本でも色々な情報は点在しています。

日本での情報はその殆どが海外のサイトを日本のIT企業や個人が翻訳したり、実際に技術検証を行ったりして纏めたものです。

つまり、数ヶ月から1年のタイムラグが発生すること

翻訳やまとめサイトなどが立ち上がったときには、すでにその技術が使われなくなっていることもあるのです。

実際に海外のサイトで新鮮な情報を収集できれば、そうでない人と比べて大きな知識の差が生まれます。

これから情報収集しようとしている人と、収集した知識を盤石なものにした人では、その差は簡単に埋めることはできません。

英語ができるか否かでビジネスチャンスとしては数倍の差が出てきます。

技術やプログラミング言語の最先端はいつでもアメリカ

「技術やプログラミング言語の最先端情報」を発信しているのはアメリカです。

アメリカに本社を構えるプログラミングの主流となる開発言語を開発している企業が多数存在しています。

最新情報はまずはアメリカ国内に展開され、そのあと各国に発信されます。

主流言語を開発している各社の例を以下に掲載します。

  • Microsoft:Visual Basic、C#、C++
  • Oracle:java
  • Google:GO
  • Pythonソフトウェア財団:Python

    世界的に見て日本はIT大国と言われていたりしますが、情報収集の面ではIT発展途上国です。

    インドやヨーロッパといった英語が普通にできる国に比べるとかなり情報の伝達は遅く、最先端を行っているとは言えません。

    プログラミングと英語ができると仕事の幅が広がる

    「プログラミングができる」「英語ができる」というスキルを同時に持つことで仕事の幅は、格段に広がります。

    「プログラミングができる」だけより、「英語ができる」だけよりもはるかに仕事の幅は広がります。

    一昔前であれば、ビジネス用のアプリも日本の会社だけで使えればいいという時代がありました。

    しかし、令和となり国際化が進んできている現代では、さまざな言語に対応しているツールが求められています。

    英語もプログラミングもどちらのスキルも有することが望ましいです。

    仕事の幅が広がる例:観光業界向けのシステム開発

    仕事の幅が広がるものの一例:観光業界向けのシステム開発

    『エンジニアと英語の関係性の例1』でも述べましたが、東京オリンピックに向けてここ数年の間に日本の観光業界は急速に国際化を進めてきました。

    それに伴い、

    • インバウンド予約(海外から日本への宿泊予約)
    • アウトバウンド予約(日本から海外への宿泊予約)

    のシステム開発のピッチが物凄く速くなっています。

    インバウンド予約にしてもアウトバウンド予約にしても、利用するサイトは実は海外の予約サイトであることが多いです。

    海外のサイトを利用していても、日本語で表示されているとあまりそれを意識することはないかもしれません。

    実は「Expedia」など、国別に単語のデータを纏め、接続しているPCの言語に合わせてサイトの言語を切り替えるという、高度な技術が使われている場合があります。

    また、宿泊施設が海外のサイトからの予約情報を取得する際に、サイトコントローラーと呼ばれる予約を管理するシステムを利用しているケースも多々あります。

    (※というより日本のほぼすべての旅館で利用しています)

    サイトコントローラーは英語で入った予約を翻訳したり、英語の項目を和名に変換したりする(例:「Customer Name」→「お客様名」など)システムです

    近年このような予約サイトの多様化が、エンジニアにも追いつけないほどのスピードで進んでいます。

    こういった背景から、プログラミングと英語が同時にできると、仕事もより安定的に受注できるようになります。

    仕事の幅が広がる例:ゲーム開発

    これは意外に思う人もいるかと思いますが、ゲーム市場は日本の主力産業になっています。

    日本の主力産業はゲーム市場です。

    ゲーム市場では、開発技術は高い専門性が必要とされ、さらに翻訳や輸入ゲームの再編集などのプログラミング以外のスキルも求められます

    日本の輸出産業のエンターテインメントでは、アニメが主流と思っていませんか?

    しかし、ゲームの輸出額は約1.8兆円規模で、アニメの10倍以上の輸出額になっているのです。

    これはあくまでもソフト単体であり、CESA(一般財団法人コンピュータエンターテインメント協会)によると、ハードも合わせた輸出額は3兆円を超えるとされています。

    その中でも対中国という視野を少しアジアに向けてみると、ゲームやゲーム機器の輸出額の2017年の数値と2018年の数値を比べてみると約60%増となっています。

    日本の貿易市場の約10%を占めるほど、日本のゲーム市場は海外から評価されています。

    しかし、市場規模に対してゲームエンジニアが少なすぎるという現状があります。

    ゲームエンジニアは単純に開発すれば良いだけではなく、ローカライズ(翻訳)や、逆に輸入したゲームの再編集を行うなどプログラミング以外のスキルも問われます。

    ゲームエンジニアに求められる資質

    • 開発技術に於いての専門性の高い技術
    • ローカライズでは「スラング(俗語)」や「放送禁止用語レベルの言葉」をいかに適切な表現にするかといった語彙力

    単なるゲームプログラマとして仕事をする上では、英語スキルはあったら尚可、といったレベルかもしれません。

    しかし

    • ディレクター
    • プロジェクトマネージャー
    • リーダー

    などの高いキャリアを目指すのであれば英語スキルは必須となります。



    プログラミング学習に英語が必要な理由

    プログラミングに英語が必要な理由はいくつかありますが、大きく分ける次の理由です。

    • コードの意味を理解しやすい
    • 英語力があるとエラーが解決しやすい
    • 最新の情報を海外から得られる
    • 技術やプログラミング言語の最先端はいつでもアメリカ
    • プログラミングと英語ができると仕事の幅が広がる

    コードの意味を理解しやすい

    プログラミング言語の構文や、プログラミング内で利用されている値については全て、英単語や英語の動詞を基準に作成されています。

    エンジニアエンジニア

    英語が基準なので、英語を覚えているとコードの意味を理解したり、解析をしたりするうえでとても楽ですよ。

    例えば‥

    • Date→日付
    • DateTime→日時
    • Integer→数値
    • Const→定数[変わらない値](英語のConstantが由来)

    などなど

    利用する言語によって若干の作法はあるかもしれません。

    しかし、原則として、1つの言語で利用されている英単語をある程度理解しておけば、他の言語へ展開することができます。

    他にも

    • If (条件式) →条件式が成立したら
    • Case xx →xxの場合

    など英語の文章を読んでいるようなものも多くあります。

    英語力があるとエラーが解決しやすい

    英語力があると、非常に早くエラーを解決することができるようになります。

    エラーメッセージそのものが、英語の文章や英単語の羅列を基準にして作られています。

    英語力があれば英語のエラーメッセージを読んだほうが早く理解ができます。

    エンジニアエンジニア

    プログラマとしての知識がある程度蓄積されるまでは、開発ツールに出てくる日本語のヘルプを読むよりも、早く理解ができます。

    これは実際にあった例です。

    (文面についてはうろ覚えなのでやや正確ではないかもしれません)。

    IndexOutOfRangeException」というエラーが発生

    日本語直訳では「インデックスが指定の範囲内に無いという例外(エラー)」です。

    英語が理解できれば「何かの配列処理でミスしているか、何番目のデータの取得でミスしている」とすぐわかります。

    英語がわかるとエラーを見て即座に、「配列や何番目」といった部分を中心にプログラムを読むことができる

    英語が理解できなければ、日本語のヘルプメッセージに頼らなければいけません。

    日本語のヘルプメッセージは「正しい日付が入っているか、時間の指定は正しいか」など的外れな場合が多いです。

    もし英語が理解できていれば、誤った翻訳に振り回されることがなくなる=エラーの原因が絞られることで、解決が早くなります。

    英語がわからない場合には、全く関係ないところをデバッグしだしたりそのエラーに永遠に辿りつけない可能性もあります。

    英語とプログラミングの能力向上に関係性はある

    英語の理解とプログラミングの能力向上は密接に関係しています。

    海外ブランドのプログラミング言語やソフト(java、Visual Studio、eclipseなど)では、一応日本語の公式サイトやオンラインマニュアルも存在します。

    しかし、それらは機械翻訳されたものであり、全く意味をなしていない文章も存在します。

    しかし、自分に英語力が有ったら英語の原文の公式サイトでもそれらを読むことができます。

    調査や問題解決までの時間もかなり短縮することが可能に

    情報収集が早くなることでその余った時間を実際の検証に使ったり、その技術を習得する時間に充てたりすることができます。

    英語力があれば読解にかける時間も少なくり、空いた時間で実際の技術検証を行いながら、自分のスキルやノウハウの向上を図ることができます。



    プログラミングと並行した英語の勉強の仕方は本と海外サイト

    プログラミングと並行して英語の勉強をするために有効なことはなんでしょう。

    「本」や「海外サイト」を見て語彙力を高める

    日本人の大多数が英語に対して苦手意識を持っていますが、これしか方法はありません。

    ただ、何も通訳や経済文書を翻訳するほどのレベルは求めません。

    ここではプログラミングに必要な英語力のレベルと、おすすめの勉強法についてご紹介します。

    中学レベルの英語単語は覚える

    英語を習得する上で必要なのは中学(義務教育)レベルの英単語
    せめて社会に出る上で、中学(義務教育)レベルの英単語はおきましょう。

    海外とのシステムに関する会議では英語を使います。

    英語と言っても、実際に使われている文法や単語は中学生レベルの物がほとんどです。

    会議でも使用する英語はほとんどが中学英語レベル

    もちろん専門用語などの知識も必要にはなります。

    しかし、出現頻度としては2、3文に対して1、2回程度で、それ以外の単語や文法は全て義務教育で習うレベルの物です。

    逆に言えば、中学レベルの英語をちゃんとマスターしていれば、ある程度英語のスキルが必要な仕事も行うことができます。

    そう考えると仕事の幅を広げるというハードルも低く感じるのではないでしょうか。

    おすすめの英単語の本は「イラストでわかる 中学英語の語源事典」

    著:清水健二/すずきひろし

    監:ウィリアム・J・カリー

    出版社:PHP研究所

    PHP研究所の書籍紹介ページ

    おすすめは「イラストでわかる 中学英語の語源事典」

    オススメの理由は

    • 難しい単語は一切利用せず、中学生レベルの英語のレベルに合わせています。
    • ややコミカルかつ脱力系のイラストによる解説をしているため、飽きずに英単語が習得できます。
    • 語源を知ることで単語の用途を発展させたり、類義語の勉強ができます。

    1冊あれば、ビジネスの世界でも十分通用する密度の本です。

    英語でプログラミングが学べる海外のサイトの利点

    英語でプログラミングが学べる海外のサイトの利点としては、英語とプログラミングの両方のスキルが同時に習得できることです。

    プログラミングを効率よく理解するには英語力は必要

    しかし、逆に、英単語が分からなくてもプログラムを理解できれば、その英単語や文章が何を意図しているのかが理解できます。

    海外のプログラミング学習サイトを利用し、プログラミングを英語で学ぶことにより、英語もプログラミングも両方習得できます。

    これは脳医学的にも実証されている方法で、文章の前後関係や実例を踏まえた理解というのは、何時間も机に向かい辞書を引く勉強法より、遥かに優れています。

    だからスピードラーニングなどがあそこまで流行ったんですね。

    英語でプログラミングが学べる海外サイト:海外のコミュニティサイト

    引用元:C# Developer Community

    賛否両論もありますが

    プログラミングを学べるベストな海外サイトは「コミュニティサイト」です

    例えばC#の場合は「C# Developer Community」というサイトがあります。

    なぜ海外のコミュニティサイトがベストかというと2点のメリットが挙げられます。

    1. 掲示板のようなサイトでユーザー同士の交流がある
    2. 一般的な技術サイトには記載されていないような技術情報も掲載されている

    交流サイトが有効な理由は次のとおりです。

    その場でコミュニケーションをしたり、質問の仕方や得られた回答を理解して読まなくてはいけません。

    つまり、英語での質問、答えを都度理解する必要があります。

    全世界のユーザーがアクセスし、日々質問や意見交換が盛んに行われています。

    読むだけでも、現在の開発はどのような方向に進んでいるのかなどリアルタイムな情報を理解できます。

    公式サイトやまとめサイトなどを調べても見つからない解決方法が見つかります。

    過去事例はないか、など探すことも勉強の一つになります。

    さらに同じ悩みを抱えている人の投稿の解決方法で問題が解決します。

    大抵の人が質問するときは、公式サイトやまとめサイトなどを調べた上で見つからない場合に質問するケースが多いです。

    見ていくと、ほぼ100%の確率で同じ悩みを抱えている人の投稿に出会います。

    エンジニアエンジニア

    その解決方法を読むことで、実際に数日間止まっていた開発が一気に進むようになったケースもあります。



    まとめ

    勉強というのは一般的に押し付けられるものではありません。

    時には教え合い、必要なら意見を対立させたりしながらでないと自分のものになりません。

    特にプログラミングの世界には、正解というプログラミングは存在しないのです。

    未経験からエンジニア転職!
    副業フリーランス転職にも完全対応!

    社会人がエンジニア転職するなら
    プログラミングジャパン!
    まずは無料体験レッスンで詳しく話を聞いてみよう!