クライマー株式会社 エンジニアの伊敷です。
未経験からクライマーでエンジニアとして働き初めて1年半が経ちました。
エンジニアを目指して勉強していた当時を思い返すと「何をどれくらい勉強すればいいのか」が
わからなかった事が原因で非効率な学習方法になっていたなと思います。
実務に必要なスキル感が掴めていなかっため、闇雲に色々な技術の学習に手を付けるなど迷走している時期もありました。
結局、実務が一番学びになるので、必要な事を最低限学習して就職するのがエンジニアになるための最短経路だと思います。
そこで、自分の経験から考える未経験からエンジニアになる際に「これくらいわかっていればOK」という必要なスキル感についてまとめます。
自身の経験から語る"未経験エンジニア"に必要なスキル感
1:マークアップ言語
・HTML
・CSS
HTMLとCSSは、Webサイトの表示部分を作るマークアップ言語ですが、システム開発を行うエンジニアにも必要です。
機能改修の際には、その変更に伴ってWebシステムの表示部分にも修正が入る事がほとんどなので、現状のHTMLとCSSの構造を確認して、変化を加えられる程度のレベル感は必須だと思います。
2:プログラミング言語
・サーバーサイド系言語1つ(PHP・Rubyなど)
・JavaScript
まず、サーバーサイドで動くプログラミング言語を一つ(PHP・Rubyなど)身につける必要があります。私はPHPを選んで学習しました。
サーバーサイドで動くプログラミング言語の主な役割は、DBにデータを入出力する事です。
そのあたりの感覚がわかるような簡単なアプリ(掲示板アプリなど)を作って学ぶのがおすすめです。
また、ブラウザ側で動くJavaScriptの基本も身につけておく必要があります。
基本的な文法に加えて、DOM操作・イベント処理・Ajaxの概念を理解しておけば実務に対応できるはずです。
3:フレームワーク
・サーバーサイド系言語のフレームワーク一つ(Laravelなど)
自分が学習しているサーバーサイドのプログラミング言語のフレームワークを一つ学んでおく必要があります。私の場合はPHPのフレームワークであるLaravelを学びました。
システム開発はほとんどがフレームワークを使用して行われるため、基本的な概念は理解していないと実務に対応できません。
4:開発環境系
・Git
・Docker
Gitは、全くわからないという状態だと仕事が進められないため、「git add」「git commit」の
基本操作と最低限の用語の理解はしておく必要があるかと思います。
未経験からエンジニアになる際に必要なスキル、多いような気がしますが、集中して効率よく取り組めば最短で半年程度で一通りの基本は理解できると思います。