フロントエンドエンジニアリングという業務領域
フロントエンドエンジニアの最大の使命は「デザインを実現すること」であると考えているのですが、一般にフロントエンドエンジニアのお仕事ってどこからどこまでを言うんだろう、と思いまして、ちょっと調べてみました。
ざっと検索した限りでは、(Webで言うと)クライアントサイドのエンジニアリング全般を指しているようですが、だいぶ広いなコレ、と思うわけです。
実際のところ、サーバサイドとの通信部分にあたるAjax処理とかWebSocket処理なんかはクライアント側にも書いてあるわけですが、その辺りを作ってると「これって”フロント”か?括りとしては”裏側の処理”じゃないか?」と思ったり。
ログイン周りの処理とか、場合によっては画像解析とかも含んだりとか。
あと、ソースの保守性とか拡張性とかを踏まえた設計も、フロント周りに関してはフロントエンドエンジニアが行いますよね。
それでいて、ユーザビリティ設計とかアクセシビリティとかのデザインの領域までフロントエンドエンジニアが任されたりとか。ちょっと広すぎないかと。
フロントエンドエンジニア、という言葉が出てき始めた頃は「エンドユーザの目に見える部分=フロントエンド」という括り方で、MVCとかMVWで言うところの”V(view)”の部分を作ることを言っていたと思うのですが、だいぶ意味が広がってきた感があります。
また一方で、「Webの最前線技術を追いかけてる技術者」というニュアンスも”フロントエンド”という言葉に含まれてしまってるような。
ちょっと前にフロントエンドが嫌いと言う記事がバズったけど、「フロントエンドエンジニアは激しく移り変わるWeb開発トレンドを把握できていて当然」と言う風潮があります。
フロントエンドエンジニアの仕事を大別すると、以下のような感じでしょうか。
A: 画面デザイン実装する。
B: インタラクション、及びその裏処理を作成する。
C: 最新技術を駆使して開発環境を構築し、保守・拡張をする。
これ、全部やれてる人なんて居るんでしょうかね。いや居るのは確かなんですけど、どのくらいのレベルでやれるもんなんでしょうか。
Aに絞って考えても、CSSのエキスパートとかアクセシビリティ設計者とか、いろんな種類の専門家がいる。
どうにもフロントエンドエンジニアリングの領域が広すぎて、かつ深すぎて、全容が見えないんですよね。自分の職種を説明するにあたって、フロントエンドエンジニアという言葉がどうも使いづらい。
A主体の人を「デザイン実装系フロントエンドエンジニア」と呼んだりとか、B主体の人を「クライアントサイド裏処理実装者」と呼んだりとか、細分化していかないと人のアサインとかスキルアップ計画とかに支障があるような。その辺を書き出してカテゴライズして整理しないといかんなあ、と思うのです。(誰かもうやってるかな。)
One comment on “フロントエンドエンジニアリングという業務領域”