いまさら教えろ「フロントエンド・エンジニア」と「バックエンド・エンジニア」って何?

フロントエンド」とバックエンド

「フロントエンド」と「バックエンド」

Web業界にいると、当然のように使われているのが「フロントエンド・エンジニア」「バックエンド・エンジニア」というエンジニアの属性分け。

しかし、IT業界未経験だったり初心者だったりすると、いきなりのこの豪勢な(?)言葉に整理がつかないかもしれません。

今回は、この2つの役割をまとめておきたいと思います。

両者のちがい

「フロントエンド・エンジニア」とは?

フロント(前方)という名のとおり、いまみなさんがご覧になっているウェブサイトの「見えている部分」を担当します。

銀行で例えるならば、「銀行のホームページ」「ATMの操作画面」「オンラインバンキングの画面」「銀行アプリ」などになります。つまり、

 

どんな使い心地・機能を持たせるか?

どんな見た目・デザインにするか?

 

と、いった役割がフロントエンドの仕事です。

Web制作で言うと「HTML/CSS」そして「JavaScript」を扱い、「画像」「動画」等のメディアを組み合わせて、WordPressなどでウェブサイトをつくっていく役割です。

アプリ(主にスマホ)開発で言うと「Objective-C」「java」でネイティブアプリ(スマホにダウンロードして使うもの)を作る役割です。

静的なコンテンツはもちろんのこと、バックエンド・エンジニアが構成したシステムやデータベースの環境に、動的なコンテンツを作成したりもします。

IT業界では、こうしてウェブサイトをご覧いただいているみなさんのことを「エンド・ユーザー」とか「クライアント」などと呼ぶことがあります。そのため、フロントエンドのことを「クライアント側」などと呼ぶことがあります。一口に「エンジニア」で、同じような開発業務に携わっていたとしても、より「目に見えやすい側」という意味で、クライアントにより近い領域を扱うのが、フロントエンド・エンジニアなのです。

フロントエンド・エンジニア

「バックエンド・エンジニア」とは?

バック(後方)という名のとおり、いまみなさんがご覧になっているサイトの「外から見えていない部分」を担当します。

再び銀行で例えるならば、「業務システム(基幹システム)」「銀行員が使う管理システム」「オンラインバンキングの裏側(仕組みの部分)」「銀行アプリの裏側(仕組みの部分)」になります。

先述した「クライアント側」に対して、クライアントに様々な仕組みを提供(serve・サーブ)する側、ということで「サーバー側」などとも呼ばれます。

バックエンド・エンジニアは、このサーバー側の「仕様や要件の定義・設計と開発」を行います。

と、言うとなんだか難しく聞こえますが、ざっくりいうと「お客さんからの『ああしたい』『こうしたい』に対して、

 

最適なハードウェアやOSを選定したり

サーバーソフトウェアを構成したり

その上で動作するシステムを開発する

 

といった仕事になります。

どれくらいのユーザー(クライアント)が使うのかを想定し、サーバーのスペック(性能)を考えていきます。さらに、仕組みとして提供しやすい、最適なOS(基本ソフト、多くの場合はサーバーOSを利用)を選定します。これらのサーバーをどのようにつなぐか、ネットワークの設計をし、サーバー側で保管するデータやコンテンツの容量を見積もってストレージ装置(ハードディスクがたくさん詰まっている装置、とお考えください)の選定と構成をしていきます。

以上の領域は、バックエンドの中でも、インフラ(インフラストラクチャ、Infrastructure=基盤)領域とされ、これらの領域を専門で扱う「インフラ・エンジニア」という職種もあります。

俗に言う「バックエンド・エンジニア」は、インフラ・エンジニアが構成したサーバー環境の上に、実際にユーザー(クライアント)が使うのに必要な仕組みの部分を設計・開発していく職種のことを指します。システム開発やアプリケーション開発(この場合のアプリとは、業務アプリケーションのことを指します)を行ないます。開発と言っても、「プログラマーとエンジニアの違い」でご説明したとおり、「設計と開発」を行なうわけなので、プログラミングだけをするのではありません。エンジニアリングとして設計を行ない、設計図に従ってモノを作るプログラミングを行なっていきます。

バックエンドエンジニア

「フロントエンド」「バックエンド」まとめ

IT業界が進展する以前は、バックエンドと言えば「飾り気のない」領域でした。かつて「ホスト」などと呼ばれた、「業務専用コンピューター」は、動作速度を早めるために見た目の良さをすべて度外視し、例えばキーボードだけで操作できるように設計されたものが多かったのです。(未だに、こうしたホスト・システムの名残は随所で見受けられます)

しかし、コンピューターは飛躍的に技術的な進化を遂げ、大容量化・高性能化が進みました。その結果、スマホは一人一台(場合によっては複数台!)の時代となり、動作速度はもちろんですが、「ユーザーの操作性」も重視されるようになりました。

そうなってくると、エンジニアとしても、フロントエンド・バックエンドの領域は融合し、バックエンド・エンジニアがユーザーの操作性(UI/UX)を意識したり、フロントエンド・エンジニアがデータベースやインフラ(基盤)部分にまで気を配る必要が出てくるようになりました。

しかし一方で、ビジネスモデルは未だにフロントエンド・バックエンドで異なります。

フロントエンドは多くの場合「Web制作」と呼ばれ、参入障壁が低いためか価格の叩き合いの様相を呈している状況です。バックエンド側の知識が必要とされるようになったにも関わらず、相変わらずコスト低減の要求ばかりが強まっているのです。

バックエンドは多くの場合「SIer(えすあいやー、システム・インテグレーターの日本的な略称表現)」と呼ばれ、大手・中小の差が歴然としています。予算規模は大きいものの、多くの現場で技術革新よりも保守的な手法が採用されがちで、なかなか旧来型の開発手法から抜けることができていません。

領域ごとに、人材の育成方法や育成の観点も異なっており、両方を見渡した人材は未だ稀有な存在です。

フロントエンド・バックエンド、どちらの領域を専門とするにしろ、ベーシックな部分は同じですが、より「見た目が変化するから、わかりやすい」という意味では、フロントエンドから勉強していくほうが、入りやすいとアクトハウスでは考えています。

そんなアクトハウスのこだわりはこちらの記事『IT留学のアクトハウスが「フロントエンド」をカリキュラムにする理由。』で詳しく解説。ぜひご覧ください。

アクトハウスは基礎から応用も学べるIT留学

アクトハウスでは、本稿で取り上げたプログラミングを、日本人メンターが少人数にきっちり教えていくIT留学。

そしてHTML、CSSといったマークアップを修得した後はフロントエンドのプログラミング言語である「JavaScript」、そしてバックエンドのプログラミング言語である「PHP」、さらにCMSコンテンツの世界的なソフトウェアである「WordPress」、さらにサーバーサイドの概念を学んでいきます。

基礎から応用、そして実践とさまざまなプログラミング技術を修得するカリキュラムを提供しています。

そして、アクトハウスはプログラミングと英語のみならず、マーケティングや財務・お金を学ぶビジネス、そしてデザインについても講座を設けているIT留学です。

こんなアクトハウスに、

「挑戦してみたいかも」

「もうちょっと具体的に知りたいな」

「すこし質問がある」

そんな方は、アクトハウスではIT留学に関する相談を毎日承っているので、お気軽にフォームLINEからご相談ください。また「IT留学説明会」も実施していますので、そちらもご利用いただけます。

新期生募集の最新情報は下記のリンクからご覧ください。

セブ島のIT留学「アクトハウス」を詳しく見る

著者:清宮 雄
「プログラミング/英語/デザイン/ビジネス」を学ぶIT留学「アクトハウス」代表。

  • このエントリーをはてなブックマークに追加

セブ島のIT留学「アクトハウス」とは?

1日の流れ

カリキュラムについて

住居について

卒業後の進路

体験談

コースと費用

スタートアップの実績

卒業後のサポート

 セブ島のIT留学「アクトハウス」とは?

すべての記事・コラムへ