このページをご覧になっているということは「Webエンジニアってどんな仕事?」「Webエンジニアになるにはどうしたらいい?」そんな疑問を持っていることでしょう。実は「Webエンジニア」と一口に言っても、プロフェッショナルの現場では仕事の領域によって職種の名前が分かれていることがほとんどです。ここでは、Webエンジニアの仕事の領域によって分けられる職種や、それぞれの仕事の内容、未経験・初心者向けの勉強方法をご紹介。自分に合った職種、勉強方法を見つけてみてください。
「Webエンジニアとは?」を大雑把に説明すると、WebサイトやWebアプリなどの設計・開発・運用・保守におけるエンジニア業務を行う職業群のことを言います。エンジニア業務と一口に言っても、業務領域によって求められるスキルは違い、職種名自体も異なります。Webエンジニアは、「Web上で見ることができる表面側を担うクライアントサイドを担当するエンジニア」と、「Web上でみることができない裏側の設定を担うサーバーサイドを担当するエンジニア」の大きく2つに分けられます。以下それぞれについて、もう少し詳しく見ていきましょう。
クライアントサイドを担当するエンジニアは、フロントエンドエンジニアという職種名で呼ばれます。主にユーザーインターフェースと呼ばれる、Webの「見た目(画面など)」や「使い勝手(操作性など)」に関連する設計・開発・運用・保守を行います。「見た目はWebデザイナーが決めるのでは?」と思うかもしれませんが、Webデザイナーが制作したデザイン案を、WebサイトやWebアプリに実装するのはフロントエンドエンジニアの仕事です(難易度の高くない内容であればフロントエンドエンジニアの下位職種であるコーダー/マークアップエンジニアが行い、現場によってはWebデザイナーが兼務している場合もあります)。ユーザーインターフェースを実装する際には、HTML・CSS・JavaScriptなどの言語を使用します。
HTMLは、Web上に表示する文章や画像、表などの要素を書くための言語で、言語名称としてはマークアップ言語と呼ばれます。HTMLは、WebサイトやWebアプリの骨格を形成する基礎となりますが、レイアウトや文字・背景の色などの見た目の指定は得意ではないため、それ単体で構築されることはほとんどありません。シンプルなデザインでも、HTMLと以下で説明するCSSを組み合わせてWebサイトやWebアプリは作られます。
CSSは、レイアウトや文字・背景の色などの見た目を指定する言語で、言語名称としてはスタイルシート言語と呼ばれます。前項HTMLの説明で、「HTMLはレイアウトや文字・背景の色などの見た目の指定は得意ではない」と書きましたが、HTMLでも見た目の指定ができないわけではなく、インターネット黎明期にはHTMLだけで見た目を作っていたサイトも少なくありませんでした。しかし現在では、運用・保守や表示速度、SEO対策などの様々な理由から、HTMLとCSSの役割は明確に分けられています。
JavaScriptは、様々なことができるプログラミング言語で、簡単に言えば「Webページに動きをつける」ことができる言語です。例えば「トップ画像のスライド表示」「マウスカーソルを合わせた時のボタンの色変化」「エラー時のポップアップウィンドウの表示」など、これらはJavaScriptによって実現できます。
フロントエンドエンジニアの仕事の一部を担当する職種として、コーダー/マークアップエンジニアという職種もあり、初心者からフロントエンドエンジニアを目指す場合、まずはコーダー/マークアップエンジニアの技術を学ぶ必要があります。それぞれの職種の仕事内容の違いや求人例などは、以下ページでご紹介しています。
サーバーサイドを担当するエンジニアは、サーバーサイドエンジニアやバックエンドエンジニアなどの職種名で呼ばれます。ユーザーが意識しないWebサイトやWebアプリの裏側、サーバーやデータベースなどに関連する設計・開発・運用・保守を行います。普段、私たちが意識しないため仕事のイメージがわかないかもしれませんが、例えば、オンラインショッピングで商品検索や決済処理ができるのも、アクセス数が増えてもサーバーがダウンしないのも、バックエンドエンジニアの仕事のおかげです。必要な言語・スキルとしては、PHPやRubyなどのプログラミング言語、MySQLやGitなどのシステム利用スキルなどがあります。
PHPは、様々な種類の中でもシンプルで分かりやすいといわれているプログラミング言語です。PHPをより簡単に扱えるようにしたLarvavelというフレームワーク(効率よくプログラムを書くためのもの)もあり、スタートアップやベンチャー企業など、比較的新しい会社で採用されています。
Webサイトやブログサイトなどを作成する際に、最近よく利用されるWordpressというCMS(コンテンツマネジメントシステムの略称)にもPHPが利用されているため、Webサービスだけでなく幅広い種類のサイトを制作したい場合などは、こちらのPHPを選ぶほうがよいでしょう。
PHPと同じように分かりやすく、書いていて楽しいことをコンセプトに開発されたプログラミング言語です。こちらも初心者によくおすすめされる言語のひとつです。PHPと同じようにRubyにも、Ruby on Railsというフレームワークがあり、こちらを利用することによって、より簡単にプログラミングができるようになります。Rubyも、スタートアップやベンチャー企業など、比較的新しい会社で採用されています。
※他にもJavaやPythonなどの様々なプログラミング言語がありますが、未経験・初心者にとっての勉強のしやすさ・学んだあとの就業のしやすさから、PHPまたはRubyから学ぶことをオススメします。
MySQLは、世界でもっとも利用されているデータベース管理システムで、レンタルサーバーや検索エンジンにも使用されています。データベース管理システムを使わないWebアプリはほとんどなく、例えばTwitterやInstagramなどで過去のつぶやきや写真がキープされた状態で利用できるのは、データベース上でユーザーIDや投稿情報が紐付けられて管理されているからです。データベースと連携する必要のあるWebサイトやWebアプリに携わる上で、プログラミング言語と合わせて必須のスキルになりますので覚えておきましょう。
Gitは、プログラムのソースコードを管理するためのバージョン管理システムです。ソースコードの変更履歴を保存して、ミスを特定できたり、修正理由を確認できたりするなど、複数名でソースコードを管理する際に非常に便利なツールです。Gitは多くの企業で採用されており、バックエンドエンジニアの必須の応募要件として求められることも少なくありません。
正直なところ、未経験から独学のみでWebエンジニアを目指すのは簡単なことではありません。途中で挫折する人もかなり多いといわれています。今回、未経験からWebエンジニアになる5つの方法をご紹介しますが、かなりの根気が求められることも覚悟しておきましょう。
・プログラミング学習サイトを利用する
・専門学校、プログラミングスクールに通う
・ハローワークで申し込める職業訓練校を利用する
・求人媒体社のスキルアップ講座を利用する
・未経験・初心者歓迎の求人に応募して実務経験を積む
それぞれの詳しい内容とメリット、デメリットを以下に解説します。
未経験者・初心者の場合、まずは「ドットインストール」や「Progate」など、プログラミング学習サイト(一部無料)の利用をおすすめします。プログラミングの独学は難しいといいましたが、スクールなどに通う場合であっても、基礎的な知識を持った状態で通うほうがいいですし、そもそもスクールに通う前に自分に向いているかどうか判断することもできます。
ここまでの内容を読んで、まずはコーダー・マークアップエンジニアを目指そうと思っている方であれば「ドットインストール」や「Progate」だけでも相応のスキルが身につけられるはずです。
ドットインストールの特徴は、1つの講座が3分以内の内容にシンプルに分かりやすくまとまっていることです。意味はあまり考えず、まずは動画で説明されるコードをそのまま模写し、Web上での表示や動きを確認してみるだけで大丈夫なので、実際に手を動かしてみましょう。そうすると、なんとなくHTMLやCSSの仕組みなどが理解できるようになるので、そこから自分でちょっとしたアレンジを加えてさらに理解を深めてみてください。
またドットインストールの場合、有料会員になると、わからないことを質問できるサービスも利用できます。とても丁寧に回答してもらえるので、スクールなどに通うのが難しい場合は、ドットインストールの有料会員になって勉強するのもオススメです。
Progateの特徴は、講座の内容を見て学ぶだけではなく、学んだことを理解できているか確認する実践テストがあることです。実際に出題される問題に沿ってコードを書かないといけないので、学んだ内容が理解できているか、確認しながら進めることができます。
なおProgateは、動画形式ではなくスライド形式のコンテンツなので、説明の意味をひとつずつ理解・確認しながら勉強することができます。
どちらのサービスも一部のコンテンツは無料で受講可能で、有料プランに変更すると、全てのコンテンツを受講できるようになります。最初の基礎的な内容に関しては、無料プランの範囲内でもカバーできるので、興味のある人はぜひチェックしてみてください。
料金 | ドットインストール:月額1100円(税込) Progate:月額980円(税別) ※どちらも一部コンテンツは無料で利用可能。 |
---|---|
期間 | 個人によって異なる |
メリット | 自分のペースで学べる、無料・格安でコーディングスキルを身につけることができる |
デメリット | 実践的なスキルを身につけるには、自分でプラスαの勉強が必要 |
専門学校やプログラミングスクールに通うことで、Webエンジニアに求められる知識やスキルを効率的に勉強することができます。受講期間や費用の確保は必要ですが、挫折しにくい手段なので、選択肢に入れておきましょう。
料金 | 数万円~数十万円 |
---|---|
期間 | 数ヶ月~数年 |
メリット | 挫折しにくい、効率的に知識を身につけることができる、のちの実務に役立つスキルを同時に学べる、働きながら通える専門学校やスクールもある、求人を紹介してもらえることがある |
デメリット | 受講期間が長い、費用が高額 |
職業訓練校は、就職・転職に必要な知識やスキルを学べる国や自治体が運営している施設のことです。ハローワークから申し込みできます。ただ、自分が学びたい内容・言語などがほとんどない場合もあったりするので、自分が学びたいことや通うメリットなどをしっかりと整理し、利用するかどうか慎重に判断するようにしましょう。
料金 | 無料~数千円(補助金が支給される場合もあり) |
---|---|
期間 | 半年程度 |
メリット | 格安で受講できる、ポートフォリオ制作や転職活動に注力できる、基礎的な知識が身につく、求人を紹介してもらえることがある |
デメリット | Webエンジニアに特化した講座がない、受講要件を満たす必要がある、受講要件を満たしていても定員がある |
ハローワーク・職業訓練校について詳しく知りたい方は、以下の記事もご覧ください。
求人媒体社が用意する「スキルアップ講座」というものもあります。知識やスキルを学べるだけでなく、就職に直結する情報も得られますが、求人媒体社のスキルアップ講座も、Webエンジニアに特化したものがほぼないのが実情です。今後利用できる機会があった際は、チャンスを逃さないようにしましょう。
料金 | 無料 |
---|---|
期間 | 1日~1ヶ月 |
メリット | ほぼ無料で受講できる、転職に役立つノウハウが身につく、求人を紹介してもらえることがある |
デメリット | Webエンジニアに特化した講座がない、募集枠が不定期・限られている、求人媒体者への登録が必要、受講後の求人応募が条件の場合がある |
かなり狭き門といえますが、未経験・初心者歓迎の求人に応募する、という方法もあります。採用されれば、給与を得ながら、実戦を通じて経験・スキルを身につけることができます。しかし、未経験者歓迎の求人の場合は、スキルを求めない代わりに企業とのマッチングや志望動機が問われます。入念な面接対策が必要になるので、注意しましょう。
料金 | 無料(有給) |
---|---|
期間 | 企業によって異なる |
メリット | 収入を得ながら学べる、実務経験が積める |
デメリット | 求人数が少ない、人物評価が重視される |
未経験からWebエンジニアを目指すなら、求人媒体に登録して転職支援サービスを受けるのがおすすめです。実務未経験からでもWebエンジニアになることは可能ですが、狭き門のため求人探しは楽ではありません。転職支援サービスを利用すれば、自分の目標に向かって経験を得られる求人をプロが親身に紹介してくれます。悩みや迷いがある場合は、転職支援サービスを活用してみてください。
フロントエンドエンジニアとバックエンドエンジニア、どちらを目指すかによって必要な知識やスキルは変わってきます。並行して勉強するのは効率が悪いので、興味のある職種に絞って勉強をすすめていきましょう。プログラミング経験がまったくない方であれば、まずは「ドットインストール」や「Progate」を触ってみて、そもそも自分に向いているか確認するところからはじめてみてください。未経験から飛び込むのは簡単なことではありませんが、その分やりがいに溢れ、スキルに伴って年収が上がる職種です。未経験だからと尻込みせず、すぐにでも行動しましょう。