複業フリーランスのhillpointです。
私、ITエンジニアとしては、10年以上、フリーランスとしても、3年目となりました。
会社員時代は、プロジェクトマネージャーしており、延べ500名以上のエンジニアの面談・採用を見てきました。
そんな経験から、ITエンジニアとして、こればっかりは、できんと困る、最低限必要なスキルセットはこの通りです。
・パソコン(特にOffice)が使えること
・OS(特にLinux)が使えること
・バージョン管理(GitもしくはSVN)が使えること
・Webページまわり(つまりHTML、CSS、JavaScript)が使えること
・メジャーなプログラミング言語が少なくとも1つ習得できていること
※ プログラミング言語だけ、使えるではなく、習得と記載しています。
習得とは、そのスキルを熟知しており、使いこなせること。使えるぐらいのレベルは不十分。
あとは、一般的な社会人としての常識があれば、オッケーです。
専門用語について
アイコンがついている専門用語は、「知らないと恥ずかしいITエンジニアの用語集」ページに説明を記載しているので、専門用語の意味が解らない場合、リンクをタップして、説明を参照してください。
ITエンジニアになるための最低限必要なスキル
冒頭にも書きましたが、ITエンジニアとしては、技術面においては、プログラミングができるという以外に、最低限必要なスキルがあります。
未経験な方は、大変でしょうが、これが使えないのでは、いくらプログラミングができても、システムを開発することはできません。
1個1個説明します。
パソコン(特にOffice)が使えること
まぁ、これは、そうです。
エンジニアは、パソコン使って仕事します。。。
特にOfficeで、ExcelやWord、Powerpointは、プログラマーと言えど、毎日使います。
パソコンどれにしたらいいか?迷ったら、この記事参考にしてください。
フリーランスのエンジニアが持つべきパソコン
続きを見る
OS(特にLinux)が使えること
エンジニアが開発するシステムやサービスは、だいたいが、サーバと呼ばれるコンピューターに配置されます。
パソコンが、個人向けのコンピューターであるのに対し、サーバは、複数の人が使うコンピューターです。
このサーバに利用されるOSで最も多いのがLinuxとなります。
サーバは、ファイルやフォルダ等の考え方は、パソコンと同じですが、パソコンのようなデスクトップ環境ではなく、コマンドプロンプトにコマンドを入力して利用します。
サーバには、いろんな機能があり、突き詰めれば、かなりの勉強・経験が必要ですが、それらは、インフラエンジニアの仕事なので、普通のエンジニア(利用者)は、サーバへファイルを送信したり、サーバ上でファイルを移動したり、プログラムを実行したりできれば問題ありません。
使えるようになるというレベルで勉強は必要です。
OSとLinuxについて、基礎から学ぶなら、この記事見てください。
続きを見るOSってなに?から始める。OSの基礎知識とLinuxの使い方
DB(つまりSQL)が使えること
エンジニアが開発するシステムやサービスでは、大半のシステムがDBを利用します。
DBを利用する際は、SQLというDBからデータを取り出したり、書き込んだりする言語を利用します。
SQLは、プログラミング言語の1個ではありますが、DBにあるデータの読み書きに特化するため、単純なプログラミング言語となります。
なお、DBもいろんな機能があり、突き詰めれば、かなりの勉強・経験が必要ですが、それらは、DBエンジニアの仕事なので、普通のエンジニア(利用者)は、DBのデータの読み書きができること、テーブル等の構成要素を変更できるといったDBを利用するための知識の習得だけで問題ありません。
DBとSQLについて、基礎から学ぶなら、この記事見てください。
データベース(DB)ってなに?から始めるDBの基礎知識とSQLの使い方
続きを見る
バージョン管理(GitもしくはSVN)が使えること
システムやサービス開発で利用される様々構成要素(例えば、プログラムのソースコードやドキュメント、設定情報等)は、バージョン管理ソフトを利用して、バージョン管理されます。
バージョン管理ソフトは、ファイルの履歴を管理するだけでなく、複数の人が1つのファイルを変更するような場合でも、そのファイルの整合性を保つ機能などもあります。
バージョン管理ソフトは、アプリを利用して簡単に利用できるので、利用方法を習得しておきます。
今は、Gitというソフトが主流です。
少し前までは、SVNというソフトが主流でした。
どちらかを使えれば問題ありません。
今から勉強するなら、Gitです。
Gitの基礎を学ぶなら、この記事見てください。
Gitってなに?から始めるGitの基礎知識と使い方
続きを見る
Webページまわり(つまりHTML、CSS、JavaScript)が使えること
フロントエンジニアやWeb系のエンジニア以外であっても、Webページまわり(つまりHTML、CSS、JavaScript)が使えるレベルのスキルは必要です。
今時のシステムやサービスにおいて、Webページまわりを一切使用しないシステムはありません。
Webページまわり(つまりHTML、CSS、JavaScript)も、突き詰めれば、かなりの勉強・経験が必要ですが、それらは、フロントエンジニアの仕事なので、普通のエンジニアは、HTML、CSS、JavaScriptで、簡単なWebページが作れるレベルで問題ありません。
なお、フロントエンジニアやWeb系のエンジニアは、当然ですが、使いこなせるレベルの習得が必要です。
また、フロントエンジニアやWeb系のエンジニアは、JavaScriptも使いこなせるベルの習得が必要です。
HTMLの基礎を学ぶなら、この記事見てください。
HTMLってなに?から始めるHTMLの基礎知識と使い方
続きを見る
CSSの基礎を学ぶなら、この記事見てください。
CSSってなに?から始めるCSSの基礎知識と使い方
続きを見る
JavaScriptの基礎を学ぶなら、この記事見てください。
JavaScriptってなに?から始めるJavaScriptの基礎知識と使い方
続きを見る
メジャーなプログラミング言語が少なくとも1つ習得できていること
エンジニアとして仕事をするためには、プログラミング言語を使って、プログラミングができることが必須です。
プログラム言語は、いろんな種類があり、多種多様です。
全てを使えるようになることは、現実的に困難です。
ですが、多種あるプログラム言語でも、特徴こそあるものの、基本的な考え方は、どれも同じなので、メジャーなプログラム言語を最低1個、習得できていれば問題ありません。
メジャーなプログラミング言語とは以下のような言語です。
・Java
・C/C++
・Go
・C#
・Python
・Php
・Ruby
アプリ開発がターゲットなら、このあたり
・Kotlin
・Swift
なお、先に書いたSQLや、Web系で利用されるHTML、CSS、JavaScriptもプログラミング言語と言えば、プログラミング言語ですが、領域や用途が限定されているので、習得しても、1個にカウントはできません。
JavaScriptを熟知していても、それだけでは不十分で、上記のメジャーなプログラミング言語を最低1個、習得しておく必要があります。
フロントエンジニアやWeb系であれば、上のようなメジャーなプログラミング言語に加えて、JavaScriptを習得する必要があります。
初めてのプログラム言語の選び方は、この記事見てください。
ITエンジニアになるために最初に勉強すべきプログラミング言語
続きを見る
プログラミング以外のたくさんのスキル。どうやって習得するか?
未経験の方から見ると、プログラミング言語以外に、OSやDBやSQLとか、そんなにスキルが必要なのか?と思うかもしれません。
ですが、OSやDB、バージョン管理といったものは、所詮ツールであり、使うものなので、使い方を知るといった勉強となります。
現役のITエンジニアの人は、OSやDB、バージョン管理といったところは、常に使っているので、使い方を知っているというものです。
大工さんが、ノコギリ使うようなもんで、ノコギリの使い方を知っておけば良いというものです。
ある程度、これらのツールの使い方を理解したなら、プログラム言語の勉強の中で、OSやDBを使い、実践練習すると習得が早いです。
勉強というよりは、使うことになれる。という感じです。
具体的には、勉強で作ったプログラムであっても、バージョン管理ソフトを使って、バージョン管理をしたり、無料のサーバを借りて、サーバへアップしたり、Web上に公開したりすることで、これらの使い方を習得していくと良いでしょう。
なお、ここまでスキルの詳細を見てきて、自力、独学は無理そうと思った方は、プログラミングスクールに行くと良いです。
プログラミングスクールでも、当然、ITエンジニアに必要なスキル教えてくれます。
プログラミングスクールについては、この記事見てください。
【現役SEがおすすめする】実務に役立つプログラミングスクールランキング(オンライン編)
続きを見る
以上 「ITエンジニアになるための最低限必要なスキルセット」でした。