【IT 未経験】転職に有利なスキル プログラミング編
お疲れ様です。仮面ライターです。
皆さん休日はいかがお過ごしでしょうか?
ボクは、日課をこなしたり、友人とご飯食べたりしておりました。
そんな感じで楽しく一日を過ごせたので、しっかりとやることはやりたいと思います。
本日のテーマはIT企業で有利になるお勧めのスキルとその理由について、ボクの経験からお話をしたいと思います。
ぜひとも今回の記事を参考にITに関係するスキルを勉強してみてください!
では早速、今回テーマとするスキルについて書いていきたいと思います。
今回のテーマはこれです。
プログラミングスキルについては、この記事を読まれている方であればIT未経験でも重宝されるスキルであることは知っていると思います。
ですが、どうしてプログラミングスキルが重宝されているのか知らずに、周りがプログラミングを推奨しているからとりあえず勉強している方も多く見受けられます。
そのため、まずはプログラミングを企業の業務の中でどのような場面で使われているか書いたうえで、その際によく使われる言語を紹介させていただきます。
プログラミングを使うシーン
業務の効率化
なんといっても企業でプログラムを書く際に一番多いのは業務の効率化だと思います。
例としては、
・大量に送られてくるアラームメール(障害発生メール)の切り分けを行い、表にまとめてくれるプログラム。
・サーバなどが吐き出すログからエラーだけを掬い取り、メールを送るためのプログラム。
・取得してきたcsvファイルの情報を資料にまとめる為のプログラム。
・勤怠を簡単に入力できるプログラム。
上記で例に挙げた業務を仮に全て手作業で行った場合、少なく見積もっても1~2時間、バッファ時間をとれば3~4時間以上はかかるあろう作業になります。
ですが、実際にこれをプログラミンで行えば、大体ファイルを開いて実行するまでの時間で5分程度で行うことができます。
企業では、その他の業務に囚われて、いわゆるこういったルーチン的な決まりきった作業を放置して日々の業務を行っているケースが多くあります。
そのため、業務改善を行えるプログラマーはかなり重宝されます。
Webサービス開発
企業で扱っているシステムの開発で、主にECサービスや旅行会社のサイトなどのWebサービス系です。
こちらについてはIT企業に開発案件を依頼しているケース、若しくは大きな企業であれば、自社に開発部門などを抱えている企業なども多いと思います。
最近では企業をする人も増えてきており、Webサービスを軸に自社のサービスを展開しようと考える企業は当たり前のように存在しております。
そのため、Webサービス系のプログラマーは企業でもフリーのエンジニアでも活かせると思います。
自社パッケージ
自社パッケージというのは、単純に自社で提供しているシステムやソフトウェアなどのことを言います。
Microsoftでいう、WindowsやOfficeソフトなどの自社開発ソフトウェアのことですね。
製品開発の位置づけになるため、プログラマー志望の方にとっては一番目指したいポジションなのではと思います。
ですが、そういったポジションであるからこそ、それに見合うだけの技術力があるエンジニアにしか務まらないため、このポジションにつけないでいるエンジニアもたくさんおります。
ですが、実際にこのポジションにつくことができれば、個人で開発する規模などはるかに超えた製品、現在のトレンドで言うなら、ARシステム、VRシステム、AI機能を持ったシステムなどにも最終的には関わることができる、将来一番重宝されるポジションで働くことができます。
では、上記のような必要とされるプログラマーになるためには何を学べばいいのか。
実際に上記のような企業に必要とされるプログラマーになるために、
学ぶべきお勧めプログラム言語を紹介させていただきます。
お勧めのプログラミング言語5選
Java
Java言語については結構なじみのある方も多いかと思います。
Javaは現在世界中で使われている人気言語であり、Googleが開発でよく使用している言語になります。
また、人気のSNSや銀行のシステムなどもJavaで開発されている言語になります。
その理由は、Javaの一番の強みである、プラットフォーム(OSなど)を選ばずに開発が行えるところにあります。
JavaはJavaVMという仮想マシンの機能を有しており、コンパイル(人が書いたコードをコンピューター言語に変換すること)を行いJavaVMで実行できる実行ファイルを作ります。
このJavaVMという仮想マシンが実行環境に合わせてコードを変換してくれるため、プラットフォーム依存することなく開発したものを使用することができるのです。
こういったJavaの強みから企業では、プログラミングの開発研修をJavaで行わせたり、企業で扱うソフトウェアやシステムなどをJavaで開発していることも多くあります。
また、書籍も多く、Youtubeで動画講座を上げている方も多いため、問題解決までの時間が圧倒的に早いと思います。
そのため、個人的には初学者に一番おすすめの言語だと思います。
ボクも一時期Javaを軽く勉強しており、難しい資格ではありませんが、Javaの資格を取得したこともあるため体感的にもお勧めです。
書籍としては以下の参考書がかなりお勧めです。
ボクもJavaを勉強していたときはずっとこの書籍を使用しておりました。
また以下の動画でも丁寧に解説してくれているため、併用して学習すると学習効率が格段に上がると思います。
また、Javaはオブジェクト指向でつまずく方が多いと思います。
オブジェクト指向というのは簡単に説明すると、『モノ』と『プログラム化』した考え方になります。
オブジェクト指向で作ったプログラムは後で何回も使いまわせるため、大規模プロジェクトでは必須です。
というより、プログラミングにおいて必須の考え方になります。
これを学ぶのに一番手っ取り早い方法がゲーム開発であり、そのゲーム開発をテーマにしているのが上記の書籍と動画になります。
そのため一見の価値はあると思います。
JavaScript
Javaと同じと思いきや別言語である、JavaScript。
こちらは、Webサービスなどに特化したプログラム言語になります。
主にWeb上で操作するシステムなどで使用される言語です。
例えば、Ajax(GoogleMapなどで使用される機能)、Webサイトなどで、個人情報を登録する機能や、エラーや警告などのポップアップウィンドウの表示、ブログやサイト内の静的なものに対して動的処理を加える動きなどをJavaScriptで実現できます。
このようにWebサービスにおいて、非常に有効な言語であり、現在、Web系サービスが主流の時代では、学習する価値の高い言語であるとボクは考えております。
JavaScriptはブログやホームページ制作でも有効な言語のため、ブロガーの方で使用経験のない方はぜひとも勉強がてら調べてみるといいかもしれません。
VBA・マクロ
こちらは主に業務効率化などで企業に重宝されるスキルだとボクは考えております。
VBAとマクロについて簡単に説明すると、マクロは操作を自動化するときに使用し、VBAでマクロの処理を動かします。
機能がマクロで、その機能を実現するために書かれたプログラムがVBAですね。
すいません。実はこれ以上詳しい部分についてはボクも知りません。
基本的にはVBAという言語でプログラムを書いてマクロ機能を作ると理解すれば問題なさそうです。
そして、なぜこのVBA言語が企業で重宝されるかですが、はじめにも記載した通り、業務効率化で非常に有効なプログラミング言語だからです。
基本的にはエクセルやGoogleスプレッドシートで使用できるのできます。
企業ではこのような表計算ソフトで大量のデータを管理することが多く、そのデータを管理することに工数を取られてしまい、本業に手が回らないケースなどが多々あります。
上記のような管理資料やお客様に提出するデータをまとめた資料を簡単に管理、更新できる言語のため、どの企業でもVBAを使用する場面はあり、VBAを使えることは強みになります。
また、VBAプログラムを書く際に普通に書き始めてもいいのですが、プログラムが一切分からない人でもVBAでマクロ機能を実現できる方法があります。
それが、『マクロの記憶』という、表計算ソフトに搭載された超、超、超便利な機能になります。
これについては気になる方は調べてみてください。
企業で行われるスキルチェックに、『Excelは使用できますか?』という内容があります。
これは三通り意味があり、
1、Excelで資料を作成できます?
2、関数が使えますか?
3、VBAを使用できますか?
のどれかの意味になります。
ほとんどの方は1と認識して、使えます!(学生時代に論文などで表を使用した際に使ったので)と答えると思いますが、2、3の意味が含まれていることも考慮に加えておいた方が良いかもしれません。
なので、VBAを少しでも触っておけば堂々とExcelを使えますと言えるので、ぜひ一度勉強してみるのもいいかもしれません。
PowerShell(ShellScript)
こちらは、WindowsOSやLinuxOS上で使用できるプログラミング言語になります。
Shellスクリプトの良いところは何と言っても開発環境を用意しなくてもいい点です。
※開発を始めるための設定などは必要です。
開発環境を用意しなくてもいい点について、企業によってはプログラムを書いて実行するための開発環境が用意されていないケースが多々あります。
極端な話Excelは予算的に用意できない、端末に勝手にソフトをインストールできないということは日常茶飯事です。
それでも、上司やお客様からは、無茶振りをされ、プログラムを組まなければいけないケースも発生すると思います。実際ボクも以前それで全く使ったことのないPowerShellを使う羽目になりました。(´;ω;`)
そんな厳しい業務環境の中でもShellスクリプトはほぼ間違いなく使用できる言語です。
なにせ、OSに搭載されている機能なので。
しかも、難しい開発環境を導入する必要がないため、よくある、開発環境を構築できず、プログラムを書いたのに実行できないなんてこともありません。
そのため、企業ではOS上で動かす簡単なプログラムは頻繁にShellスクリプトが使われます。
エンジニアであれば大半の人間がShellスクリプトを書いた経験があり、ある程度は知っていて当たり前的な風潮すらあります。
このような利点と経緯からShell言語は一度は触れておいた方がいい言語であると思います。
Python
最後はPythonです。
こちらを進める理由は、スクリプト言語であるのに用途が非常に多い点です。
また、実際現場で働いているプログラマーの方たちから非常に支持が高く一番人気のプログラミング言語と言われております。
では、実際どんな場面で使われているのか。
・人工知能、ディープラーニンブ(機械学習)
・ロボット制御プログラム
・Webサービス(Youtube、Instagramなど)
・仮想通貨で必須のブロックチェーン
上記のような場面でPythonは使用されております。
どうですか?これを見たら正直Pythonを進める理由はこれ以上必要ないですよね(笑)
上を見てわかる通り、現在のトレンド技術やサービスを網羅している言語がPythonなのです。
その上、スクリプト言語のため、開発をする上で非常に効率よく進められます。
そのため、社会的にも価値の高い言語であり、且つ学習も進めやすいことからお勧め言語の一つとして加えさせていただきました。
学習にお勧めしない言語
最後にプログラマーを目指している方やプログラミングを覚えてIT企業で活かしたいと考えている方へ、お勧めしないプログラミング言語を書かせていただきます。
これはボクの主観なので、そう思わない方もおられると思いますので、そのあたりはご容赦いただければと思います。
ボクが未経験プログラマーや初学者へお勧めしない言語は
です。
こちら、なぜお勧めしないかというと、単純にこの二つはプログラミング言語ではなくデザイン言語だからです。
デザイン言語とは、ブログやホームページなどに載せた画像の位置を決めたり、文字の大きさを変更したり、色などを変更できる言語になります。
一般的にプログラミング言語というのは、日々のルーチンワークなどを効率化するための機能を実現するために使用されるものです。
しかし、デザイン言語はそういった用途で使用されないため、Webデザイナーとしては重宝されても、IT業界でプログラマーとして重宝されるかと言えば正直微妙です。
知っていればまあいいかなレベルだと思います。
そのためHTML、CSSを学習することは無駄ではないのですが、プログラマーとして学習する言語としては優先度はかなり落ちると思います。
そのためフリーエンジニアやIT企業のプログラマーを目指している方は、今回紹介した5つのプログラム言語やC、Rubyなどを学ぶ方がいいと思います。
まとめ
今回の記事ではプログラム言語についてお勧めの言語とその用途などを書かせていただきました。
長々と書きましたが、プログラミングにおいて一番必須のことは、自分のイメージできるものを実現できる言語を選ぶことだとボクは考えております。
過去にプログラムの課題を研修でおこなっていた際に、プログラムで実現する機能をイメージできずだいぶ苦戦した経験があります。
しかし、イメージできる機能などはそこまで苦戦せずにプログラムを書くことができました。
なので、まず学習するのであれば、イメージできる実現したいことを決めて、それにマッチした言語を選択することが非常に重要です。
プログラミングの考え方の基本はどれも同じため、この言語は無駄だからやめた方がいいというのも正直ありません。
そのため、ここで書いた内容も参考程度にして、自分に合った学習方法で学んでいってもらえればと思います。
それでは、また次回の記事で!
こちらの記事も合わせてどうぞ
ディスカッション
コメント一覧
まだ、コメントがありません