こんにちは、みやびのです。

Twitterを見ているとエンジニアとかフリーランスとかめっちゃキラキラして見えるかもしれません。
誰が言い出したかよくわからないですが、楽に稼げると思っている方も多いようです。

しかし、エンジニアを10年ほどやってきた私が断言しますが、

エンジニアはめっさしんどい。

何がしんどいのか?
例えば以下の通り。

・残業が多くてめっさしんどい
・休日出勤があってめっさしんどい
・進捗がなくてめっさしんどい
・作りたいものが作れなくてめっさしんどい
・唐突に障害が起きてめっさしんどい

Twitter見ているとエンジニアになるべく勉強している方がたくさんいます。
素晴らしい志です。

しかし、エンジニアはめっさしんどいのでしっかりと調べてから目指すことをおすすめします。

本記事の内容は以下の通り。

・エンジニアはめっさしんどい
・めっさしんどいけど私が10年エンジニアを続けた理由
・めっさしんどいけどエンジニアを目指す方法

めっさしんどいを連呼しているだけだと流石にあれなのでエンジニアを目指す具体的な方法も書いておきます。

エンジニアはめっさしんどい

現実
エンジニアはめっさしんどいです。
ひたすらしんどさを書き綴ります。

・残業が多くてめっさしんどい
・休日出勤があってめっさしんどい
・進捗がなくてめっさしんどい
・作りたいものが作れなくてめっさしんどい
・唐突に障害が起きてめっさしんどい
・フリーランスになれば変わりますか?変わりません

残業が多くてめっさしんどい

エンジニアの残業の平均時間は20〜30時間です。つまり1日あたり1時間から1時間半くらい。
こう聞くと他の業界よりちょっと多いかなと思うかもしれませんが、平均という数値に騙されてはいけません。

多いときは100時間を超えます。(最近は改善されつつありますが)
毎日深夜まで残業、納期が間際の場合や障害が起きた場合など徹夜が必要な場合もあります。

そして残業が常態化しているので残業が必要ない時でも帰りにくい。
定時で帰ろうとすると「頭おかしいんじゃねえの?」という目で見られます。(職場によります。)

日本ではたくさん働くことがえらいという文化はなかなか消えません。
エンジニアになるのであればこういった文化に流されずに帰れる時には帰ることが大事です。

休日出勤があってめっさしんどい

頻繁ではないですが休日出勤が必要な場合もあります。
休日出勤が必要なケースはだいたい切羽詰まっているケースなので連日深夜まで残業しての休日出勤です。

手当てはもらえますが、貴重な休日は潰れますし、勉強の時間も潰れます。

進捗がなくてめっさしんどい

難しい案件に当たると連日進捗0とかあります。1人の進捗0とかなら挽回のしようがありますが、チームで進捗0とかも。
絶望の極みです。

そして頑張ってやったけど、
「テストのやり方が間違っていました。やり直し」
「ここは仕様が変わったのでテストやり直し」
などなど手戻りやテストのやり直しのオンパレードです。

まさに終わりの見えないトンネル。

作りたいものが作れなくてめっさしんどい

仕事なのでまず好きなものとか作りたいものとかは作れません。
好きなもの作ったところで顧客の要望やニーズに合わせたものでなければ売れないからです。

要望やニーズに合わせたシステムってあまり作っても面白くなかったりします。
面白くない作業を続けるのはなかなかしんどいです。

また、いわゆるクソコードの修正も勝手にやることは許されません。
余計な工数がかかりますし、ブラックボックスなので下手に触れないのが理由です。

そして手のつけようのないブラックボックス領域が広がっていきます。

唐突に障害が起きてめっさしんどい

障害は24時間いつでも起きる可能性があります。障害が起きたら定時後だろうが深夜だろうが休日だろうが対応に当たらなくてはなりません。
繁忙期でも障害は待ってくれません。どれだけ忙しかろうが手を止めて障害対応に当たる必要があります。

私はスマホのSlackに障害アラートを流すようにしていました。
なので休日とかにSlackの通知があるとめっちゃビビリます。

エンジニアの障害対策担当になると安息の時間はありません。
常に障害に怯えながら生きる必要があります。

フリーランスになれば変わりますか?変わりません

「会社にいるからめっさしんどいんじゃないの?独立すれば楽でしょ?」
と考える方もいると思います。

フリーランスもめっさしんどいです。
というかフリーランスはめっさめっさしんどいです。

独立すると何でも自分でやらなければならないので会社のありがたみがわかります。
「こんな安い給料で働かせやがって」
「うちの経営陣はみんな無能」
と会社にいるときは言いたい放題ですが、その代わりの面倒な税金や健康保険をやっていてくれていました。
問題が起きても会社が守ってくれました。

フリーランスは失敗したら誰も守ってくれません。全責任を自分で負います。
そして自分で事業を立ち上げない限りは会社に使われるという立場は変わりません。

当然ですが他人なので社員より待遇悪く何かあったら真っ先に切られます。
下手なブラック企業よりも遥かに薄給なスーパーブラック労働、それがフリーランスです。

フリーランスになれば稼げるという話はありますが、稼げるようになるにはかなりの時間を要します。何年もかかるかも。
それまでめっさめっさしんどい期間が続きますが、突き抜ければ高収入が待っている・・・かもしれません。

めっさめっさしんどくても、何年かかっても耐えぬく覚悟と貯金があるならフリーランスという道はありです。

めっさしんどいけど10年エンジニアを続けた理由

Why
めっさしんどいけどエンジニアを10年以上やっています。
なんやかんやでやりがいはありますからね。

続けている理由は以下の通り。

・コンピュータが好き
・プログラミングは楽しい
・ユーザから感謝の言葉をもらえる場合も

コンピュータが好き

これがやっぱり一番ですね。コンピュータが嫌いだったら多分エンジニアにはなってないです。(まあ、今のご時世パソコンに触らない仕事はないと思いますが)

昔からテレビゲームはもちろんですが、親のワープロとか触るの好きでした。(親のデータ吹っ飛ばしたこともあります(笑))
小学校にパソコン室ができたらすぐにパソコンクラブに入りました。

まあ、コンピュータに触っていたと言ってもトランプゲームやったりペイントで落書きとかがメインでしたが。

私が中学のころくらいからパソコンの普及率が急激に上がり、うちにもついにノートパソコンがやってきました。
ネットにも繋がるようになったので主にゲーム情報を検索しまくりましたね。

コンピュータは素晴らしいです。
絵も文章も書けるし、いろいろな情報も収集できます。
そしてプログラミングもできます。

エンジニアになったらパソコンの前に座りっぱなし・・・とまでは行きませんがほぼパソコンとの戦いです。

あなたはコンピュータが好きですか?
好きじゃないとちょっとやってられないと思います。

プログラミングは楽しい

エンジニアの仕事はしんどいですが、プログラミングは楽しいです。
文字を打ち込むだけでものを動かせるってすごい技術ですよね。

私は手先があまり器用ではないので、文字と知識だけで動かせるプログラムは本当にありがたい限りです。

例え簡単なプログラムであっても自分で書いたプログラムが動くことは嬉しく感じます。

特にバグりまくってて全然動かなかったプログラムが動いた日には感動ものですね。

ユーザから感謝の言葉をもらえる場合も

プログラムを仕事にしているとユーザから感謝の言葉や喜びの声を聞くことがあります。
こう言った言葉はかなりはげみになりますね。

少しでも多くの感謝の言葉を聴けるように、ユーザのニーズを捉えてシステムを開発していくことが大切です。

めっさしんどいけどエンジニアを目指す方法

明日への道
「めっさしんどいけど俺はエンジニアになる!」
という人のためにエンジニアになる方法を紹介します。

具体的には以下の4点です。

・エンジニアについて調べる
・自分の実績や経験を活かすことを考える
・どこを目指すかを考える
・勉強すべきことを考える

エンジニアについて調べる

Twitterを見ているとエンジニアになりたいのにエンジニアについて全然調べてなさそうな人がたくさんいます。
プログラミングの勉強なんざ後回しでいいのでまずはエンジニアについて調べましょう。

そもそも適性がない可能性がありますし、あなたの作業スタイルと合わないかもしれません。

例えば、
「なんかこいつエンジニアめっさしんどいしか言ってないけど実際のところはどうなんだろう?」
と調べることは大事です。

「エンジニアがしんどい」は私個人の感想です。
今のあなたの仕事から見れば大してしんどくないかもしれません。

一人の意見だけだとかなり偏ります。

・本当にしんどいのか?
・どれくらいしんどいのか?
・自分でも耐えられるか?

などなど疑問に思ったことはガンガン調べてください。
人の意見に左右されずに今の仕事と比較して客観的に判断しましょう。

自分の経験や実績を活かすことを考える

Twitter上で
「エンジニアになる」
と言っている人見ているとなぜかみんなこぞってプログラミングの勉強から始めるのですが、順番が違います。

まずは自分の実績や経験を活かしてエンジニアになる方法がないか調べます。
また、エンジニアではなくIT企業に転職したいだけならエンジニアに拘る必要もありません。今の職種のまま業界に入る方法もありですね。

エンジニアを目指す場合でも一旦他の職種でIT企業に就職するのは有効。
エンジニアにならなくてもIT業界に入れば、

・タダでシステムに触れる
・タダで内部資料が見れる
・タダで現職エンジニアと会話ができる
・職種によっては定時で帰れる→情報収集しつつ家で勉強
・エンジニアという仕事を客観的に観察できる→自分に向いているかチェック

などなどメリットはたくさんあります。
エンジニアに転身を目指している場合や独立したい場合の参考にもなりますね。

プログラミングは書籍がたくさん出ていますし、ネットにもたくさん情報があるので独学でも十分学べます。

しかしプロジェクトの流れや稼ぐための仕組みを学ぶことは独学だとかなり難しいです。(情報がない訳ではないが、有益な情報を見つけるのが難しい)

エンジニアになる場合でも他の職種で入る場合でもIT企業に入ったらプロジェクトの流れや稼ぐための仕組みの部分をしっかりと学びましょう。

プログラミングを無料で学ぶ方法については「無料でできるプログラミングの勉強方法4選」をお読みください。

どこを目指すかを考える

一口にエンジニアと言っても人によって目指す場所は人によって違うと思います。
なので自分は何を目指すかを考えるかが大切です。
例えば以下ですね。

・エンジニアになれさえすれば良い(プログラミングはできなくても良い)
・プログラミングを仕事にしたい
・IT業界に就職したい(エンジニアでなくても良い)
・お金を稼ぎたい

どこを目指すかによってその後の行動は変わります。
まずは目指す場所を明確にしましょう。

そしてお金を稼ぎたいのであればエンジニアになることが正解とは限りません。
他の職種も選択肢として入れつついろいろな方法を模索しましょう。

勉強すべきことを考える

エンジニアになるために勉強することは大事です。
しかし、「エンジニアになる=プログラミングを勉強しておけば良い」という考えはかなり安易。

IT業界に限って言ってもプログラムを書かないエンジニアはたくさんいます。というかそもそもプログラムを書けないエンジニアもたくさんおるのです。
実際私は本業で5年ほど書いてない期間があります。(テストツールの開発など補助的には書いていましたが)

IT業界に入りたい場合やエンジニアになるだけならプログラミングの勉強は不要です。

何を勉強すべきかは、
・どこを目指すか
・エンジニアについて調べた結果
・自分の経験や実績
を元に自分に足りないものは何かを考えると良いです。

Twitterを見ているとプログラミングの勉強ばかりしている人が多いのですが、「どこを目指しているんだろう?」といつも疑問に思っています。
プログラミングの勉強をしておくことは良いことですが、「どこを目指すか」、「そこを目指すには何が必要か」と言ったことはしっかりと考えるようにしましょう。

まとめ:エンジニアはめっさしんどい

プログラミングは楽しいですが、エンジニアはめっさしんどいです。決してTwitter上で思われているような楽でキラキラした仕事ではありません。
私が就職する頃はめっさしんどい仕事の筆頭だったのでなんで今注目されているのかがいまいち理解できなかったりします。

だからやめとけという気は一切ないです。エンジニアはやりがいのある仕事ですし、IT業界は成長しているので目指すのはありですね。

IT業界に入るだけなら他の職種も選択肢に入れることが大事です。
自分の知識でも実績でもコネでも活かせるものは全て活かしてベストな方法を考えましょう。

あと、趣味でプログラミングをやるのも楽しいよ!
Pythonの始め方>>Pythonプログラミングの始め方まとめ