いろいろな仕事を渡り歩き、今はインフラ系エンジニアをやっている。いろんな業種からの視点も交えてコラムを綴らせていただきます。

フルスタックエンジニアなんて目指す必要は無い

»

フルスタックエンジニアというスタイル

フルスタックエンジニアと言っても色々定義があるようだ。私の認識する範囲で言うなら、要は何でもできるITエンジニアだと考えている。DBとかサーバ、ネットワーク、要件定義から開発までまとめて面倒を見ることのできるエンジニアだ。現場にいたらヒーローだろう。

ただ、普通にサーバエンジニアをやるだけでも相応の努力は必要だ。それに加えて、開発やらネットワーク、要件定義までやるとすれば、誰もが簡単になれるものでもない。どこかの分野を一つ極めるだけでも大変なのに、複数の分野をこなすとなれば、多くの努力や資質が求められる。実現できたら、なかなか凄いと思う。

とは言っても、フルスタックエンジニアが万能かといえばそうでもない。ナイフで言うなら十得ナイフみたいなものだ。栓抜きやら缶切り、ドライバーがコンパクトにまとまっているので、非常に便利だ。だが、役に立つのは特定の状況でしか役に立たない。

実際、フルスタックエンジニアと言われるレベルの人に、簡単過ぎるタスクばかり振っていても、その真価を発揮することはできない。それぞれのキャパシティに合ったタスクを振られてこそ、エンジニアは実力を発揮する。フルスタックエンジニアはスタイルの一つでしかない。

スキルは必要なものがあれば十分だ

フルスタックエンジニアを目指す人の理由は、大概が履歴だろう。フルスタックエンジニアを目指していても、転職やらキャリアアップに成功した段階で目的を達してしまう。そこで努力する理由がなくなってしまう。なので、その先の努力ができなくなってしまう。実際にフルスタックエンジニアになっちゃう人の経緯は、必要に迫られてが大半だ。

実際にどれだけ役に立つかといえば、フルスタックでなくても、専門分野に特化していれば十分役に立つ。何でもこなせるより、目の前の課題をこなせることの方が重要だ。スキルの幅は、こなせる課題の種類だ。多くの課題に対応できるのはアドバンテージだが、目的がはっきりしている場合、スキルの幅は要求されない。

能力の高い人が活躍できるのは、高い能力が求められた時だけだ。世の中には大した能力を求められない仕事だってたくさんある。むしろ、そういう仕事の方が多い。確かに、高い能力が求められる仕事の方が稼げるかもしれないが、その分競争も過酷だ。そういう立場にたったとして、充実感や達成感を満喫できるかというと、話は別だ。

自分の目指すべきものや、やりたいことがはっきりしているなら、わざわざフルスタックエンジニアなんて目指さなくてもいいと思う。悪い言い方をすれば、フルスタックエンジニアというのは、究極のモラトリアムなのかもしれない。単に優れたいと漠然と考えていると、フルスタックっぽくなる傾向はある。

技術は目的達成のための手段

ITを何らか役に立てたいと思うなら、ITを活用する目的が必要になる。そもそも、目的が無ければどういうスキルが必要か判断がつかない。また、技術を身につけたとして、目的に対して技術を最適化することができない。自己アピールのために資格取得に走ると、こういうところが抜けて、知識があるのにぱっとしない人になりがちだ。

では、どうやって目的というのを見つければいいのだろうか。これは、IT以外の分野に携わってみることで、簡単に見つけることができる。何かWebでサービスを展開するにしても、アプリケーションを開発するにしても、何にどう使えば便利になるか。そういうアイディアがあって初めて形にしていける。

本当に必要なのは、ITオンリーでナンバーワンではなく、IT・プラス・ワンだ。そういった、ITのスキルと何らかの専門分野を持ち合わせたエンジニアこそ、自分のスキルをフルに活用できるのではないだろうか。そういうITプラス別分野の技術を持つエンジニアを、マルチスタックエンジニアと個人的に呼んでいる。

エンジニアにどれだけの技術が必要とされるか。それは、自分の専門分野で役に立つだけのIT系のスキルがあれば十分だ。ITを活用することで、自分の専門分野でもアドバンテージがある。目的と手段が一致すれば最大の効果が上がる。何でもかんでもがむしゃらに勉強してフルスタックエンジニアになるよりは、現実的だと思う。

ITエンジニアのあり方

意識が高いと言われるエンジニアを見ると、何故だか最新の技術ばかり追いかける。最新というのはインパクトはあるが、流行に大きく左右される。追い求めるのは楽しいが、意外と現場で必要とされることは少ない。本当に最先端を行くにはかなりの努力を要するが、最先端の一歩下がったところなら、キャッチアップするのはさほど難しくない。技術の追いかけ方というのは、思いつきで追いかけると思いもよらず多くの労力がかかる。

意識の高いエンジニアなら、そういうモチベーションを維持できるかもしれない。だが、大抵の人は途中で脱落する。ましてや、ITにあまり関心の無い人は尚更だ。ITの最先端を追いかける人と、ITに関心の無い人の感覚の差は大きくなる。最先端を追いかけるのもいいが、こういう差を埋めるアプローチをする人はもっといてもいいと思う。それができるのは、フルスタックエンジニアよりも、ITプラス別分野の技術を持つマルチスタックなエンジニアの方が適している。

プログラミングですさまじいコーディング力を発揮するもよし。インフラでもプログラミングでもこなせるもよし。ITに関わらず、話術と組み合わせてセールスエンジニアとして活躍するもよし。活躍するにしても、いろいろなスタイルがある。単にスキルの高さだけでなく、活躍の幅について、もっと検討されてもよいのではないだろうか。

特に日本人というのは、ITエンジニアに対しての偏見が強いと思う。ITエンジニアが活躍するには、もっといろいろなエンジニアのタイプがあった方がいい。ITなら何でも来い!というスタンスもいいが、優れたエンジニアと技術に疎い人の間を掛け持ってくれるような人も必要だ。いろいろなスタイルのエンジニアがいてこそ、本当に優れたエンジニアが活躍できる環境が整うのではないかと思う。

Comment(14)

コメント

匠=フルスタックエンジニア

記事の主張を否定するわけではなく、結論としてほぼ同じですが、真実を知ってほしくて書きます。
確かに記事に書かれているフルスタックぽい人はいますが、自分はそれをフルスタックとは呼びませんし、お客様も認めないでしょう。
私が思うフルスタックエンジニアとは匠のことです。
古来の匠はお客様に最適な作品を提供します。
私は日本人なので古来の匠を目指し、自然と全ての事柄をマスターしました。
「お客様に最適な作品を提供する」
我々日本人にこれ以上の真実はないかと思います。
無理に目指す必要はありませんし、全ての人がそうでなくても良いでしょう。
現に江戸時代は、部分特化した匠が沢山活躍しておりました。
ITエンジニアやフルスタックなどといった海外の言葉に惑わされず、日本古来の精神を貫くのがよいかと思います。
すなわち、海外から押し付けられた定義ではなく、日本の歴史から再定義しなおす必要があるということです。

ばずわーど

エンジニアという表現をするからおかしなことになるんじゃないでしょうかね。
世の中いろんな業種にエンジニアはいますが、大抵は技術者と呼びますからね。


溶接技術者、精密機械技術者、原子力技術者、建設技術者、電気技術者、繊維技術者…
これらを○○エンジニアと呼ぶと、違和感しかありません。
確かに英訳すればエンジニアにはなるんですが、どうにも違和感しかないですね。
軽いというか、浅く見えます。カタカナになるからですかね。


カタカナ語は、漢字や古来からある和語に直してみると
その意味や実態が分かりやすくなることが多いです。


エンジニア⇒技術者
ITエンジニア⇒情報技術者
フルスタックエンジニア⇒全方位技術者??


建設も、原子力も、精密機械も、プラントも、ITもすべてできる技術者ってことですか?
そんなのいないですよ。何を求めてるのか意味不明。


ネット界隈で使われている意味でのフルスタックエンジニアというバズワードは
IT業界の中の単なる内輪語に過ぎないわけですね。他業種の人には意味が通じません。
視野の狭さが浮き彫りになる言葉ですなw


リアルの一般社会でこんな意味不明のことを口にしようもんなら、失笑モノですね。
非ITの顧客から信頼なくしますよ。

Anubis

> ばずわーど さん


・・・初っぱなから話聞いてないな。
コラムの一番始めに「フルスタックエンジニアと言っても色々定義があるようだ。」と書いた上で、話を進める上で定義してるだろう。勝手に話を膨らませて暴走しないでください。みっともない。


> リアルの一般社会でこんな意味不明のことを口にしようもんなら、失笑モノですね。
この言葉、あなたにそのまま返す。今、私は失笑している。顔洗って出直してください。

通りすがり

争いは同じレベルの者同士でしか。。。

Anubis

> 通りすがり
争いでは無いですよ。一方的な排斥です。
失礼な方にはキッチリ物申して、今後のコメントを遠慮頂いています。

匿名

>争いでは無いですよ。一方的な排斥です。
そんな意識なら万人にさらされる場所でコラム書きなさんな。
そんな料簡だから、書くことも偏っていて批判コメントが来るのだよ。

Anubis

> 匿名さん
一つ前のコメントだけ見て「排斥」という言葉のインパクトだけで言ってますね。コラムの内容はそんなのではないですよ。


以前書いたコラムでも、コメント欄でも何度も警告しています。中身も読まずに批判するなら、相応に反撃しますよと。失礼な発言にキッチリ失礼と意思表示しているだけです。本当に失礼な人だと思ったので、強い言葉を使いました。


ろくにコラムも読んでいないのに批判する人に「読んでくれてありがとう」など言う気は無い。逆に、きちんと読んだ上でコメントをくれる人に失礼だ。事実、読まずに批判する人に明確に意思表示をするようになってから、コラムをよく読んでコメントをくれる人は増えました。


>そんな料簡だから、書くことも偏っていて批判コメントが来るのだよ。

ちなみに、平凡な事書いても誰も読まないよ。そういうコラムを書いている人が「凡庸」とコメントで批判されているのを見たことがある。


・・・それでもまだ同じ事を言うかい?言いたいことがあるなら、きちんとコラム書いて返答しますよ。

匿名

>>そんな料簡だから、書くことも偏っていて批判コメントが来るのだよ。
>ちなみに、平凡な事書いても誰も読まないよ。そういうコラムを書いている人が「凡庸」とコメントで批判されているのを見たことがある。

「IT・プラス・ワン」とか結構凡庸なこと書いていると思うけど?
言っているのはそういうことでなく、妙に上から目線のこと書いて、
反対・批判は失礼と決めつける。
そういう料簡がだめだと言っているだけ。
腹が立つなら無視すればいい。
変に過激な言葉使うと炎上するだけだぞ、staticおじさんみたいに。

Anubis

> 「IT・プラス・ワン」
知らん。要は、どんな内容書こうが批判する人は批判するということだ。


> 言っているのはそういうことでなく、妙に上から目線のこと書いて、
> 反対・批判は失礼と決めつける。そういう料簡がだめだと言っているだけ。


読まずに批判するのは失礼以外の何者でもないと思うのだが。あと、ばずわーどさんのコメントの最後には、私に対する蔑みの一言が入っています。あれは普通に考えてNGだ。


ああいうコメントは人を傷つける。なので、ネットに書き込みをして欲しくない。だから、強い言葉で迷惑だとはっきり表現した。


あなたのコメントもコラムの内容については言及していません。一部のコメントだけ見て感想を述べて言いたいこと言ってるだけです。失礼じゃないですかね?逆の立場なら、あなたは必ず怒ります。


ただ、強い言葉を使った事に憤りを感じていると思うので、コミュニケーションを取る努力はしているつもりです。無視をしないのはそういう理由です。それでも上から目線と言うのでしょうか?


あなたにも私の知らない素晴らしいところが色々あると思います。失礼だからといって、あなたのもつ全てを否定するつもりはありません。ただ、迷惑です。これ以上コメントは書かないようお願いします。

匿名

目指す人は、目指した方がよい
必要ないではなく、現実的に目指す志の人が少ないだけ
フルスタックエンジニアは、いたほうがより良い

Anubis

本当にフススタックエンジニアやってる人は、
いちいち私の小言など耳を貸さずに自分のやるべきことに邁進している。

マキロン

マルチスタックエンジニア、悪くないと思います。
自分のことはWebエンジニアと表現することが多い私です。
もとは、食いっぱぐれないために幅広い案件需要に適応できることを目指していました。
結果として、Web関連のフルスタックエンジニア、と呼べるようなキャリア構築を目指してきました。


他業種からの転職組で、エンジニア歴は約7年になります。
その他大勢と比較すれば確かに抜きん出てきたものの、本当に役に立って、役に立った分しっかりお金が欲しいと考えるようになりました。
そうすると、フルスタックって、「スキルの全部入り」ではなく、「数あるスキルの中の一つ」に過ぎないような感覚に陥ってきています。
なんでも対応できますよという「安心感の提供」がメインで、実務については、都度担当した内容を専門にやってきた人には大分見劣ってしまいます。


そうすると、フルスタックとはそもそも「フルスタック感」を誇張した言い方に過ぎないのかなと。
専門家に見劣りするスキルの集合体でどこまでお客様の期待に応えられるか、真に価値を創造できるかというと、名前負けしてるように思えてしまう。
ただし、複数のスキルを同時に求められたとすれば、そこは相応の価値がありそうですが。


難しいです・・・
マルチスタックと聞いたときに、ようは、フルスタックほど手広い必要はないが、複数の関連分野で高い知見を持つことは大いに有益だという印象を受けました。
バランス感覚と申しますか、全てに手を出すのではなく、強く関連する分野を見極めて磨いていくやり方でしょうか。
ただ、おっしゃられていることはもう少し深いところにあるのかなとも思いました。
「差を埋めるアプローチ」というのが、今ひとつわかりませんでした。
どのようなアプローチと比較しての違いなのか、もう少し説明いただけますと幸いです。

Anubis

>マキロン さん
差を埋めるアプローチとは、ITに関心の無い人とITに長けた人の間を埋めるアプローチです。


スキルを個人で何ができると言う見方で見ると、成り立たない考え方だと思う。
ITに長けた人が十人いたとして、ITに関心の無い人との距離が縮まるかと言うと、それは無いと思う。


ITに関心の無い人との距離を縮めるには、技術的ではなく別のものだと考えています。

マキロン

補足ありがとうございます。


ITに関心の無い人との距離を縮めようという発想を持てたり、行動できたりできれば素晴らしいなと思いました。


スキルを磨くにあたって、お客様に対しては最上の価値の提供の為と大義もあるのですが、こと同業者に対しては原則ライバル意識が強いです。
結果として、ITへの関心が低く、努力も少ない人には負けたくないですし、馬鹿にしています。


ただ、それが同じチームのメンバーの場合は、チームを盛り上げたい思いから持てるスキルの出し惜しみは考えもしませんし、結果として距離が縮まるようなことに前向きになっているつもりです。
もっと自信があれば、このように限定的な状況でなくてもやってしまうのではないかと、考えさせられました。


実は今転職やフリーランスへの転向を考えており、何を武器に評価を得たり稼いだりできるか見直しております。
Anubisさんの芯のある文体に説得力を感じ、とても参考になりました。
ありがとうございました。

コメントを投稿する