見出し画像

エンジニアになりたい君に送る4年たってもエンジニアになれない話〜なぜ独立できないのか〜

 エンジニアって手に職つけられるしどこでも働けるからいいよねと思いIT業界を目指してきました。Youtubeを見るとリモートワークをしているキラキラしたエンジニアの映像が流れ自分もこうなりたいと思った。気が付くと早や4年エンジニアを目指してきたが一向に現状がよくならない。エンジニアを諦めた自分が経験した嫌なことを包み隠さず伝える。
 エンジニアになりたい方には自分からアドバイスできるロードマップ、もし未経験からWebエンジニアを目指す場合の注意点、知りたかったことを無料で記す。
 そして、有料部分では4年間経験した自分が思うIT業界の好かないところ、なぜエンジニアになれないのか、エンジニアとしてキャリアを進めていくうえでの落とし穴や注意点、そしてなれなかったエンジニアとしてどう稼いでいくかという具体的な出口戦略(勿論この戦略は自分も実践している)を記す。元々エンジニアとしてIT業界でメリットだけを享受する目的であったが、キャリアとして実際の業務では無駄なタクスを担当することが多く、デメリットの部分が大きいと感じた。その所以は企業は業界のプロであり、私は素人の中で情報格差で負けた形である。要はやるかやられるかの世界でやられたのである。自分はこのIT業界での敗北者である。自分の負け惜しみかもしれない。しかし、負けたをグチグチ言っても何も生産性がない。ならば、せめて読んでもらってる人だけには失敗データのサンプルとして活用していただきたい。
 この経験をもとにもし君が今このような状況や言葉をかけられたら逃げた方がいい。その状況を続ければ君はいいカモとして利用され続けるだろう。もし君がエンジニアとして給料が良いといったり、リモートワークができるというような理由でエンジニアにキラキラした夢見ている君はエンジニアを諦めてくれ。そして君の大事な時間を無駄にしないためにも少しでも力になれば幸いである。

小生ひでゆきとはなにものか

Web系エンジニアを目指し2019年後半から学習を開始
現在、某大手電機メーカーに派遣されたテストエンジニア(テスター)

小生のgithub
https://github.com/hideyukihu

想定読者

エンジニアになるための学習方法を知りたい方
未経験からエンジニアになりたいと思っている方
エンジニアになりたい学生
IT業界の闇を知りたい方
エンジニアになった後の業務のめんどくささを実感したい方


IT業界をめざしたきっかけ

  1. 初期投資の費用が0(かかるとすれば自分の時間のみ)

  2. 初期投資の費用が0なのでうまくいかなくても痛手を負わない

  3. スキルが積み立てられる

  4. 会社を辞めても稼ぐための資本が取られない(ポータブルスキルである)

  5. 自分の仕事に裁量権を持てる

Web系エンジニア(バックエンドエンジニア)になるための技術一覧

⭐️⭐️⭐️ :重要(理解できて自分でコードを実装できた方がいい)
⭐️⭐️     :理解できていた方がいい
⭐️         :どういうものか認識しておくだけで良い

  1. HTML⭐️
    いわゆるブラウザに表示するために書くタグのこと。
    このままではブラウザで見れるだけで無味な黒だけの文字列が表示されるだけである。
    まずはここから始まると誰もが言っているが実際にコードを書く必要はない。学習教材のProgateでHTMLとはこういうものなのだと理解できればそれでいい。よくProgate何周とか言ったりするが全くの無駄である。実際に自分自身は何周もしていまい今思うと非常に無駄な時間を費やしてしまったと思っている。受験勉強を通じて勉強をしてきた方には完璧にしないで次に進むのは気持ちが悪いがその気持ちをグッと堪えて次に進め。
    学習教材:Progate

  2. CSS⭐️
    いわゆるブラウザに表示したHTMLを綺麗に装飾するもの。
    これにより文字色を変えたり、フォントを可愛くしたりといったこと全般ができる。
    さっきの黒だけの文字列がCSSを使用することにより一気に綺麗になる。
    変化を楽しむということは大事だがバックエンドエンジニアになるためには無駄が多いので、こちらも深みにハマらずCSSはこんなことができるのだと思えば次に進め
    学習教材:Progate

  3. JavaScript⭐️
    いわゆる画面に動きをつけるもの。
    ここから実際のプログラミングと言われたり言われなかったり、そんなことはどうでもいい。もしこちらが楽しい向いているなと思うならフロントエンドエンジニアを目指してもいい。しかしあくまでバックエンドエンジニアになりたいならこちらも認識できたら次に進め。

  4. Python、Java、PHP、Rubyのどれか⭐️⭐️⭐️
    いわゆるシステムの根幹をなすもの。クライアントから入力されたデータを
    よくどの言語がいいのかと質問に上がるが実際はどの言語でもいい。そんなことを考えるならコードを書け。そしてこちらも繰り返しやオブジェクト思考等のいろいろな言葉が出てくる。ここで重要なのは1回で理解しようとしないことだ。プログラミング学習全般に当てはまることだが、完璧にしようと思うほどドツボにハマる。

  5. フレームワーク(Django, Spring Boot, Laravel, Ruby on rails)⭐️⭐️⭐️ 
    システムを作るときに必ず作るものをある程度のパッケージ化して時間短縮を図るもの。

  6. SQL⭐️⭐️⭐️
    データを記録したり、変更したりするためのもの。フレームワークに頼りすぎるとあまり使用しなくなるため注意
    学習には下記の無料教材で良い
    学習教材:https://sqlbolt.com/

ここで書いているのはいわゆるロードマップである。ロートマップを詳しく知りたいなら、調べると他に山ほど出でくるからそちらを参考にしてほしい。


読んだ本

  1. プロの「引き出し」を増やす HTML+CSSコーディングの強化書

  2. マイクロサービスパターン[実践的システムデザインのためのコード解説] impress top gearシリーズ

  3. 徹底攻略 AWS認定 ソリューションアーキテクト – アソシエイト教科書 徹底攻略シリーズ

  4. Docker実践ガイド 第2版 impress top gearシリーズ

  5. 図解まるわかり クラウドのしくみ

  6. 図解まるわかり クラウドのしくみ

  7. 図解まるわかり クラウドのしくみ

  8. 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版[固定版] 脆弱性が生まれる原理と対策の実践

  9. 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版[固定版] 脆弱性が生まれる原理と対策の実践

  10. 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版[固定版] 脆弱性が生まれる原理と対策の実践

  11. 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版[固定版] 脆弱性が生まれる原理と対策の実践

  12. キタミ式イラストIT塾 基本情報技術者 令和03年

  13. マイクロサービスパターン[実践的システムデザインのためのコード解説] impress top gearシリーズ


エンジニアになるために読んだ書籍
これでもまだ序の口

IT業界の真実(業務内容編)

業務な内容の大きな流れは要件定義→基本設計→詳細設計→製造→テスト→理リリース・運用
このような流れを大人数で分担し仕事を進めていくため、基本的には分業化していくことになる。
基本的には下記構成でメンバーが組まれる。
・プロジェクトリーダー
 システム全体の進捗状況を管理する人
・システムエンジニア
 お客様とどのようなシステムを作るのか打ち合わせる人、その打ち合わせた内容を仕様書を作るもの
・製造チーム
 仕様書からコードに落とし込む人
・テストチーム
 コードが仕様書通りに動くか確認する人

エンジニアになったらやっぱりコードをゴリゴリ書きたいと君は思うたろう。

 しかし、君がもしプロジェクトに配属された場合どこに割当られるかわかるかな。
 そうテストチームだ。
なにもできない君にはコードを書かせるには時間が掛かり過ぎるしコードのクオリティも担保できない。あえてあなたにコードを書いてもらうメリットがなにもない(新卒のは場合は成長するための投資と割り切って書かせてもらえるかもしれない)。よって君はテストチームに割当られスキルも積み上がらない仕事に大半の時間を割り当てられるようになる。
 もし 配属されたプロジェクトが終了し、次のプロジェクトでも君はテストをするだろう。なぜか君はまだコードを書いたことがないからだ。
 もう分かるねこれで君はコードを書くエンジニアになれないことが徐々に固まってくる。これは地獄だ。

企業は君を安く買おうとしている

 新卒でないのであれば未経験からエンジニアを目指さないほうが良い。
エンジニアに限らないが若くもない未経験を雇うなら若い新卒を雇いたいのが企業の本音だ。
新卒をかける教育のコストはかけられるが新卒ではない未経験には教育コストをかけるのは割に合わない。そのため未経験からエンジニアになりたいならせめてでもエンジニアの知識は持とうよ。それなら雇う可能性が出でくるだけで、雇うかどうかはわからないよというスタンスなのだ。
 そしてなぜ、新卒を雇用したのか、それは夢があり、知識がないため企業の目的に誘導しやすいためだ。夢があればお金のモチベーションがなくても率先して安く働いてくれることを企業は願っている。また、知識がないということは比較できる対象がないと言うことだ。どんなにバカでも何社か働くと比較したくなくても勝手に比較してしまうが新卒にはその比較対象がないため、その環境がベースと考えてしまう。それでそれが普通のまま働いてくれればそれで良いのだ。
 


SESの真実
エンジニアにはなるためには2つの方法がある。
①自分でサービスを生み出す。
収入源は手数料ビジネス
➁誰かのサービスを作るのを手伝う。

➂サービスを作るのを手伝っている企業に派遣される。

IT業界の真実(企業編)

 無形かので相手との認識を合わせるのに時間がかかりすぎる。
時間をかけて完成したとしても結局依頼していたものと違うと言われて案件が流れる。
そのため一人でも体力では継続できなくて死ぬ。
信用を担保するために誰でもわかる仕様書を作らなければならないのでコストがかかる。
パッケージ商品をオーダーするからシステムは高くなるが高いものを個人に頼もうとは思わない。そしてライトユーザーであればローコード(ノーコードで問題ないから)あえてオーダーを作る必要がない。

君はIT業界で自立できないのか

ここから先は

1,878字

¥ 150

この記事が気に入ったらチップで応援してみませんか?