こんにちは、サーバーサイドエンジニアのYUUKIです。
プログラミング言語は沢山あって、どれから学べばいいか迷っている方も多いと思いますが、言語には大きく2つのジャンルがあることをご存知でしょうか。
|
私はPHPが主要言語の為、サーバーサイドエンジニアという枠に入ります。このフロントエンドでいくか、サーバーサイドでいくか、という選択は、実はプログラマーとしてのキャリアを大きく決定付ける事項になります。
今回は、現役プログラマーのYUUKIが自身の経験を踏まえて、フロントエンドとサーバーサイドどちらがよいのか、メリットデメリットを比較してまとめていきます。
フロントエンドエンジニアについて
フロントエンドエンジニアとは何か、一言でいうと
「クライアント側で動く処理を担当するエンジニア」
になります。
クライアントとは、皆さんが普段見ているブラウザ(ユーザーエージェントと呼んだりします)のことで、このブラウザ側で動く処理を担当するのがフロントエンドエンジニアの役割となります。
WebデザイナーやWebコーダーという言葉もありますが、これらの職種とは少し異なります。デザイナーやコーダーは業務内容の幅が狭いのに対し、フロントエンドエンジニアはフロントエンドにまつわること全てをこなす必要があります。つまり、プログラミングに限らず、Webデザインの知識や、SEOの知識も必要とされるので、幅広い業務遂行能力が問われます。
フロントエンドで扱われる技術は流行の移り変わりが激しいです。勉強中だった技術が、習得後にいざ活用しようとしたら廃れていた、なんてこともザラです。その為、環境の変化に対応できる柔軟性が求められます。
フロントエンドはサーバーサイドに比べて目に見えやすく、直感的に扱えるという特徴があります。例えば、Webの基礎とも言えるHTMLはコーディングが直感的に行えます。一方、サーバーサイドの技術、例えばPHPで言うと、一つでも論理が違っていたり、書き方をミスっていたりするとプログラムは動かなくなってしまいます。
よって、感覚的に仕事をしたい人や、センスのある人はフロントエンドエンジニアに向いていると言えます。
サーバーサイドエンジニアついて
サーバーサイドエンジニアとは何か、一言でいうと
「サーバーサイドで動く処理を担当するエンジニア」
になります。
サーバーサイドとは、サーバー上で動いている物全てのことを指します。つまり、サーバーサイドとはクライアントから依頼を受けて裏側で動いているコンピュータ部分のことですね。このサーバーというコンピュータ側で動く処理を担当するのがサーバーサイドエンジニアの役割となります。
プログラマーという言葉もありますが、プログラマーは一般的にプログラミングだけする人のことを言います。それに比べて、サーバーサイドエンジニアはサーバー側の処理を担当するエンジニアのことを言うので、意味が異なります。
例えば、クライアント側のプログラミング言語JavaScriptのコードを書く人であれば、それはプログラマーであってサーバーサイドエンジニアではありません。一方、PHPやRubyのようなサーバーサイドで動く言語のコードを書く人であれば、それはプログラマーでもありサーバーサイドエンジニアでもあります。
フロントと比べると、サーバーサイド技術の移り変わりは激しくありません。例えば、僕が扱っているPHPなんて、25年前に登場した言語ですが、未だに現役で使われていますし今の所廃れる傾向にはありません。よって、長期的に使える技術という意味では、サーバーサイドに軍配が上がります。
サーバーサイドの技術は全てコンピュータが動かしているので、全てが論理的な構造をしています。よって、扱う人も論理的な思考力が求められます。サーバーサイドのプログラムは一つでもロジックが間違っていると動かないので、論理的な思考ができる人はサーバーサイドエンジニアに向いているでしょう。
フロントエンドとサーバーサイドの違い
ここで、両技術の違いをまとめてみます。
特徴 | フロントエンド | サーバーサイド |
難易度 | 低 | 高 |
流行 | 早い | 遅い |
年収 | 低い | 高い |
イメージ | オシャレ | 地味 |
勿論、上記は一般的な話で、中には難易度の高いフロントエンド技術もあります。
ただ、仕事として始める場合、サーバーサイドよりフロントエンドの方が容易なのは間違いないでしょう。
実際、Web制作(フロント側)からキャリアをスタートし、サーバーサイドに転向する人も多いです。ただ、だからと言ってサーバーサイド側の人間がフロントエンド側もできるかと言ったら、必ずしもそうではありません。
フロントエンドも奥が深い為、フロントエンドをちょっとかじったぐらいでフロントエンドをマスターしたとは言えないでしょう。
フロントエンドエンジニアを目指すなら
業界未経験からフロントエンドエンジニアを目指すなら、養成スクールに通うことをオススメします。
個人的には、僕もよく知っているLIGさんのデジタルハリウッドスタジオがオススメです。
現時点で上野と池袋に校舎があり、現役のプロ講師に直接指導を仰ぐ事が可能です。
また、卒業後の転職サポートも充実しています。このように、学習から転職までセットであることも魅力の一つです。
Web制作会社LIGが運営するWebデザインスクール【デジタルハリウッド STUDIO by LIG】

サーバーサイドエンジニアを目指すなら
業界未経験からサーバーサイドエンジニアを目指すなら、プログラミングスクールに通うことをオススメします。
理由は、サーバーサイドの学習は独学だと時間が掛かってしまう傾向にあるからです。実際、僕も独学で転職成功させるまで1年掛かりました。僕の周りのエンジニアも、転職成功までに1年ほど時間を掛けています。
プログラミングスクールは転職に特化した技術を習得できるようなカリキュラムが組まれているので、早い人で3ヶ月、遅くても6ヶ月で転職を成功させる事ができます。
当サイトでは、以下3つのスクールをオススメしています。いずれも転職成功率が90%以上あり、メンターが付いて質問し放題、さらにはスクール生との共同開発も行えます。カリキュラムも、僕の知っている限り現役エンジニアと同等のスキルを獲得できる内容となっています。
実際に、僕の周りもプログラミングスクールを経由して転職を成功させてる人が多いので、面談に行ってみるといいと思います。ただし、スクールによっては入校審査があるため、ある程度勉強したり、エンジニアになって将来どうなりたいかのビジョンを固めておくといいでしょう。
フロントエンドとサーバーサイドどっちがいいかまとめ
|
僕は学習当初はフロントエンドが向いているだろうな〜と思って、ずっとフロントエンドエンジニアを目指していましたが、途中からサーバーサイドを学びはじめて、結果サーバーサイドエンジニアとして転職しました。
しかし、初心者にはサーバーサイドは難しすぎて、今となってはもう少しフロントエンドで軸を固めてからサーバーサイドに移行すればよかったかな、と思っています。現在は完全にサーバーサイドの人間なので、ある程度のレベルに達してからフロント側も手を出していきたいですね。