- ITエンジニアの仕事内容って具体的に何をするんだろう?
- 興味があるけど、果たして自分でも業務をこなせるかな?
- 稼げるらしいけど、実際に働いている人の話を聞きたいな。
こういった疑問にお答えします。
僕は、製造業で10年以上働いた後、ITエンジニアに未経験で転職しました。 業界歴は5年目で、現在はフリーランスエンジニアとして企業の業務システムのWebアプリ開発をしています。
こういった経験から、未経験時代に感じていたITエンジニアの仕事内容に関する疑問や不安、実際に未経験から働いてみて感じたことをお伝えします。また、実際問題、本当に稼げるのか?についても実体験を添えて解説します。
初心者の方でも分かりやすく、できるだけ専門用語を使いませんので、ぜひ最後までご覧ください。
ITエンジニアの仕事内容は主に3パターンあります
ITエンジニアは、主に以下の3つに分けられます。
- Web系エンジニア:ホームページ(Webサイト)やWebアプリの開発をするエンジニア
- インフラエンジニア:サーバーやネットワークの設計・構築・運用をするエンジニア
- モバイルアプリエンジニア:スマホアプリの開発をするエンジニア
ちなみに、ITエンジニアの種類や名称に明確な定義はなく、細かく分けるともっと大量になります。なお、一般的にITエンジニアと呼ばれる人は、Web系エンジニアを指すことが多い印象です。
まずは、この3種類について、解説します。
Web系エンジニア
Web系エンジニアとは、普段スマホやパソコンで見ている、Chrome(クローム)やSafari(サファリ)などのブラウザ上で見れるホームページやシステムを作る仕事です。
Web系にも、「Web制作」と「Web開発」の大きく2種類あります。
Web制作は、企業やお店の紹介ページやブログなど、「情報を掲載するホームページ」を作ります。一方、Web開発は、ECサイトや業務システムなど、ざっくり言うと、「機能を持ったホームページ」を作ります。Web開発の方がやることが多い分、難易度が高くて平均給与も高いです。
Web制作の中でも全くプログラミング言語を使わず、HTML(マークアップ言語)やCSS(スタイルシート言語)だけでホームページを作る人のことを「コーダー」と呼ぶこともあり、Web系エンジニアとは区別されます。
なお、一般的には「アプリ」と聞くとスマホアプリをイメージすると思いますが、IT業界ではブラウザで動く「Webアプリ」のことを、単に「アプリ」と呼んだりすることも多いです。
インフラエンジニア
インフラエンジニアとは、サーバーやネットワークの設計・構築・運用をする仕事です。例えば、Webサイトを公開するためにはサーバーが必要ですが、そのサーバーを用意したり、設定したりするのがインフラエンジニアの仕事です。
実生活のインフラは、水道や電気、ガスなどの生活基盤を指しますが、ITの世界でも同様に、システムを支える基盤を指します。
インフラエンジニアは、システムの表側には出てこないものの、「サービスが落ちない」「遅くならない」「安全に使える」といった、利用者にとって当たり前に思える部分を裏で支える重要な役割です。特に、たくさんの人が使うシステムでは、インフラの設計がかなり重要になります。
昔は実際のサーバーを使って運用することが多かったですが、最近はクラウドサービスを使うことが一般的になっています。突き詰めると奥が深いインフラエンジニアですが、個人的に作ったホームページやアプリをネットで公開することは、インフラ知識が少ない人でも、割と簡単にできるようになっています。
モバイルアプリエンジニア
モバイルアプリエンジニアは、スマホやタブレットで動くスマホアプリを開発するエンジニアです。普段スマホで使っているLINEやX、ゲームアプリなどを開発します。
普段使っている人は意識しませんが、iPhone向けのアプリとAndroid向けのアプリは別々に作る必要があります。そのため、プログラミング言語もそれぞれ異なります。
ただ、iPhone向けとAndroid向けの両方が作れるプログラミング言語などもあり、スピード重視で開発したい場合などに使われることもあります。
「なら、最初から両方作れる言語を使えばいいのでは?」と思うかもしれませんが、両方に対応する言語は、iPhone向けやAndroid向けの専用言語に比べて、使える機能が制限されたりすることがあります。なので、用途や目的に応じて、どの言語で開発するかを選ばないといけません。
Web系エンジニアとの違いは、「ブラウザ」ではなく「スマホの中」で動くアプリを作る点です。ただ、サーバーと通信してデータをやりとりしたり、バックエンドのAPIを呼び出したりする部分はWeb系と共通していることも多いです。
Web開発エンジニアの仕事内容は主に2つに分かれる
前述の通り、ITエンジニアと呼ぶ場合、主にシステム開発をするWeb開発エンジニアを指すことが多いので、Web開発エンジニアの仕事内容について少し解説します。
業務全体のおおまかな流れは、以下の通り。なお、モバイルアプリエンジニアも基本的には同じ流れです。
- 要件定義:システムに必要な機能や仕様を決める
- 設計:システムの構造やデータベースの設計を行う
- 実装:実際にプログラミングを行い、システムを構築する
- テスト:システムが正しく動作するか確認する
要するに、「1.どんなものを作るか決めて、2.どう作るか設計して、3.実際に作って、4.動作確認する」というイメージ。
1人ですべてを担当することもありますが、実際の現場では、複数人で分担して行うことが一般的です。エンジニアのイメージが強い「プログラミング」は、「3. 実装」の部分になります。
未経験からエンジニアになる場合は、プログラミングを学ぶことがほぼ必須です。プログラミングで何ができるのか把握していないと、そもそも要件定義も設計もできませんので。
実装の仕事内容
さらに実装の仕事は、ざっくりと次の2つに分かれます。
- フロントエンド:使う人が直接触る部分を実装する仕事
- バックエンド:システムの裏側を実装する仕事
フロントエンドは、ホームページやWebアプリの見た目や操作部分を作る仕事です。例えば、ボタンを押したときに画面が切り替わったり、入力フォームに文字を入力したりする部分を実装します。
バックエンドは、システムの裏側で動く部分を作る仕事です。例えば、ユーザー情報を保存したり、商品の在庫を管理したり、注文処理を行ったりする部分を実装します。
実際の業務では、フロントエンドとバックエンドの両方を担当することもありますし、どちらか一方に特化して担当することもあります。
担当は分かれているものの、プログラミング言語や実装手法は似ていることが多いので、1つの分野を経験すれば、もう一方も比較的理解しやすいです。実際に僕は、Web制作から初めて、フロントエンドとバックエンドの両方を担当することになりましたが、業務はこなせていますので。
ちなみに、Web制作の場合は、主にフロントエンドの実装が中心になります。
ITエンジニアの仕事は思っているより難しくない
ITエンジニアと聞くと、「なんだか難しそうだなぁ…」と思うかもしれませんが、実際は思っているより難しくありません。
いや、確かに最初は難しいんですが、やっていくうちに「結局これ、同じことをしているな」みたいなことも結構出てきますので。
開発を一度でもやるとコツが分かる
おそらく、最初に「壁を超えたな」と感じるのは、イチから自分で開発業務を経験したときだと思います。
基礎学習をしている時は分かったつもりでも、いざ実際に自分で開発をやってみると、「あれ?ここどうやるんだっけ?」となることが少なくありません。ただ、1回でも開発を経験すれば、次からは「ああ、こうやるんだな」と何となくのコツが分かります。
僕が最初に実務で開発を経験したのは、会社でスマホアプリの開発をゼロから作ったときでした。元々Web制作からのスタートだったので、多少プログラミング学習はしたものの、ガッツリと開発業務をするのは初めてでした。
使用する言語も初めてだったので、本屋で参考書を買ってきてそれを見たり、ネットで検索しながら、なんとか開発を進めて完成させました。このとき、「やりたいことに対して、どのようにプログラムを組めばいいか」「どういった手法があるのか」「よく出るエラーのパターンと解決方法」なんかを体系的に学べました。
ちなみに、このスマホアプリはプロトタイプで、機能も複雑でなかったものの、自分一人で完成させています。
実務未経験の人でも開発経験が積める環境で働くことができれば、すぐに慣れると思います。ほとんどの会社では、先輩や上司がフォローしてくれるはずなので。
パズルゲームが好きな人に向いている
プログラミングはパズルゲームに似ているので、パズルゲームが好きな人ならハマるはず。
| パズルゲーム | プログラミング |
|---|---|
| ルールを覚える | プログラミング言語を覚える |
| ルールを元にパズルを解く | プログラミング言語を元に実装を進める |
ほとんど、パズルゲームの「ルール」が「プログラミング」に変わっただけですね。
もちろん最初からうまくいかないと思いますが、試行錯誤しながら解いていくのが楽しい人には向いています。
補足:コミュニケーション能力も必要です
わりと勘違いされがちですが、ITエンジニアにはコミュ力も必要です。
とはいえ、営業マンのような対人スキルは不要で、相手の要望を読み取る力や自分の考えを適切に伝える力があれば十分です。
例えば、自分が実装担当で設計書で分からないことがあった場合、設計者に確認したり意図を汲み取ったりしないといけませんので。ただこのあたりは、特殊スキルというより普段の生活で鍛えられる部分も大きいので、補足として挙げました。
その他、よくある勘違いされがちなポイントは「未経験者がしがちなITエンジニアの勘違い9選|転職で後悔しないコツ」で解説しているので、気になる方はこちらもどうぞ。
ITエンジニアは稼げるけど論理的に行動すべき
ITエンジニアは、他の職種と比べて稼ぎやすいです。
実際、2024年12月時点で、全職種の平均年収426万円に対してITエンジニアの平均年収は462万円と、36万円ほど高いです。 ※出典:doda
また、年齢や転職回数などに関係なく、スキル(何ができるのか)が重視される業種なので、何歳からでもスキルを身につければ、収入アップが狙えます。
とはいえ、より稼ぐには、論理的に行動することも大切です。場合によっては、同じ業務をしていても収入が2倍近く違うこともあり得ます。
同じ仕事でも働き方で収入が変わる
ITエンジニアの働き方には、SESといって自分の会社でなく、他の会社に出向して働く形態があります。いわゆる派遣のようなスタイルです。
ただこの働き方は会社員だけでなく、フリーランスでもあります。違うのは、仕事を誰が紹介するかだけで、実際の仕事内容は同じです。

仕事を紹介してくれる会社やエージェントにマージン(手数料)を取られますが、一般的にはフリーランスの方がマージン率は低めです。
会社員の場合、クライアントからの売上のうち、だいたい50〜60%前後が額面給与になります。一方、フリーランスエージェントでは、だいたい80〜90%程度が手元に残ります。
例えば、月50万円の案件の場合、SESの会社員なら給与は月20〜30万円前後、フリーランスなら月40〜45万円前後ということです。ここから税金や社会保険料を払いますが、フリーランスの場合は経費も差し引けるので、最終的な手取りはさらに変わってきます。
このあたりの詳しい仕組みや、会社員とフリーランスそれぞれのメリット・デメリットについては、「➤ S6-03 会社員と比較!フリーランスエンジニアのメリットデメリット(作成中)」で詳しく解説しています。
単価の高い案件を狙うという考え方
もう一つ、収入を大きく変えやすいポイントが「どの領域の仕事を選ぶか」です。
例えば、同じWeb系でも、Web制作より、業務システムやWebアプリの開発案件の方が、案件の月単価が高くなりやすいです。イメージ的には、Web制作で40万円前後、Web開発で60万円前後といった単価感。
僕自身、最初はWeb制作(月40万円ほど)からスタートして、業務系のWeb開発(月50万円ほど)の案件にシフトしたことで、単価のベースを上げることができました。
もちろん、Web制作でもフリーランスで月100万円以上稼ぐ人もいるので、「どちらが絶対に上」という話ではありません。同じ「収入アップ」というゴールに対して、どのような手段を取るかは人それぞれです。
収入アップの方法については、「➤ (作成中)S3-05 未経験のエンジニア転職でも稼げるけど工夫は必要ですよ」で詳しく解説していますので、気になる方はご覧ください。
Webエンジニアに向いているかどうか、まずはやってみる
「はたして自分はエンジニアに向いているのか?」
手っ取り早く確かめるには、性格診断とかよりも、まずは実際にプログラミングに触れてみることです。無料で試せる学習サイトは色々ありますが、まずは Progate(プロゲート) や ドットインストール が有名だし初心者は使いやすいです。
プログラミングは、センスより相性の方が大切です。なぜなら、転職後も多少の学習は必要だから。そのためには、プログラミングなどの技術に興味がある人の方が、合っています。
僕自身、大学時代はプログラミングの授業では落ちこぼれ。37歳まで自分には向いていないと思っていて、プログラミングなんて触ったこともない状態でした。それが、今ではフリーランスエンジニアですから。
実際に学習を始めてみると、意外と理解できるし、やっていく内に段々と楽しくなってきました。
食わず嫌いにならず、まずは試してみると、新しい世界が開けるかもしれません。
