「エンジニアを目指す人が知っておくべきことは?」
「ゼロからエンジニアになるには何をすればいいのだろう?」
エンジニアの仕事についてどこまで知っていますか?
知識のない職業に就くにも、わからないままでは不安ですよね。
この記事は、エンジニア経験ゼロの方がエンジニアを目指す時の”気になる”をまとめています。
この記事もオススメ
この記事の目次
Webエンジニアの需要
Webエンジニアの求人倍率
Web業界の求人倍率は、過去3年で5.1倍に増加した結果が出ており、現在もさらに増加している傾向にあります。
中でもウェブビジネス企業において人材が不足している事業内容は「スマートフォン・タブレットアプリ開発」「ウェブビジネスコンサルティング、データ分析」「ウェブサイト構築・ウェブコンテンツ制作の請負」が特に高いようです。
評判については、「終電で帰ることが多い」や「休日出勤がある」「ブラック企業が多い」など、マイナスな評価もありますが、Webエンジニアの仕事量はとても多く、インターネットがある限り仕事がなくなる心配をする必要はないと言っても過言ではありません。
現在の仕事内容としては、「Webアプリケーションの構築」が主な仕事になりますが、近年では「研究結果を公開するもの」「会員・金銭を管理するシステム」「個人情報が含まれているようなセキュリティレベルの高いもの」など、多岐にわたる内容の発注が増えてきており、実現する形態としてはWebアプリケーションが大部分を占めています。
言語別の求人数
主なプログラミング言語は14種類あります。
・Java…比較的大規模開発案件が中心でしたが、近年ではアンドロイドのネイティブアプリ開発が増えてきています。
フレームワークを利用する場合は「Struts」「Seasar2」「JSF」「Spring」「Hibernate」「iBATIS」を選択するケースが多いと言えます。
・C言語…純粋なC言語のみを利用する案件は近年減少していますが「組み込み系」「制御系」ではC言語が多く存在します。
また、ゲーム系で高速な処理が求められる場面等の高度なチューニング系での求人も多くあります。
・C++…「Windowsアプリケーション開発」や「組み込み系」「制御系」「ゲーム系」の求人が多くあります。
また、高度なチューニングが必要な開発案件での求人も多い言語です。
・C#…C言語や、C++をベースにしつつ、Java風の機能や表記が盛り込まれているため、Javaができる方であれば比較的スムーズに移行ができる言語です。
・PHP…日本国内に20万人のエンジニアがいるともいわれ、求人案件も非常に多い言語です。
「Web系のサービス開発」「ゲーム開発」等で利用が多く、そのほとんどが「LAMP環境による開発」となっています。
フレームワークは「CakePHP」「Symfony」「Codeigniter」「FuelPHP」の利用が増えています。
・Ruby…近年Ruby求人が急速に増えており、Webサービスを高速で開発する場合などに「Ruby on Rails」が選択されることが多く、大手WebサービスでもRoRが使われ実績も増えています。
・Python2/Python3…海外で急速に増加しているプログラミング言語で、日本国内での求人はそれほど多くありませんが、読みやすさを重視する「企業」「スマートフォンのバックエンド」等では積極的に取り入れるところも出てきており、これからの普及が期待される言語です。
・Perl…PHPが普及する以前にPerlは広く利用されていましたが、現在のPerlの求人は以前と比べると減少傾向にあります。
しかし、現在でもPerlで開発を続けている企業には「Perlhacker」が多数在籍していることもあり、高いレベルを要求される求人が多いと言えます。
・Objective-C…iPhoneアプリ、iOS向けの開発求人は、iPhoneやiPadの普及とともに増えています。
経験者が少ないので、他言語からの移行歓迎の求人が多いのも特徴。
C++が書ければ学びやすい言語なため、C++経験を求められることも多いといえます。
・ActionScript…iPhoneやiPadでFlashが見れない事もあり、近年利用されることが少なくなっていますが、ソーシャルゲーム開発では現在も利用されています。
ほとんどの場合は、プログラミングだけでなく、モーションコントロール等のフラッシャーとしての技能が問われます。
・R言語…統計処理を得意とする言語のため、多量のデータ解析が求められる「ソーシャルゲームの解析」「リサーチ」「データマイニング」「アソシエーション分析」が必要な業務の求人が増えています。
また、近年ではデータサイエンティストが注目されており、今後求人が増える事が予測されます。
・Scala…「オブジェクト指向言語」と「関数型言語」の特徴を統合したマルチパラダイムのプログラミング言語です。
Javaの良さを最大限継承しつつ、スクリプト言語や関数型言語の良いところも吸収し、「先進的な機能/文法」を取り入れている言語です。
・Java Script…ブラウザサイドのフロントエンド言語として、近年のWebサービスには欠かせない言語となりつつあります。
jQueryを利用した簡単なスクリプトだけでなく、より高度な「UI/UX」を実現するために深い知識が求められるようになってきています。
採用される人はこんな人
未経験から始められるエンジニアの仕事は、経験やスキルが必要になることもありますが、求める人物像として「ITエンジニアになりたいという想いがある方」や「素直に学ぶことができる方」「コツコツと努力をしていける方」「協調性があり、チームで仕事ができる方」などが挙げられます。
この記事もオススメ
エンジニア業界について
エンジニアの職種について
「ITエンジニア」「システムエンジニア」「ネットワークエンジニア」「ウェブエンジニア」「データベースエンジニア」などをはじめとする、約40もの職種があります。
この記事もオススメ
フロントエンドエンジニア
もともと「Webデザイナー」としてひとくくりにされていましたが、Webデザイナーの業務内容は「サイトのビジュアルをデザインする」「情報の構造を整理、ラベリング」「情報アーキテクチャを担当する」などと実に幅広く、非常に多種多様なスキルが求められてくるため、効率化のためにこれらの分野を詳細化していく動きが進んで「フロントエンド・エンジニア」という肩書きが生まれました。
多くの場合、「Java Script」「HTML5」「CSS3」「PHP」といったプログラミング言語など、高度なWeb制作スキルを持った人のことを指しており、それらのスキルを活かしてWebサイトを構築します。
仕事内容は、主にWebサイトの「CSSの設計」「HTML設計」「Javascriptの実装」を行っています。
この記事もオススメ
バックエンドエンジニア
サーバーサイドやデータベースのシステムの「要件定義」「設計」「開発業務」などを手掛けます。
資金や人員に余裕のない小さなスタートアップでは、両社を兼任する場合もありますが、それぞれ異なるセンスを求められる為、大規模なプロジェクトになるほど、業務は細分化されていきます。
この記事もオススメ
オススメWebエンジニアブログ
Web系エンジニアにおすすめする、技術ブログをいくつかご紹介します。
「GREE Engineer’s Blog」
毎月、GREEのUserAgent比率を公開しています。
「クックパッド開発者ブログ」
Swiftプロジェクトのビルド時間を計測・改善する「xcprofiler」を作成した話が載っています。
未経験でも大丈夫?
プログラミング未経験者でも大丈夫かどうか?
IT企業の求人では、「未経験可」という言葉を非常に多く見かけますが、プログラムを書いたことが無くても本当に採用してもらえます。
合格する理由としては「時間とともに慣れてできるようになる」「プログラミング以外にも大事な要素がある」の二つが挙げられます。
プログラミング以外の大事な要素とは「コミュニケーション力」「業務知識」「専門性」「継続力」などのことです。
プログラムというのは、1~2年仕事としてしっかりやると、自然とスラスラかけるようになるので、未経験でも大丈夫といえます。
この記事もオススメ
身につけておくべき知識
ただし、できれば事前に知識を身につけておくと、仕事がしやすくなるでしょう。
作成するプログラムには目的があり、その目的に応じた知識が必要になります。
例として「勘定系アプリケーションであれば、経理の業務知識」「Webアプリケーションであれば、HTMLなどの知識」「デバイスドライバであれば、ハードウェアの知識」が必要になります。
職業プログラマに必要な知識は膨大です。
業務でプログラムを作成しながら、随時知識を修得していく必要があるので、どの分野に関わるのか決まっているのなら、周辺知識は身につけておくといいでしょう。
エンジニアになる心構え
業務で作成するプログラムには必ず仕様書があります。プログラムは必ず仕様書通りに設計しなければなりません。
また、複雑で難解なコードで書かれているプログラムが、良いプログラムとは限りません。
プログラミングは、多くのメンバーが集まって作成するため、自分が作ったソースを他のメンバーが見たとき、わかりやすく記述されていることが重要です。
チームで行う作業も多いので、「コミュニケーション力を付ける」や「プログラミングは丁寧に書くようにする」といった心構えが必要です。
この記事もオススメ
未経験からプログラミングを学ぶには
短期間でプログラミングの基礎を修得したいと考えている方にはスクールがおすすめです。
おすすめのプログラミングスクールについては「おすすめのプログラミングスクールを地域別に紹介!選び方のコツは?」で解説しています。
エンジニア初心者におすすめの本
圧倒的に紹介されているのはこの本で、ブルックスの法則の「遅れているソフトウェアプロジェクトへの要員追加はさらに遅らせるだけだ」は有名な言葉です。
エンジニアだけではなく、IT業界のすべての人が読むべき本とも言われています。
「設計のベストプラクティスの応用的なセット」「経験に基づくテクニック」「複雑なドメインに直面するソフトウェアプロジェクトにおける開発」を容易にする基本原則を紹介する一冊です。
この記事もオススメ
ゼロからエンジニアを目指す まとめ
未経験でもエンジニアになることは可能ですが、働き始めてからプログラミングを勉強する必要がありますし、他にも必要なスキルがありますので、常にスキルアップが必要な仕事とも言えます。
エンジニアにも色々な種類がありますので、目標を定め、着実にスキルアップをしていきましょう。
はじめての転職、何から始めればいいか分からないなら
「そろそろ転職したいけれど、失敗はしたくない……」そんな方へ、テックキャンプでは読むだけでIT転職が有利になる限定資料を無料プレゼント中!
例えばこのような疑問はありませんか。
・未経験OKの求人へ応募するのは危ない?
・IT業界転職における“35歳限界説”は本当?
・手に職をつけて収入を安定させられる職種は?
資料では、転職でよくある疑問について丁寧に解説します。IT業界だけでなく、転職を考えている全ての方におすすめです。
「自分がIT業界に向いているかどうか」など、IT転職に興味がある方は無料カウンセリングにもお気軽にお申し込みください。