Webがかかわる開発案件には欠かせないWebエンジニア。今回はWebエンジニアの仕事内容や年収、将来性、そしてフリーランスのWebエンジニアが案件を獲得するためにやるべきことなどを解説します。Webエンジニアが担当できる領域は広く、スキルを積むことで高単価も狙えます。
Webエンジニアとは
Webを使ったシステムはSNSなどに限らず、業務システムなどにも広く用いられるようになりました。そこで必要とされるエンジニアがWebエンジニアです。Webエンジニアとは、インターネットを使ったサービスを提供するため、システムの構築やアプリケーションの開発などをする仕事です。インターネットを使ったサービスのことをWebサービスと言い、日常的に使われているものとしては、例えばECサイトやネットバンキング、SNS、動画視聴サイトなどがあります。
Webサービスはブラウザ上で操作されるものだけではありません。スマートフォンやタブレット上で使うアプリケーションには、それ単体で動作せずインターネットを通じてサーバーとデータのやりとりをする機能が含まれているものも多く、そういったシステムの構築もWebエンジニアの役割に含まれます。
Webエンジニアの基本的な仕事内容は?
WebエンジニアはWebサービスやアプリケーションを開発するエンジニア全般のことを指します。Webサービスやアプリケーションが処理を行う場所は、大きくWebサーバー側とブラウザ側の2つに分かれます。Webサーバー側の処理を担当するエンジニアをサーバーサイドエンジニア(バックエンドエンジニア)、ブラウザ側の処理を担当するエンジニアをフロントエンジニア(フロントエンドエンジニア)と呼んで区別することもあります。2つの領域について、もう少し詳しく見ていきましょう。
「フロントエンジニア」「サーバーサイドエンジニア」とは?
フロントエンジニアとは、WebサービスやWebを用いたアプリケーションの中でも、利用者の目に映る部分を担当するエンジニアのことです。
例えばECサイトでは、トップ画面や商品の紹介画面のほか、利用者が注文したり、クレジットカード情報や発送先住所などの個人情報を入力したりする部分についても、サイトの構成やレイアウトを担います。したがって、フロントエンジニアはWebデザインの知識も必要とされます。ただ、Webデザインはより高い専門性が求められることもありますので、画面構成やレイアウトはWebデザイナーが担当し、実際のコーディングをフロントエンジニアが担当するというケースもあります。
一方、ユーザーの目に映らないサーバー側の処理を担当するのがサーバーサイドエンジニアです。先程と同様にECサイトを例にとると、商品のデータベースから利用者が検索した商品を探し出したり、商品の在庫数を計算したりする処理は基本的にサーバー側で行われるため、サーバーサイドエンジニアが担当する処理となります。その他、利用者の目に映らない処理は多くあります。利用者の会員情報から購入履歴を抽出したり、購入代金引き落としのために金融機関やクレジットカード会社と連携したりする機能など、サービスの目的によってさまざまな処理が必要です。
このようにサーバーサイドエンジニアが担当する仕事は多岐にわたるため、データベースを専門とするデータベースエンジニア、ネットワークを専門とするネットワークエンジニアなど、専門によって細かく分かれることもあります。
Webエンジニアが開発するシステムにはどんなものがある?
インターネット(Web)を使ったシステム全般が考えられますが、オープンなシステムとしてはECサイトやSNS、動画の配信サービスなどが挙げられます。また利用者が限定されるクローズドなシステムとして、企業の勤怠管理システムや、経費精算システムなどもあります。インターネットを使ったサービスは非常に幅広い分野で展開されているため、開発するシステムの種類は膨大な数となります。
Webエンジニアの年収と将来性
Webを利用したサービスはあらゆるところで提供されています。経済産業省の調査によると、主にWebエンジニアが多く携わるであろうインターネット付随サービス業の売上高は、5年連続の増加というデータがまとめられています。(参考)したがって、すぐにWebエンジニアの仕事が尽きることは考えづらく、将来性は高いと考えてよいでしょう。ここではWebエンジニアの年収や将来の需要について解説します。
Webエンジニアの参考年収は?
Webエンジニアの年収は400~500万円が平均的ですが、最低年収、最高年収はそれぞれ200万円、1,000万円と、エンジニアとしてのスキルや経験、働き方などによって大きな開きがあります。キャリアを重ねていくことで高年収も十分に狙える仕事だと言えます。
Webエンジニアのキャリアパスは?
Webを扱う仕事である以上、まず最低限HTMLとCSSは押さえておく必要があります。HTMLとCSSの2つはWebサイトを動作させるために最低限必要な知識のため、サーバー側の処理を扱うエンジニアでも理解しておかなければいけません。
HTMLとCSSを押さえたら、サーバーサイドエンジニア、フロントエンジニアのいずれかを選ぶことになりますが、デザインやホームページ作りが得意、もしくは興味があるという方、変化がすぐに目で見て分かるのが楽しいと思う方はフロントエンジニアの方が向いています。利用者の目に映り、実際に使われる画面を作り込む仕事です。
Webエンジニア以外の領域でエンジニアをしていた方や、ネットワーク、データベースなどに興味がある方、複雑なHTMLやCSSよりも1行ずつロジックを組み立てるほうが楽しいと思う方はサーバーサイドエンジニアが向いています。提供するWebサービスやアプリケーションの機能を作り込むといった業務をすることとなります。
キャリアパスの例として、ひとつは、Webエンジニアとしてのキャリアを積みながら、Webシステム開発を専門とするシステムエンジニアやデータベースエンジニア、ネットワークエンジニアになるなど、専門分野を追求していくというケースが考えられます。
またフロント・サーバサイドのいずれも担当できるフルスタックエンジニアの求人も多いため、どちらかにこだわらず経験を積み、Web領域全体を極めていくキャリアパスもあります。
さらにエンジニアとしての専門知識に加えて、課題発見・解決能力や提案能力などを磨いて、Webシステム開発のマネージャーやアナリスト、コンサルタントというキャリアパスもあります。
Webエンジニアの需要は今後どうなる?
Webエンジニアの需要が減ることは考えにくく、増える一方だと言えそうです。毎日のように新しいビジネスが生まれ、それに伴うWebサービスが開発されています。Web化されていないシステムやアプリケーションがWeb化されるときにもWebエンジニアが活躍します。また、すでに展開されているWebサービスやアプリケーションについても、改修やさらなる展開を控えているため、Webエンジニアが活躍する場面は今後も増えていくでしょう。
フリーランスWebエンジニアの案件獲得方法
フリーランスとしてWebエンジニアの案件を獲得するにはどうしたらよいでしょうか。案件の探し方や事前に準備しておくこと、そして実際の案件獲得までの流れを解説します。
Webエンジニアの案件を探すには?
案件を探すためにはまず、自分自身のWebエンジニアとしてのスキルを明確にしなければいけません。自分が持っているスキルを紙に書き出すなど、スキルを棚卸しして、客観的に考えましょう。また未経験の場合は初心者でも取り組める案件を、労力を惜しまず探す努力が必要です。自分で何かWebサービスやWebサイトを作って、ポートフォリオを充実させても良いでしょう。案件探しにはエージェントやツテを使うことも有効です。
自分のスキルを把握して初めて、どんな案件を獲りにいけるのか、報酬レンジはどのくらいかなどが見えてきます。
Webエンジニアの案件獲得に必要な準備は?
特にフリーランスの場合、自分の実績やスキルを客観的に知ってもらわなければいけません。そのため職務経歴書を準備することをおすすめします。職務経歴書を作りながら、前述したとおり自分の経験やスキルを棚卸しして、自分のスキルを把握してもよいでしょう。SNSやブログなどを通じて、自分の実力をアピールすることも大切です。
また、特にフロントエンジニアとしての案件こなしていきたいと考えているのであればポートフォリオを準備することが望ましいです。
Webエンジニアの案件獲得までの流れは?
エージェントから職務経歴書や履歴書、もしくはスキルシートやポートフォリオなどの書類を求められます。これら必要な書類を準備して、面談して契約に至るという流れが一般的です。またSNSやブログを通してリアルなコミュニケーションでWebエンジニアとして自分のことを知ってもらうのも大切です。このようなアピールによって受注しやすくなることがあります。
フリーランスWebエンジニアの案件の特徴
フリーランスWebエンジニアが携わる業務の内容やプログラミング言語、経験、求められる能力などを解説します。
携わる職務・業務内容は?
業務内容は、ECサイトのサーバーサイド構築、人工知能や機械学習を利用したソリューション提案、医療系企業向け業務支援システムなど、分野が非常に幅広いことが特徴です。つまり今まで培ってきた経験・知見を活かせる職務や業務は必ずあると考えて差し支えないでしょう。
また、フロントエンジニア、サーバーサイドエンジニアとしてさまざまな分野から、エンジニアとしての総合的なスキルを要求されているのが現状です。何かひとつのスキルがあれば案件を取得しやすい、といったことはありません。
フリーランスが求められる局面はさまざまですが、社内に詳しい人がいないという状況や体制強化のための人員補充といったシチュエーションで、フリーランスは重宝されます。このため即戦力として期待されているケースが多いです。
求められるプログラミング言語の知識やスキルは?
Webエンジニアはインターネットを使ったサービスだけでなく、スマートフォンやタブレットのアプリケーションの開発でも必要とされます。そのため求められるプログラミングの知識やスキルは案件によってさまざまです。
システム開発案件ではサーバーサイドエンジニアとしてはApache、NginxなどのWebサーバーや、PHP、Java、Ruby、Python等の言語やフレームワークについて、データベース、セキュリティについてなど幅広い知識が求められる傾向にあります。またフロントエンジニアはJavaScriptと関連するフレームワーク(Vue.js、Node.jsなど)が求められることが多いため、最低限押さえておきたい言語です。
またサーバーサイドエンジニア、フロントエンジニアの一方に偏らず、どちらのスキルも兼ね備えているフルスタックエンジニアが求められることも多いため、領域にこだわらずスキルを高めておくとよいでしょう。案件の内容によって適切な言語やデータベース、サーバーのスペックを選定し、システムを設計できるスキルも重要です。
どのような開発環境での経験が必要?
開発環境は案件ごとに指定されるケースが多く、指定された開発環境を使った経験があると優遇されます。例えばECサイトでは、EC-CUBEやEC-CUBE2などメジャーなECサイト構築パッケージの経験が求められることがあります。
また仮想環境やクラウドを用いた開発環境を使っている企業も増えており、DockerやAWS、GitHubなどは押さえておきたいところです。
専門的スキル以外に必要な能力は?
案件によりますが、プログラマーやエンジニアをまとめるマネージャーの立場であれば、マネジメントや課題発見・解決能力が求められます。またプロジェクトへの提案能力やコミュニケーション能力など、ビジネスパーソンとしてのスキルが求められるケースも多いです。
稼働時間や契約期間の長さは?
基本的に常駐型が多いため、稼働時間は会社の業務時間に合わせて10:00〜19:00など指定されているケースが大半です。残業時間もあらかじめ20〜40時間と提示されているケースがあります。
単価の相場はどのくらい?
単価は月40万円〜125万円と、かなり幅があります。また最終的な報酬は「スキル見合い」とされており、職務経歴書やポートフォリオ、履歴書など客観的にスキルを判断できる資料と面接の結果が重視されます。
単価が月60万円を超えるとプロジェクトリーダーの補佐やプロジェクトリーダー、プロジェクトマネージャーなど現場を仕切る立場でプロジェクトに参画するケースが多いです。
開発担当者や手順書、運用書類作成など一般的なエンジニア業務では月40万円〜60万円程度が相場となります。
まとめ
Webエンジニアは、Webサービスやアプリケーションの開発を中心に行うエンジニアです。あらゆる業界で必要とされており、やりがいの大きな仕事です。エージェントに相談して案件を探し、思い描くキャリアへ進んでください。マネジメントスキルなどITの専門分野以外のスキルも持つことで、高い単価の案件も狙えるでしょう。