初心者からエンジニアになる勉強方法を学ぶ

【図解】フロントエンドとバックエンドの違いをわかりやすく現役が解説

フロントエンドとバックエンドエンジニアの違いってなに?わかりやすく教えてー

 

と言う悩みを解決する記事になります。

 

記事執筆者:オザック

バックエンドエンジニア歴9年以上、年収1000万のエンジニア、オザックです!

某有名R社に勤めていた過去があり、副業を含めて関わってきたプロジェクトは20以上。

バックエンドをメインにフロントエンドもインフラも全て担当している。

 

今回は未経験者や駆け出しエンジニアの頃に訪れる、

フロントエンドとバックエンドの違い、どちらが稼げるのか?難しいのはどっち?そしてキャリアパスはどちらが良いのか?

と言う疑問に現役エンジニアが解説します。

 

オザック
実際に僕自身もWebエンジニアになりたての頃、その選択に迫られてどのように選択するのがベストか現役エンジニアの視点から説明するので最後まで確認してみてくださいね!

 

この記事を最後まで読むとやりたい方向性が見えてきて、キャリアの将来性や必要な勉強方法もわかるため、エンジニアとしてのキャリアのロードマップが見えるようになります!(3分程度で読み終わります)

 

目次

フロントエンドとバックエンドの違いを図解でわかりやすく解説

WebサイトやWebアプリを作る上でフロントエンドとバックエンドはどちらも必要な業務です。

 

フロントエンドのとバックエンドの違いは図で説明すると以下になります!

フロントエンドとバックエンドの違い

フロントエンドとバックエンドの違い
フロントエンド 記事を表示する役割
バックエンド 記事データを渡す役割

 

このような違いがあります。

 

フロントエンドはユーザが見たり触ったりする見た目の部分を開発していき、覚える必要のあるスキルはバックエンドほどは多くないです。

ただスキルのトレンドが激しいため、勉強はある程度必要になってきます。

 

バックエンドはユーザが見えない、データベースの設計構築から、画面に表示するためのデータをフロントに渡したり、ユーザが入力したデータをデータベースに保存するAPIを開発するのが主な業務になります。

必要なスキルはバックエンドの言語とある程度のインフラやフロントエンド、データベースの知識も必要になってくるため、必要なスキルの幅が広く、こちらも勉強量はそれなりに多いです。

 

フロントエンドとバックエンドはどっちが稼げるのか?業務と年収の違い

では続いてはフロントエンドとバックエンドの詳しい業務について見ていき、実際に相場でどっちが稼げるのかについて解説していきます!

 

結論としてはどっちもです!エンジニアはスキルによってかなり年収に幅があるため、どっちも稼げます!

 

フロントエンドエンジニアの業務と年収

ではまずフロントエンドエンジニアの業務と年収について解説していきます!

 

フロントエンドの業務について

フロントエンドエンジニアの主な業務はユーザの画面を開発することです。

例えば

フロントエンドエンジニアの業務と年収

 

これはエンジニア副業道場のトップ画面の一部です。

この画面はHTMLCSSというマークアップ言語で作られていて、このマークアップをしていくことがフロントエンドエンジニアの一つの仕事です。

 

またJavaScriptというプログラミング言語を使って

  • 画面にアニメーションを入れる
  • バックエンドのデータを画面に表示するためのつなぎ込み
  • (SPAの場合は)ステート管理など

などの業務もあります。

 

参考

昨今だとフロントエンドエンジニアはJavaScriptも書ける事が必須になってきていて、SPA(シングルアプリケーション)というWebサイトを構築出来ることが重要になっています。

 

フロントエンドに必要なスキルについて

まずは画面を構成するための

  • HTML
  • CSS

です。

 

参考

HTMLとCSSはマークアップ言語と言われ、プログラミング言語ではなくブラウザの画面を作るための言語になります。

 

HTMLで画面の骨組みを作る

HTMLは画面の骨組みを作ることを担います。

 

例えば

  • 表を作ったり
  • リストを作ったり
  • 画像を入れたり

などはHTMLを使って行います。

 

CSSでデザインをする

CSSはその骨組みにデザインを当てる言語になります。

例えば

  • 表の背景の色
  • フォントサイズ
  • フォントの種類
  • 表の大きさ

など、デザインをCSSはで作っていきます。

 

オザック

HTML、CSSはプログラミング言語と比べると比較的に簡単に学ぶことが出来ます。

 

HTML、CSSの効率的な勉強方法を知りたい方はこちら

【完全ガイド】独学でWebエンジニアになるロードマップを経験者解説

 

アニメーションやバックエンドにデータを送る

またもう一つの業務として、画面のアニメーションやバックエンドにデータを送る開発をするために使う技術

  • JavaScript(TypeScript)
  • (jQuery)
  • React.js
  • Vue.js

になります。

 

JavaScript(JS)は画面のアニメーションを作成したり、バックエンドにデータを送るためのフロントエンドの開発言語になります。

 

関連

そしてTypeScriptというのはJSに型というのを導入してよりプログラマーが書きやすくしたMicrosoftが開発した言語になります。

昨今はTypeScriptの方が開発運用がしやすいという点からJSの代わりに使われる言語です。

 

 

jQueryというのはJSに置き換わる一番有名なライブラリになります。

 

JSをより書きやすくして、アニメーションなどを作成しやすくしたJSライブラリと覚えておくと良いです。

参考

ただ昨今は後ほど述べるSPAが主流となっているためjQueryは殆ど使われなくなりました。

 

現在の主流であるReact.js, Vue.jsはSPAというWebサイトを作るためのJSのフレームワークです!

 

参考

SPAとは単一のWebページで出来たWebサイトで、画面遷移は一つのページを部分的に変更することで無駄な処理を省き、直ぐに切り替わるようにしているツールになります。

 

オザック
昨今ではこのTypeScriptとReactまたはVueが使えることがフロントエンドエンジニアとしては必須のスキルになっています!

 

フロントエンドの年収について

 

フロントエンドの年収は出来るスキルによって大きく異なってきます。

 

フロントエンドのスキル別年収比較
スペック 報酬額
HTML+CSSのみできる (規模にもよるが)1サイト10~30万
HTML+CSS+JS(jQuery) 300万~400万程度
HTML+CSS+JS+Vue(Nuxt) 500~800万程度、フリーランスだと80万/月も稼げるケースも有る
HTML+CSS+JS+React(Next) 600~800万程度、フリーランスだと80万/月も稼げるケースも有る
HTML+CSS+JS(TS)+React(Next) 700~1000万程度、フリーランスで100万/月も可能

※参考文献: https://technolog.jp/engineer-business-content-salary/

 

バックエンドエンジニア業務と年収

続いてはバックエンドエンジニアの業務と年収についてです。

 

バックエンドの業務について

 

バックエンドの業務はユーザに見えないシステムの裏側を開発することです!

 

主な業務

  • フロントに送るためのAPI実装
  • ユーザデータなどを保存するためのデータベース設計・構築
  • 定期的に処理をするためのバッチ実装
  • (インフラエンジニアがいる場合は不要)インフラ構築
  • (インフラエンジニアがいる場合は不要)CI/CDの構築
  • (フロントがやる場合もある)フロントエンドとAPIのつなぎこみ
  • バックエンドログ設計
  • (必要な場合)Dockerの構築
  • バックエンドの保守運用

とかなり幅広い業務があります。

 

ポイント

特徴としてはバックエンドはフロントエンドやインフラとも密接に関わる領域のため、幅広い知識が求められます。

 

バックエンドに必要なスキルについて

必要なスキル

  • バックエンド言語の習得
  • Web知識
  • RDBの設計、構築
  • (多少フロントエンドの知識・実装力)
  • (インフラ)

となります。

 

バックエンド言語の習得

バックエンドは様々あり有名なのだと

  • PHP
  • Ruby
  • Go
  • Java
  • TypeScript
  • Kotlin
  • Scala
  • Rust
  • Python

などになります。

 

その中でも特に初心者に優しいのはPHP、Ruby、Pythonになります。

 

またWebサイトを作るためのフレームワークの習得も必要です。

 

参考

フレームワークはWebサイトを作りやすくするために作られたツールで、それぞれの言語ごとに大体有名なフレームワークが存在します。

 

PHPだとLaravel、RubyだとRails、PythonだとDjangoやFastAPIなどいくつか有名なのがあります。

 

初心者に優しいバックエンド言語、フレームワークを学びたい方はこちら

効率重視!PHP/Laravelの勉強方法

Ruby/RubyOnRailsの勉強方法

Pythonとフレームワークの勉強方法

 

 

データベースの設計・構築

続いて必要なスキルはデータベースの設計・構築スキルです!

 

データベースの役割についてはこちらのイメージになります。

バックエンドの業務!データベースのやり取り

記事データがほしいとの依頼に対して、バックエンド側がデータベースに記事データを要求してデータベースが渡すというような感じです。

 

なのでデータベースとバックエンドは密接に関わるため、殆どの会社でバックエンドがデータベースを設計・構築・運用します。

 

データベースからデータを取得する言語をSQL言語といい、SQL言語はバックエンドエンジニアは基本的に書けるようにならないといけません!

 

インフラの設計・構築・運用は可能な限り学ぶと良い

続いてはインフラの設計・構築・運用です。

 

オザック
Web系で言うインフラとはサーバなど、Web配信をするための基盤のことを指します。

 

バックエンドの業務!データベースのやり取り

例えばこちらの図の

  • フロントエンドサーバ
  • バックエンドサーバ
  • データベース

はそれぞれサーバ上でプロセスが動いています。

 

そのサーバを設計・構築・運用するのもバックエンドの業務の一つとしては存在します。

 

参考

スタートアップや100人程度規模のベンチャーだとバックエンドがインフラを運用するのはよくあることですが、

大企業になってくるとインフラエンジニアと言われるインフラ専門に担う人がいたりして、バックエンドエンジニアはインフラを運用することはない場合もあります。

 

バックエンドエンジニアの勉強方法はこちらがわかりやすいです!

【経験談】バックエンドエンジニアになれる勉強法とスクールを解説

 

バックエンドの年収について

 

バックエンドもスキルによりけりなので、どの程度の年収かは人によりますが、相場で言うといかになります。

 

バックエンドのスペック別年収比較
スペック 報酬額 案件
PHP,Ruby3年程度 600~800万程度 豊富
Go3年程度 800~1200万程度 普通
Java 600~900万程度 豊富

※参考文献: ITエンジニアは将来性はある?わかりやすく業務と年収を解説

 

フロントエンドとバックエンドの将来性

オザック
フロントエンドとバックエンドの将来性は抜群にあります!

 

そもそもWebエンジニアの需要がここ10年程度はずっと右肩上がりで、未だに供給が需要を上回ることはリーマンショックのときしか無いです(参考)。

 

政府もIT人材を増やしていくため、幼少期の頃からITに触れさせる取り組みを始めています。

 

IT需要を低く見積もっても既に不足している自体なので、フロントエンドだろうとバックエンドだろうと職がなくて困るということはまず無いでしょう。

 

詳しくはこちらが参考になります!

ITエンジニアは将来性はある?現役エンジニアがエンジニア別に解説

 

フロントエンドとバックエンドどちらを選べばよいか?

どちらを選べばよいかは以下の手順で考えると良いです!

  1. 業務内容からやりたい方を選ぶ
  2. 業務内容から選べない場合
  3. キャリアパスから選ぶ

 

エンジニアの業務内容からやりたい方を選択

ずばり僕の経験からポイントはまずは業務内容からやりたい方を選ぶのが良いです!

 

オザック

理由としては単純でやりたい方がスキルが伸びやすいからです。

その方が当然やりたいことと近いので勉強が捗ります。

 

エンジニアのキャリアパスから選ぶ

続いて今だとあまり業務のイメージがつかなかったり、特にどちらにも拘りはないという人向けに、フロントエンドとバックエンドのキャリアパスから選ぶという方法をオススメします!

 

まずそれぞれの特徴を説明します。

 

フロントエンドのキャリアパス

フロントエンドはバックエンドと比較して使う言語の種類や知識の幅はあまり多くは求められませんが、技術革新のスピードがとても速いです!

 

例えば今ではSPAが主流でReact+TypeScriptが流行っています。

 

ただ1,2年くらい前までは初学者でも覚えやすいという理由でVue+JavaScriptが流行っていたりしました。

 

すぐに技術の移り変わりが速いということはそれだけ情報のキャッチアップが必要ということです!

 

オザック
フロントエンドは技術の幅は広くないが、常に新しい技術をキャッチアップしたい人向けです!

 

バックエンドのキャリアパス

バックエンドの場合はフロントと比べて知識の幅が豊富です。

 

バックエンドはポジション的にバックエンドの知識は勿論、インフラの知識、CI/CDの知識、また多少はフロントエンドの知識も必要になってきます。

 

またバックエンドは言語の種類も豊富で昨今だと、

  • PHP
  • Ruby
  • Python
  • Rust
  • TypeScript
  • Go
  • Kotlin
  • Java
  • Scala

など流行り廃りは多少ありますが、プロダクト毎に使われている言語が違うので、複数言語の経験が必要となります。

 

キャリアの特徴としてはバックエンドは立場上、テックリードやCTOになるケースが多いです。

 

理由としてはサービスのボトルネックとなるインフラ障害が起きても対応出来たり、全体のシステムのことを知っている人というとバックエンドになるからです。

 

オザック
バックエンドは知識の幅が広いのでWebの全体的な知識を増やしたい人、テックリードやCTOを目指したい人向けです!

 

フロントエンド、バックエンドの勉強方法

では最後にフロントエンド、バックエンドそれぞれの勉強方法について解説します!

 

フロントエンドの勉強方法

まずはWebサイトを作る上でマストのHTML、CSSを学びましょう!!

 

HTML、CSSの勉強は独学で出来るので効率的な勉強方法はこちらの記事が参考になります!

独学でWebエンジニアになるロードマップ!効率的な学習方法を解説!

 

独学では挫折してしまう、、、

 

実際多くの人がエンジニアになろうとして挫折し失敗しているのが実情です。

一度でも挫折してしまうと、もう再度奮起してやるということは、精神的に難しいでしょう。

 

なので少しでも独学でやるのに不安な方はテックアカデミーのフロントエンドコースに入ることをおすすめします!

 

オザック
値段的にも17万円程度で他のスクールに比べると比較的安いです!(学割もあります)

 

値段の問題は実際エンジニアになれば余裕で元が取れます。

 

オザック
僕自身約5年程度で年収1000万までいきました。そう考えると17万というのは全然安いですね

 

このスクールの強みや学べる内容、将来的にどういう仕事につけるのかが学べます。

フロントエンドコース公式サイト

 

バックエンドの勉強方法

バックエンドエンジニアの幅広い知識を求められるため、いくつかのインフラ領域を勉強する必要がありますが、まずはバックエンドの言語を書ける様になることが当然重要です。

 

初学者向けに勉強しやすい言語はRubyとPHP、Pythonになります。

 

それぞれ特徴はありますがWeb系を目指すのであればRubyとPHPのどちらかを習得するのが良いです!

 

理由

  • 日本語ドキュメントが豊富
  • 案件が豊富
  • 動的型付け言語なので初学者でも簡単に覚えやすい
  • Webサービスを作るのに優秀なフレームワークがある

 

Webサイトを作って稼げるエンジニアになりたいという方は以下のPHP/Laravelを学ぶ方法、またはRubyOnRailsを学ぶ方法の記事を参考にしてください!効率的な勉強法が載っています。

 

【圧倒的効率】Laravelは〇〇の学習方法が確実【初心者OK】

 

独学は難しい?RubyOnRailsの勉強法を2つ解説【Udemyがおすすめ】

 

 

フロントエンドとバックエンドの違いまとめ!わかりやすく年収と業務から比較

今回はフロントエンドとバックエンドの違いについて現役エンジニアの視点を踏まえて解説しました。

 

フロントエンド、バックエンドどちらのエンジニアから始めるかと言うのは意外と難しい選択ですが、困ったらバックエンドをおすすめしています!

 

理由は

  • バックエンドは幅広い知識が求められるため
  • バックエンドでもフロントエンドの部分もある程度出来るようになる
  • 更にフロントエンドに転向してもバックエンドの知識というのはかなり活きる

からです!

 

バックエンドについて更に知りたい方はこちら

【1日30分】バックエンドエンジニアのロードマップを経験者解説

© 2024 エンジニア副業道場 Powered by AFFINGER5