webエンジニアとは?

私はときどきアパートの大家さんの会合に出るのですが自己紹介する際に、

「本業はwebエンジニアやってます!」

と言うことがあります。

すると、「webデザイナー」と勘違いされることが多いです。

MEMO
特に50歳代後半の方だと全く裏側の仕組みを理解されていないようで、
どうやらwebはデザインさえすれば検索も買い物もメッセージ投稿もすべてできてしまうと認識されているように私は思います。

なので、後日「うちのHP作ってよ〜」みたいなことも時々あるのですが、

私のようなサーバーサイドの人間には難しくお断りするのですが、

「なんだよケチ〜」みたいな反応されてしまいます。

というわけで、今回は「webエンジニア」について書きたいと思います。

webエンジニアとは

主にWEBサービスを開発・運用に関わるエンジニアだと思っています。

会社員の方なら自社、フリーランスやSESの方なら客先のWEBサービスに関わっていらっしゃると思います。

そして会社の組織なのでチーム内に非エンジニアも居たりするとは思いますが、

わかりやすく今回はwebサービスに関するプログラムの実装までやる人間を「webエンジニア」と定義します。

そして「webエンジニア」の役割を「フロントエンド」、「サーバーサイド」、「インフラ」の3つに分けた体制を取っている企業が多いと私は思います。

MEMO
大企業になると「部署のエンジニア」以外に「会社全体の部署を横断的に関わるエンジニア」もいますが、今回は割愛させていただきます。

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

WEBブラウザで見る画面の見た目に関わる処理を実装する人です。

言語で言うと主にjavascript、css、htmlを触る人だと思います。

webデザイナーさんが作ったデザインを元にコーディングを行います。

サーバーサイドエンジニア

こちらを一言でいうと裏側の処理を実装する人です。

サーバー側で動くプログラム(PHP,Ruby,Python,Java,その他いろいろ)を扱います。

これにDBとのやり取りが必ず発生するのでSQLも加わります。

ちなみに私はサーバーサイドエンジニアです。

インフラエンジニア

こちらも企業によって様々ですが、物理・仮想のサーバーとネットワークの設計をしたり、
そのサーバーにOS(Linuxやwindowsなど)をインストールし、
そのOSで動くWEBサーバー(apache,nginxなど)やDBサーバー(MySQL,Postgresql,oracleなど)をインストールしてアプリケーションが動く土台を構築する人です。

さらにファイヤウォールを設置したり、負荷分散・冗長化を考慮してロードバランサを設置したり、DBのレプリケーションをさせたり、
サーバーの性能監視死活監視をするための仕組みを構築したり、バックアップする仕組みを作ったり、、、、、(そろそろこのへんでやめときます)。

ですが、最近はPaasやIaasといったサービスを利用することで、これらの手間の多くを省けますし、
サーバーインフラを取り扱う業務をそのまま外注している会社さんの場合は社内にインフラエンジニアをおいてないか、
サーバーサイドエンジニアが兼務している場合もあります。

どれが良いの?

これからどの方向に進みたいか相談を受けることがありますが、
基本的に好き嫌いで決めて良いと思います。

ですが、それぞれにどんな特色があるか語ります。

規模が大きい複数人で開発する場合の需要

規模が比較的大きな企業からの需要で言うと、

「サーバーサイドエンジニアですが多少フロントエンドもイジれます」

的な人が重宝されます。

ですが、私がこれまで関わった企業では例えサーバーサイドエンジニアとして採用されても、

フロント側も多少はやらされます。

ほとんどはajaxが絡むjavascriptの対応が多いですが、

酷い時はIE6対応(表示の崩れ)だけをやらされたのですが、丸2ヶ月間CSSとJSだけやってました。

規模が小さい開発の場合の需要

たとえば個人で仕事を受ける場合などだと圧倒的に「フロントエンド」でさらにWEBデザインもできる人間が仕事を取りやすいです。

言い方は悪いですが、webのことを疎い人からの依頼だと大体簡単な仕組みしか理解できてませんので、
サーバーサイドの処理は大したことがない場合が多いです。

むしろ見た目(特にスマホ対応)とかにうるさい(ていうか、それくらいしかダメ出しできない)ので、
独立して数十万の仕事を沢山こなすようなやり方で食っていきたいならフロントエンドを軸にデザインとサーバーサイドを少々触れる位がちょうど良いと思います。

インフラエンジニアを選んだ場合

私もかつてインフラエンジニアを4年程やっていたことがありますが、インフラは非常に「素直」だと思います。

アプリケーション開発のような仕様を理解する必要はないし、恐ろしく面倒なテスト工程も比較的少ないです。

また他の職種(企画する人やデザイナーなど)と比較的やり取りしなくても良いので、平穏な時間が多いほうが好きな方にはおすすめします。

ですが、障害が発生した場合は一気に忙しくなります。また時間との勝負です。

そして動いていて当たり前と思われがちなので、叱られることはあっても褒められることは少ないです。

目立ちたがり屋さんには向かないかもしれません。

まとめ

・webエンジニアは「フロントエンド」、「サーバーサイド」、「インフラ」の3つに分かれている
・複数人でこなす体制の仕事をやるなら「サーバーサイド」を軸にするのがオススメ
・独立して一人で仕事をするなら「フロントエンド」を軸にしてデザインとサーバーサイドを多少なりともできる様になっておくと良い

小ネタを少々

私はサーバーサイドエンジニアですが、時々「HPを作ってくれ」と言われます。

でも話をよく聞くと「FBのイベントページ」だったりしますw。

また、ショッピングサイトを作ってくれと言われた時に詳細を聞いてわかったのは、

「BASEでネットショップを作ってくれ」ということだったりします。

ITに疎い人は誰でもできるように作られたWEBサービスの画面をポチポチやるだけでもエンジニアに依頼してきます。

でも無下に断ると悪評が立つのでたまに引き受けるのですが、

その後「あの文字直して」、「画像を変えて」、「なんか購入できないんだけど」みたいな指示が飛んできてイラッとします。

もちろん無償でやってるからイラッとするんですけどね。。

webエンジニアやってみてよかったか???キャリア12年の私が語ります

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です