フロントエンドとサーバーサイド。未経験から目指すにはどちらが良い?

こんにちは。miraiです。

今日はエンジニアの仕事について記事を書きます。

GreenなどのIT系求人サイトを見ていると、「フロントエンドエンジニア募集」「サーバーサイドエンジニア求む!」等の求人を見たことがある方は多いのではないでしょうか。

ただあまりエンジニアの業界に詳しくない未経験の人からすると、フロントエンド?サーバーサイド?って混乱してしまいますよね。

僕もWebエンジニアになる前は、フロントエンドとサーバーサイドっていう言葉についてそこまでよく理解していなかったと思います。

フロントエンドとサーバーサイド。未経験から目指すにはどちらが良い?

今回はこれからエンジニアになりたい未経験の方や、エンジニアという職業に興味がある方向けの記事になります。

現役Webエンジニアの僕が、未経験から目指すにはフロントエンドとサーバーサイドのどちらが良いか解説します。

フロントエンドとサーバーサイドの違いってなに?

まずフロントエンドとサーバーサイドの違いについて簡単に解説していきます。

フロントエンドとは?

フロントエンドとはWebアプリケーションの表側(ユーザーが操作するところ)をイメージしていただければ大丈夫です。

具体的には以下のような部分。

・サイトにアクセスした時に目に飛び込んでくるページ

・サイトの会員登録情報を行う画面

・お問い合わせフォームなどのページ

このような実際にサイトを使用するユーザー(僕らも含む)が、毎日のように目に触れている画面のこと。

つまりユーザーとの距離感が近い部分になります。

毎日スマホで目にしている部分だと思うので、エンジニア未経験の方でもイメージしやすい領域ではないでしょうか。

ちなみに今見ていただいているMiraiBlogの画面も、フロントエンドと言えます。

フロントエンドの使用言語

フロントエンドエンジニアとして働く上で、必要になってくるスキルや技術は以下になります。

・HTML

・CSS

・JavaScript

・jQuery

・PHP(できれば)

・WordPress(できれば)

フロントエンドエンジニアの仕事内容

フロントエンドエンジニアの主な仕事内容について説明します。

企業にもよりますが、フロントエンドエンジニアの仕事は以下になります。

・Webデザイナーが作成したデザインを元に、HTML・CSS・JavaScript等を用いてサイトを構築。

・既存のWebサイトをHTML・CSS・JavaScript等を用いて機能拡張・カスタマイズ

・自社サービスのユーザーインターフェイス(UI)の実装や設計。

先ほど説明した通り、ユーザーが目に触れている部分を担当するため、WebデザイナーやWebディレクターなどと密に連携を取りながら仕事を進めていくことが多いです。

またプログラミングスキルだけではなく、ユーザーが使用しやすい画面や見た目のデザインについても理解しなければいけません。

サーバーサイドとは?

サーバーサイドとはWebアプリケーションの裏側(ユーザーが意識しない部分)をイメージしていただければ大丈夫です。

例えばアプリの会員登録をした時に、自分の個人情報などをフォームに入力しますよね。

その際に入力した情報を「送信」ボタンでサーバー側に送ると思います。

ここまでは知っていると思いますが、送信ボタンを押した後のデーターの処理ってどうなっているかわかりますか?

この処理の仕組みなどを考えているのが、サーバーサイドエンジニアなんです。

サーバーサイドエンジニアは以下のような部分を担当します。

・サーバー側で動作するプログラムの開発

・サーバー環境の構築・運用

・既存システムでエラーやバグとなった箇所の修正・検証

サーバーサイドはユーザーが直接意識しない部分なので、フロントエンドよりはどんな仕事内容かイメージしづらい方も多いと思います。

しかしサーバーサイドは、Webサービスを安全・安心に稼働させるために欠かせない領域であり、大きな役割を担っています。

サーバーサイドの使用言語

サーバーサイドエンジニアとして働く上で、必要になってくるスキルや技術は以下になります。

・PHP、Python、Peal、Rubyなどのインタプリンタ言語の知識

・Java、Cなどのコンパイラ言語の知識

・MySQL、SQL Server、Oracle等のデータベース周りの知識

・フレームワークについての知識(PHPであればlaravel等)

このようにWebシステムの裏側を担うために、いろいろな知識が必要となります。

上記では複数のサーバーサイド言語を挙げましたが、未経験の人はまず興味のある言語から1つ学習してみることをオススメします。

サーバーサイドエンジニアの仕事内容

サーバーサイドエンジニアの主な仕事内容について説明します。

一般的にはサーバーサイドエンジニアの仕事は以下になります。

・ソフトウェアのインストール(新規アプリケーションの構築)

・サーバー側で動作するプログラムの開発

・データベースの処理や不正アクセスがあった際の対応

・サーバーが落ちた等のアクシデント対応

上記以外にも、経験年数に応じてさまざまな仕事を担当することになるでしょう。

フロントエンドとは異なり、システムの根底の部分を担うため、インフラ周りの知識も必要になってきます。

フロントエンドとサーバーサイド。未経験から目指すにはどちらが良いか。

全くのエンジニア未経験者が、フロントエンドとサーバーサイドどちらを目指すべきかという点について解説します。

サーバーサイドの方が、未経験者には難易度が高め

僕の個人的な意見ですが、サーバーサイドの方がフロントエンドより難易度は高めだと思います。

理由については以下にまとめます。

・コマンドプロンプトなどの黒い画面をよく使う(プログラミング初心者にとってはなかなか辛い)

・データベースやインフラ周りって結構理解するのが難しい

・普段自分が目にしない(システムの裏側)部分を扱うので、フロントエンドに比べとっつきにくい

もちろん個人差はあると思いますが、サーバーサイドについては上記のイメージがあります。

またサーバーサイドでよく使われている専門用語(非同期、Auth、バインド)もエンジニア初心者が頑張って理解しようとすると挫折してしまうと思います。

将来性については、現時点でどちらが良い等判断できない

フロントエンドとバックエンドどちらが将来性ありますか?っていう質問って多いですよね。

特にこれから就職を考えている若い世代の人は特に気になる部分だと思います。

この質問については、現時点でなんとも言えません。

10年後、20年後にWebサービスがどんな風に進化しているのか想像もつきませんし、世の中の進化や発展はとても早いので、時が経てば聞いたことのない新しい職業が誕生しているかもしれません。

ただ1つ断言できるのは、僕らが生きている間(21世紀)はずっとWebは広がり続けると思います。

つまりWebが広がり続けるということは、今回紹介したフロントエンドやバックエンドの仕事は、少し形を変えたとしてもずっと求められ続けると思います。

これらの理由から、フロントエンドとバックエンドはどちらも将来性はある思います。

まとめ:フロントエンドとサーバーサイド。自分に合う方を選ぼう。

今回はながながとフロントエンドとサーバーサイドの詳細について説明してきました。

この記事を見ても正直どっちにすべきか決められないという方は、どちらでも良いので興味のある領域について学習してみると良いですよ。

僕もいろいろ手を出して試行錯誤しながら、今Webエンジニアの仕事をしているので。

いろいろ学習してると、自分が何に向いていて何を極めていきたいのかがわかると思います。

ではまた^

コメント

タイトルとURLをコピーしました