このまま続けるのとバックエンドエンジニアに方向転換するのだとどっちの方が良いんだろう?
このような疑問に答えていきます。
早速結論です
働き方によってはバックエンドの方がやることが明確でトラブルも少なく仕事も多い
当記事の内容
-
フロントエンドエンジニアの辛いところ
-
バックエンドエンジニアのメリット、デメリット
-
フロントエンドエンジニアからバックエンドエンジニアになる方法
この記事を書いているのはこんな人
-
文系大学卒業後、専門商社へ入社
-
将来性のあるITエンジニアに興味を持ち、4ヶ月独学して開発エンジニアとして転職
-
現在はWEB系開発のプロジェクトリーダー
フロントエンドエンジニアの辛いところ
フロントエンドエンジニアの辛いところは以下かなと思います。
-
お客さんからクレームをつけられやすい
-
ブラウザやOSによって見た目が変わることがある
-
トレンドによって求められる技術が変わりやすい
順番に解説していきます。
お客さんからクレームをつけられやすい
フロントエンドエンジニアはシステムの「見た目や動き」を実装するのが仕事です。
注意ポイント
フロントエンドは実装した部分は画面として客さんの目に見えるのでお客さんが文句を言いやすいという特徴があります。
バックエンドのようにお客さんが直接見えないDB操作などではなく、使い勝手や見た目に直結するフロントエンドの実装はお客さんから「もっとこうしたい!」みたいな意見が出やすいんですね。
合意したデザイン通りに実装しても「いざ実装したら違う」と言われてしまうことがあるのがフロントエンドの辛いところの1つかなと思います。
ブラウザやOSによって見た目が変わることがある
フロントエンドの実装をしているとブラウザやOSによって見た目が違ってしまい、思った通りに実装ができない場合があります。
例えばGoogle Chromeで確認しながら実装をしたけどMicrosoft Edgeで確認したら表示が崩れてしまったりMacで実装してWindowsで表示確認をすると見た目が変わってしまうようなケースですね。
これはブラウザごとにHTMLの解釈が違ったり特定のブラウザでしか使えないCSSなどがあることが原因です。
このように実現したいことは1つなのにブラウザやOSごとに実装を変えないければいけないのはフロントエンドの面倒なことかなと思います。
ちなみにバックエンドはサーバーで使用されるlinuxというOSのことだけ考えればOKなパターンが多いので、対応OSという意味ではバックエンドの方が考えることが少ないかもですね。
トレンドによって求められる技術が変わりやすい
フロントエンドには「流行」があります。
例えば少し前まではHTMLでコーディングするのが普通でしたが2021年現在ではJavaScirptのみを使ってフロントを実装するSPAが主流になっています。
そして、SPAも数年後には違うライブラリ・フレームワークが流行っていることが考えられます。
その他にも「見た目がそろそろ古くなってきたね」みたいな感じで流行の変化により修正が必要になることがあるというのもフロントエンドの辛いところかなと思います。
フロントエンドエンジニアは常に新しい勉強が必要
ここまでフロントエンドエンジニアの辛いところを挙げてきました。
大雑把に言うとフロントエンドは時代にあったファッション性が求められるんですね。
なので勉強が嫌いな人には「常に新しい技術・トレンド」を勉強し続けれなければいけないというのは辛いことかなと思います。
バックエンドエンジニアのメリット、デメリット
「フロントエンドが辛くてバックエンドへの転身を考えている人向けに」バックエンドのメリット・デメリットも紹介してきます。
前提としてフロントエンドの方が辛くてバックエンドの方が楽ということはありません。
担当する領域が違うので、フロントエンドとはまた違う辛いところがあります。
バックエンドエンジニアのメリット
フロントエンドと比較してバックエンドの方が楽なところは以下です
-
見た目に影響しないので必要な処理ができていればそれでOK
-
OSやブラウザを考慮しなくていい
-
トレンドによる改修などが少ない
バックエンドの良いところはフロントエンドの辛いところの裏返しかなと思います。
見た目には関係ないので仕様通りの処理ができていて不具合がなければお客さんからクレームを言われることもありません。
またサーバーでよく使われるlinuxというOSで動きさえすれば良いし見た目に関係ないのでブラウザやOSによって実装を変えなければいけないということもありません。
簡単にまとめると「1つのOSで仕様通りの実装ができれば良い」というのがバックエンドのメリットかなと思います。
バックエンドエンジニアのデメリット
続いてバックエンドのデメリット(辛いところ)は以下です
-
難しくても必ず実装しなければいけない
-
セキュリティやパフォーマンス(処理スピード)を気にしなければいけない
-
インフラ系の知識も必要
バックエンドの処理のことを「ビジネスロジック」と言ったりします。
ビジネスロジックとはお客さんの仕事内容をシステム化するためのプログラムのことですね。
フロントエンドは「お客さんが使いやすいように作るのが重要」です。なので、結局使いやすければ良いのでもし設計通りの実装が難しくても別の提案をすることで難しい実装を回避することができます。
注意ポイント
ただバックエンドはどれだけ難しくてもお客さんの業務ルールを変えるわけにはいけないので、設計通りにプログラムにしなければいけません。
また、フロントエンドはさほど気にしなくても良いセキュリティやパフォーマンスのチューニングも必要です。
速度を向上させるために無駄なSQL処理がないようにプログラムを書いたり、不正なアクセスをブロックするための仕組みを作ったりする必要があります。
そしてこれらを実現するにはプログラムだけでなくサーバーやインフラへの知識も必要なんですね。
バックエンドエンジニアは新しい知識より深い知識が必要
「フロントエンドは新しい知識」が必要なのに対して「バックエンドは深い知識」が必要になります。
どちらの方が大変ということはなく、どちらも大変だし逆にどちらも違った面白さがあります。
フロントエンドエンジニアからバックエンドエンジニアになる方法
ここからはフロントエンドエンジニアが辛いなと感じている人向けの内容になります。
バックエンドエンジニアにはどのような知識が必要なのか?具体的にどのようにバックエンドエンジニアに転身するかを解説していきます。
バックエンドエンジニアに必要な知識
バックエンドエンジニアには「必須の知識」と「知ってた方がいい知識」の2つがあります。
まずは必須の知識については以下です。
※Gitなどのフロントエンドエンジニアでも知らなきゃいけない知識は省いています。
必須の知識
-
サーバーサイドプログラミング言語
-
フレームワーク
-
SQL
続いて知っておいた方がいい知識は以下です。
知ってた方がいい知識
-
Dockerや仮想環境を使った開発環境構築
-
AWSやAzureなど各種クラウドサービスに関する知識
-
サーバー(linux)に関する知識
-
セキュリティ関係
-
DBのパフォーマンスチューニング
必須の知識はバックエンドエンジニアとして「最低限できなければいけないこと」です。
知っておいた方がいい知識は「誰かがやってくれるけど、自分でできると市場価値が高くなる」ようなものです。
最低限の知識しかない人と色々知っている人だったらどちらの方が重宝されるかは明白ですよね。
なので転職やフリーランスでバックエンドエンジニアとして仕事を取るなら知っておいた方がいい知識の量が多い人の方が需要が高い人材になれます。
フロントエンドエンジニアから転職する方法
会社員として転職するなら転職エージェントを使うとスムーズに進みます。
基本的にはエージェントがあなたにあった求人を探してきてくれるので、現職を続けながら転職活動をする場合にはエージェントの利用は必須かなと思います。
その他のメリットとしては以下のようなものがあります
-
IT業界に特化しているので履歴書だけでなくスキルシートについてもアドバイスをくれる
-
希望を伝えるだけで非公開求人などをたくさん紹介してくれる
-
面接で言い忘れたことなども面接後にエージェントから伝えてくれる
-
採用が決まった後の給与交渉もエージェントがやってくれる
-
上記の全てが無料
必要な情報を入力して連絡を待つだけだし、転職自体が初めての人なら「どのような人材が市場価値が高いのか?」など気軽に質問できます。
僕が転職するときに使ったエージェントで特に良かったなと感じたエージェントは以下です。
フロントエンドとバックエンドの両方経験があると最強になれる
個人的にはバックエンドエンジニア1本に絞るのではなくフロントエンドとバックエンドの「両方ができるエンジニア」になるのがおすすめです。
理由としては単純にどっちもできる人が少ないので「需要が高い」からですね。
特に将来的にフリーランスになる予定がある人だと、両方できる方が求人の数が桁違いに多いし継続して契約を取れる可能性も高くなります。
どの業界でも同じですが「できることが少ないことをできる人の方が給料が高く需要も多い」ということですね。
まとめ
今回は「フロントエンドエンジニアが辛い」というテーマで記事を書きましたがいかがでしたでしょうか。
実際フロントエンドの方がお客様の意見やトレンド・仕様変更の影響を受けやすいという事実があります。
とはいえバックエンドの方が楽かというとそうでもありません。それぞれ違った辛さと楽しさがあるのですが「どっちもやってみて初めて分かる」というものです。
実際フロントエンドをやっていたけどバックエンドもやってみたことによって「自分のスキルの幅が広がる」というのも事実です。
なのでバックエンドエンジニアに魅力を感じいているのであれば挑戦することで今後の年収やスキルアップに繋がるのでおすすめです。
転職するなら下記のエージェントを使うとスムーズに転職活動を進められます
それぞれのエージェントの違いを知りたい人はこちらから
IT特化の転職エージェントを使うメリットの詳細を知りたい方はこちらから