概要
海外や外資系の面接では、多くがコーディングテストを取り入れているらしく、私自身コーディングテストを受ける身になったのでLeetCodeでEasyの問題を30問解いてみました。
LeetCodeとは
コーディング面接で使われるプログラミングの学習サイト。あるお題に沿って、関数やクラスの中身をコーディングしていくというもの。好きな言語を使って学習をすることができますが、基本的なメソッドを理解していれば、あとは「アルゴリズムを自分でどのように組み立ていくか」が試される問題になっています。
著者のプログラミング歴
スキルセット
JavaScript / PHP / Vue / React / Laravel / MySQL
学習歴
2020年6月 学習開始。
2020年11月 転職
実務経験は3ヶ月ほど。
LeetCodeを30問解いて変わったこと
アルゴリズムを仮説を持って組み立てることができるようになってきた
最初の5〜10問ほどはアルゴリズムを自分で組み立てることができず、四苦八苦していたのですが、基本的な問題であれば仮説をもってコードを書くことで次のデバッグに生かすことができたり、1発で正解する問題もちらほら出てくるようになりました。
意外と理解していないメソッドがたくさんあることに気づいた
JavaScriptでコーディング学習をしていたのですが、JavaScriptの代表的なメソッド(自分が勝手にそう思っている)mapやreduce、forEachなどはもちろんのこと、toStringやsplit、joinやspliceなどわかっていそうで深くは理解できていないメソッドがたくさんあることに気づきました。
ただLeetCodeで学習する分には、そんなにたくさんメソッドを理解しておく必要はありません。
コーディングテストそのものに抵抗がなくなって来た。
お話をいただいたときは、まだ駆け出しだし自分に解くことができるのか?と半信半疑でしたが、ある程度の数をこなしたことでコーディングそのものに対して自信を持って解くことができるようになったと感じます。
まとめ
ITエンジニアとして、今後グローバルな企業に挑戦したい方、アルゴリズム力を鍛えたい方にはおすすめの学習サイトです。私自身アルゴリズムを考えるにあたって仮説を立てる力が身についてきたと感じます。今後もエンジニアとしてスキルアップができるように学習を続けていきたいと思います。