言わずもがな英語&プログラミングは現代に学ぶべき良いスキルだと思います。
各々を各々で勉強するのもいいですが、どうせなら一緒に勉強する方法はないのか?とか思いますよね。
特に将来エンジニアとして海外で働いてみたいと思う人は、
今後いろんな国籍の人と英語で会話することを想定して、英語でプログラミングを習得してしまうのが良いと思います。
日本で全くの未経験者がエンジニアになるステップとしては、Progate、ドットインストール、などが挙げられますが、海外ではどうなのでしょう?
私が実際に使ってみた海外のプログラミング学習サイトをご紹介します。
目次
Codecademy:海外版Progate
まずはじめはCodecademyです。(https://www.codecademy.com/)
日本のProgateが後発なのかもしれませんが、Progateに非常に似ています。オンライン上で開発ができて、環境構築不要です。
Codecademyは「How to be software engineer without degree?」とかで検索すると必ずブログ記事などで紹介されています。
海外エンジニアにとって登竜門的なサイトなのでしょう。
プログラミングとはなんぞや?から四則計算などの基本的な文法からメソッド、クラス、継承などに発展していきます。
一部モダンなJSのフレームワークやデータサイエンスのコースは有料ですが、普通に言語を基礎から学ぶコースは概ね無料です。
ちなみにCodecademyでRubyの勉強をCompleteした方であれば、その後にAppAcademyで紹介されている練習問題をやってみてもいいかもです→。https://prepwork.appacademy.io/coding-test-1/practice-problems/
これはAppAcademyという後払いのプログラミングスクールの入学コーディングテストのための練習問題です。
優しいレベルから難しいレベルまで用意されており、Codecademyで習った基礎文法の理解ができているかどうかを確認できる問題が多く存在しています。
開発環境構築のいらないクラウドIDE(repl)を使っていまして、コードを書いてすぐに右画面のコンソールで動きを確認することが可能です。
しかもSolutionがついているので、問題が解けない場合は参照することも可能です。
スポンサーリンク
無料で回答付きのプログラミング問題集:codewars
CodecademyやAppAcademyの練習問題で慣れてきたらさらにおすすめなのが、codewarsです。
あーなんかまさしく英語のサイトー!って感じで、重い時もあり、文字が小さめのサイトですが、
サイトの自体は素晴らしいです。
端的に言うと、無料でプログラミングの問題がたくさん解けます。最強じゃないですか?
日本だとPaizaというサービスがありますが、Paizaには解答がないので、問題が解けない時に勉強になりません。
Paizaの問題の解答をgithubで公開したり、ブログ記事やQiitaなどで投稿することも禁じられているので、マジで探しても解答がありません。
一方、Codewarsは多くの人の解答を見ることができて、さらに「Best Practice」が投票制なので、最高にイケてます。
自分が長時間かけて解いた何行もあるコードでも、答えを見るとサラッと一行で実装されていて、それがなんとも悔しいです笑。
問題を解答を見ずに解くことができたら経験値が溜まって、レベルが上がっていきます。
レベルは8が一番低くて1が最上級なのですが、レベルの単位には日本のkyu(級)が使われています。
スポンサーリンク
良質なポートフォリオを作るなら:udemy
Codewarsである程度レベル上げをして、メソッドの書き方、配列、なんでもござれ!という感じになってきたら、もっと規模を広げて、実際に動くものを作ってみると良いと思います。
Udemyを使えば、これまでのCodecademyやCodewarsの競プロ的なコーディングから「アプリをどう作るか」というステージに移行できると思います。
環境構築とか、Rubyでいうところのgemやwebpackなどのインストールする系の扱い方、本番デプロイ方法など、より実践的なプログラミング学習ができるかと思います。
例えばですが、phpのフレームワークLaravelを学習するならこちらがおすすめです。↓
Udemyの良いところは動画に関して質問ができるところと、英語の自動字幕が見れることですね
動画で勉強するならYoutubeでも英語のプログラミング教材はいっぱいあるんですが、いざと言う時に質問できて、講師からの返信が保証されているのはUdemyです。
普段は20,000円するものもあるんですが、セールだと1,200円になることもあるので要チェックです。
英語の教材は日本語教材の10倍はあると思います。日本語の教材に手を出したくなるのはわかるのですが、心を鬼にして、英語の教材を選びましょう。
将来エラーが出た時に、英語でプログラミングを勉強して、英語でエラー検索できるようになれば、解決のスピードも上がるかもしれません。
最強の無料プログラミング学習ツール:youtube
Ted、Codewars、Wikipediaとかなんでもそうですが、海外のサービスは無料で情報が集められるサービスが多いですね。
フィリピン人なんかはYoutubeを活用しながらプログラミングを学ぶ人も少なくないそうですが、
まず気になる言語があるんだったら、Youtubeで検索してみると良いのではないでしょうか?
ただ、個人が無料でやっていることなので、Udemyのように質問に必ず返信してくれる保証はありませんので、自己解決できる方のみおすすめです。(YouTubeでもコメント欄で質問はできるかもしれませんが…100%解答がくるとは保証されていません。)
海外でフロントエンドを目指すなら:freecodecamp
freecodecamp(https://learn.freecodecamp.org/)はHTML、CSS、JavaScript、Gitなどフロントエンド周りで必要なことが無料で学べます。
日本にこのようなサイトは…ないですね。
オンライン上で実行できるので、開発環境の用意は不要です。
色々な項目が300時間の学習時間目安で用意されており、その上コードインタビューのための項目もあります。
一通りこれらのことをやりきったら、フロントエンドはもう熟知しているに違いありません。
今後他の言語にも対応してほしいいなぁと思う人はぜひ寄付をしておきましょう。
テクニカル試験、コードインタビュー対策なら:Leetcode
来るべきテクニカル試験やコードインタビューの対策がしたいならLeetCodeがおすすめです。(https://leetcode.com/problemset/all/)
もし海外でエンジニアとして働いてみたいなら、おそらくテクニカル試験、コードインタビュー対策は避けられないでしょう。
流れとしては
・英語のCV、履歴書などを準備、LinledInやGitHub(公開用)を整備
・Indeedなどで求人をまとめて整備、受けたい順にリストを作る
・いざ応募
・スカイプ面接(現場の人か人事)
・コーディング試験
・役員など偉い人と面接
・採用
となると思います。
この流れのなかの、テクニカル試験・コードインタビュー対策に関して、LeetCodeがおすすめな理由は、「有名IT企業のインタビュー対策」が見れるということなんですね。
有名IT企業に行かないとしても勉強になることは間違いないでしょう。
コーディング試験でよくあるも網羅されています。一部無料ですが、全てのコンテンツを見るには年間契約プランでも$159なので、そこそこの値段しますね。
最後に
というわけで今回は英語でプログラミングを学ぶことのできるサイトをご紹介しました。
流石に英語でプログラミング学んでそのまま海外の採用試験に…と思う人はまずは日本で実務経験を積んで、オンライン英会話で英語のスキルを高めつつ、長期スパンでエンジニアとしての海外移住を考えてみても良いかと思います。
ぶっちゃけ他にも色々あるので、自分で探してみて、気に入ったものをやり続けるという方法もありですね!
今回はここまでです!それでは!