始めに
こんにちは〜まんじです!
今回はウェブエンジニアの仕事しててつらいところというかきついところらへん8選!!を列挙してみたいと思います。
個人的につらいナーと強めに感じてるのはここらへんです。
- 勉強するのがだるいというかシンプルにめんどい
- バグらせた時が責任感的につらい
- 納期が短い時とかが普通につらい
- ハマったとき(思った通り動かないなど)が普通にいつもきつい
- 実力が時間に比例しすぎてつらい
- ハッスルが終わらないのがつらい
- 実力主義がまあまあつらい(?)
- 外に出なくていいのが逆につらい
大体この記事に書いてることと同じなんですけど、、、
きついっぽいネガティブな感情を思い出しながら今回は書いてみます。
自分は仕事してる時にまあまあネガティブな気持ちになることが多いです。
1個目: 勉強するのがだるいというかシンプルにめんどい
(画像の文字が多い)
これは他の記事でも散々書いてるんですけど、ウェブエンジニアの仕事の多分きついところランキング1位に輝くのが「勉強」だと思います。
勉強というか厳密には業務に必要な知識とか周辺技術のキャッチアップ作業なんですけど、個人的にこれが普通にめんどくさくてつらいと感じてます。
ここまでやったら終わりってわけじゃなくて、基本的にどこかしらは網羅しきれない範囲が常にあるので、その存在を常に意識しないといけないのが結構しぶいです。
例えば自分だったらフロントエンドメインのReactを使ってるんですけど、Reactのバージョンどんどん上がってなんか新しい機能っぽいやつ増えてくるし、フレームワークのNext.jsも書き方変わっていくし「やめろおおおおお」って感じな気持ちになります。
そういうアップデートして変わっていってしまうものもあれば、シンプルに自分自身の勉強不足で足りない部分もあったりします。
例えば、フロントエンドやってるけどSQLが苦手でちょいちょいバックエンドの処理がサクサク理解して修正やら実装ができないとかそういう部分とかAWSとか知らんがな!みたいなやつ。
そんでもってコンピューターサイエンスとアルゴリズムとかそういう本当の基本みたいなところも抑えられたほうが当然良いわけなので、ほとんどの人にとって勉強が終わりません。
裏を返すと勉強しまくって真面目に仕事してソフト面も少しイケてる感じになると、そこそこ有名で良い会社で無難にサラリーマンでの高収入レンジの再現性は高いなと感じます。
なんにせよ勉強はつらいというか、めんどいというか、渋いというか、、、そういう感情が発生することはちょいちょいあります。
あとはこれやればもうちょい技術力伸びるヨナーみたいなのが常に見えます。
自分だったらReactがフロントエンドでバックエンドがGoとか出現してくると、「あああ、、、Goやったほうがいい・・・けど・・・」みたいな。
とりあえず勉強がほぼ永遠に終わらないのが地味につらいところです。
と言っても2~3年ぐらいやると学習コストは下がってはきます。
2個目: バグらせた時が責任感的につらい
フロントエンドでもバックエンドでもバグの原因を作っちゃうことが誰でもあったりします。
デグレ(regression)とかもそうで、バグらせちゃうと責任感的につらいというか、人間関係的な側面というか評価的な側面でつらいです。
「おい!バグあるぞ!」
「え?バグありますか?うわ〜〜バグってます!」
「ここのコードのここがおかしいっぽいぞ!?」
ワイ「(あれ、そこおれがやったところやん…)」
バグらせた結果、自分の責任というか自分の評価が落ちる(この人のコードはバグが多いぞ!てきな)のが起こるのがつらいところです。
どんだけ注意深く動作確認とかコードの見直しをしても何かしら見落としがあってバグる時はバグります。(あとはリリース日とかの関係でそこまで気が回らないとか)
ただなんとなく気づき始めたのはバグを作っちゃう多さってのは、ある意味でそこら辺周辺のドメイン知識含めたロジックの理解や技術力の部分と慣れとかに結構関わりがあるなと最近思い始めました。
なんていうか理解度がちゃんとしてると何も考えてなくても意識が届く範囲が広がるイメージです。
とりあえず自分がバグらせてマネージャークラスが土日にPR出してHotfixしてると「あ、やっちまったぜ・・・」とメンタル状態がめちゃくちゃ悪くなります。
バグの原因をどんだけ注意しても作ってしまうのが結構つらいところです。
3個目: 納期が短い時とかが普通につらい
「この機能を1週間で実装したいよ!」みたいなデッドラインが決まってて納期がしかも短い時が結構きついです。
結構きついというか、「いやおま、量が多いぜベイベー」とか思うこともあるんですけど、基本的に労働だと上司は神なので上司が「これはいつまでに終えるんだ!」と言ったらそれが全てになります。
自分も例にもれず、そういう納期が結構タイトな時とかはやや発狂しながら実装することになってます。
ぶっちゃけ何回も経験してきてるんですけど、大体時間通りには終わらないのでそこらへんを調整したりするのが大変です。
フリーランスになってからなんですけど、自分はちょいちょい限界突破ぶちかますことも多いです。
ただこの限界突破ぶちかまして「やっぱりこいつは早いぜ!」みたいな評価になると、給料というか待遇というか周りからのリスペクト含めて向上するので、そこらへんはつらみであり、頑張るとぶちあがる瞬間でもあります。
あと付随してこういうつらさが成長に貢献したりするのが、エンジニアあるあるなのが地味につらみなのか、、、と思うことは多いです。
悲しいですけどきつい時のが成長できるのは間違いないのカナーと感じます。
とりあえず「そんなに短く納期設定しないでぇ><!!!」とは思うところです。
重めの実装かつ短納期のプロジェクトが来ると仕事してない時間とかの脳内リソースだいぶ持ってかれます。
「あれをいつまでにやって、ここはこうして、、、」みたいなことが嫌でも頭に浮かんできます。
3個目: ハマったとき(思った通り動かないなど)が普通にいつもきつい
レベル上がってくるとハマり(思ったように動かんのだが現象)は減っていくんですけど、それでも完全にはなくなりません。
特に経験の浅いところで起こりがちで、例えば自分だったらSQL付近とかで「は、おま、なんかエラー出るぞおおお」とかなって時間かかってなかなかエラー解消できなくて進まないみたいなことはわりと起こります。
これが発生すると当然タスクの進捗具合が予定より遅れるのできついというか、遅れまくってたら自分への評価が下がるのできついです。
(フリーランスじゃなくて正社員だとしても評価制度とかが大体設定されているので、そこに響いてくる)
ただハマるってことは大体理解不足とか勉強不足とか経験不足だったりするケースが大半なので、勉強しなさいのお告げの合図だったりはするのであなたは勉強しないといけないですよシグナルではあります。
しかし分かっちゃいるけど勉強をしたくない、、、というのはエンジニアのつらみです。
4個目: 実力が時間に比例しすぎてつらい
裏を返すと真面目に頑張っていれば報われやすくて再現性が高いとも言えるんですけど、プログラミングというかソフトウェア開発で仕事してると入れた時間とか量がそのまんま実力に反映されがちなので、結構そこがある意味でつらいです。
言語化するのが難しいんですけど、Aという自分なりの技とかを見つけたから一気に伸ばせるとかじゃなくて、全員ほぼ同じような技や武器やスピードで走っていてそれをいかに多くこなせるかみたいなところに最終的には落ち着く感があります。
(作業ゲーです。)
そんでもってそれを極めまくったところでアッパーは低くて、週5労働でせいぜい1000~2000万/年で日本なら1000万円ぐらいが一般人のだいぶアッパー感が否定できません。
これは雇用されて仕事というか労働をしている以上仕方がないことなんですけど、あるきっかけでスケールしたりとかそういうことを何かしら別のことをしないと起こらないのがつらいというかきついというかスキーム的な限界かなって感じます。
優秀な人はある程度したら自分でビジネス始めるかIPOに乗っかることを狙い始める人が多いです。
技術力高くするとか実装スピード早くしたりしてると、普通に忙しくなっちゃうのでそれがつらいです。
と言っても、普通に社会全体の仕事という枠で見ると十分に恵まれているほうではあることは間違いないとは思います。
収入も一般レンジより高いし、働いた分スキルがつくし実務経験年数に加算されるし、、、みたいな感じです。
5個目: ハッスルが終わらないのがつらい
IT全般というか意識高い感じになるとありがちでエンジニアにもありがちなハッスルカルチャーみたいなのが地味にきついというかつらいと感じる人は多いかなーと思います。
エンジニアやっててそこそこ優秀な感じの人たちに囲まれると基本的にみんなハッスルしてるので、自分もハッスルしてついていく必要性に迫られます。
みんなが進んで自分が進んでいないならそれは相対的に後退することを意味するので、止まることは許されません。(と言っても、別にプライベートで遊ぶとか1ヶ月はあんま勉強しないとかは全然大丈夫だけどね!)
なんていうかホワイトでプライベートと仕事を完全に切り分けて、仕事が終わったら切り替えて遊びまくろっ!っていう仕事の形態ではなくて、プライベートにも侵食してくる感は否定できません。
が、、、お金系の本を読むとプライベートに侵食してこないような仕事は総じて稼げないと書いてあったので、そう考えるといいのかも、、、という側面もあります。
ウェブエンジニアは非戦闘系なタイプの人には結構向かないなと常日頃から感じてます。
でも言うて、、、稼働時間+アベレージで毎日1時間とか勉強できれば一定の経験年数超えてきたらかなり十分なのではないか感はあります。そう考えるとそこまでつらくはないような。(どっち)
まあでもIT企業の正社員でそれなりに高い年収のレンジになるとほとんどの人は1日9~10時間とか働いてる人が多いナーってのはあります。
6個目: 実力主義がまあまあつらい(?)
裏を返すとメリットなんですけど、ウェブエンジニアはPRとかタスク進めたりしてるのを見ると実力がすぐ分かります。
なので、なんていうか、、、実力がなければ人権がなくて実力があれば人権がある界隈という表現ができます。
これが最初の頃の駆け出しシーズンはかなりつらくて、ある程度慣れてくると徐々に実力ついてきたり慣れてきて楽になってくるので、ある意味でメリットとも言えますし技術老害になるとも言えます。
個人的には「使えなければ終わる」という危機感を持ってられるのでそこはメリットに感じるものの、心の深い部分では結構つらいと感じてる気はします。
できるかできないかじゃなくて、「なにがなんでもやるしかない」みたいな状況がちょいちょい出てくるので、本当はだるいしつらくてやりたくなくてもやる必要性に迫られることは多いです。
何がなんでもやる必要性に迫られてる時に「もう稼働時間終わったからやらな〜い」みたいなタイプの人は脱落していく人が多いです。
というのが分かっているから、なんかあんまりゆる〜くできないのがエンジニアのつらみの部分です。
老害率が多めかつアットホームな職場だとそこまでこういった悩みはないんですけど、イマドキのハッスルカルチャーな人が多い会社の場合には、雑魚だと置いてかれるというか正社員だろうがフリーランスだろうがもう終わりです。
ストレスレベルはまあまあ高いです。
時間だけ仕事したら終わり!ではなくて、「これをいつまでに終えないとおれは終わりだ!しかもエラーから抜けられない!」みたいなのが定期的に出現します。
7個目: 外に出なくていいのが逆につらい
エンジニアあるあるなんですけど、プログラミングで仕事してると基本的に外に出る必要性がありません。
朝起きて適当にシャワーだの浴びて、PCつけてSlack開いて特に外に出て誰と関わるとかもなく夕方になり、、、みたいなループの日を繰り返しがちで意識的に抜け出さないといけないのが結構つらいです。
「外に出ないで家で稼げるなんてうらやま〜〜!!」みたいなことはちょいちょいあって、自分も昔そう思ってたんですけど、やってみると案外つらいというかデメリットも多いと感じます。
- 外に出ることによって得られる偶然の経験が増えない
- 外にでることによって得られる偶然の出会いがない
- 部屋にばっかいると徐々に病んでくる
かと言って毎日会社に行かないといけないとかだったらそれはそれでつらいと感じる気がするので、人間って生き物は結構しぶい生き物です。。。厳密には人間というか労働がしぶいって感じでしょうか。。。
自分はインターンしてた頃はフル出社でしたけど、出社して何か経験を得たかって言われると、結構なんとも言えないところです。
セブンイレブンでバイトしてた時給930円の頃はお金はなかったけど女性との接点が多かったのでウハウハだったんですけど、エンジニアやって収入は増えたはずなのだが女性と関わることを強制される機会が減ってそこらへんが終わりました。
資本主義レベルをぶち上げるかパリピ要素が強くないとエンジニアやってるとまじで家にばっかいることになるのはつらいところかなと感じます。
まとめ
個人的に特にきついなぁ…と感じるのは実力が足りない部分の実装をしないといけなくなって勉強やら長時間労働が必要になる時カナーと思ってます。
ただ、書いた通り、裏を返すとそういうきつい時に実力(技術力)が伸びてる気がするので、ここがなんとも言えないところです。
楽にできることだけゆるくやってると負荷があんまりかからないので伸び率としては低い、、、という感じ。
ただ技術力をいくら追い求めてもある程度までしかいけないというところもしぶさではあります。
ウェブエンジニア最高だよ!ってわけでは全然ないけど、明らかに全体傾向で見ると悪くはないってのがこのサイトに一貫して書いてる自分のスタンスです。
終わりなので、良ければこいつらもぜひ!