見出し画像

私大文系エンジニアの成り上がり

はじめまして、ユキギガンテ(@YuQinta)と申します。Androidエンジニアとして働いています。アプリ開発が大好きで趣味でもアプリを公開してます。
最近「エンジニアになりたい!」という方々からお声掛けいただくことが多く、私のエンジニアデビュー談をここに記そうと思いました。

簡単に経歴を紹介

大学時代:某私立大学、法学部で民法を専攻。もともとPCは好きでオンラインゲーム等をしていたが、プログラミングとは無縁。
就活時代:ものづくりに関心があって、特許系のお仕事を目指していたが、IT企業の未経験者歓迎の文句を見て「どうせなら作りてぇなぁ」と思いIT系に進む。
新卒時代: 「これが私のAnother Sky」地獄である。
現在:新卒入社した会社を1年で転職し、2社目。Androidエンジニアとして結構有名なアプリの開発を担当していたり、社内開発環境(CI/CD)の構築だったり最近ではFlutterの社内導入にむけて活動していたり色々している。

エンジニアになる前に準備したこと

とくになし。プログラミングの勉強も一切していない。強いて言えば志望動機くらいか。面接において「なんでエンジニアになりたいの?」は98%聞かれるので、これだけは対策しよう。

「プログラミングの勉強いらないの?」と思った人もいるかもしれない。でもご安心を。これだけで僕の受けたIT企業はすべて内定をくださった。それくらいエンジニアになるというのは簡単なことなのだ。

何を隠そう、僕がプログラミングの勉強を始めたのは社会人になってからだ。なぜそこまで気楽でいられたかというと、未経験者を募集している会社の多くには入社後に2~3ヶ月のプログラミング研修が用意されている。「研修後にさらにOJT研修があるので安心してデビューできますよ」というのがお決まりのセリフだ。この期間で本気だせば大丈夫だよね。

プログラミング研修のはじまり

入社後のあれこれが終わり、研修がはじまる。うちの研修は某社が提供している企業向けのプログラミング研修に参加するという形式だった。なので様々な企業の人達が参加している。殆どの人は新卒ということもあり同年代が多く、言ってしまえば学校と同じ感覚だ。学校と違うのはスーツを着ていることと給料が発生しているということだろうか。控えめにいって最高だ。

そんな学生生活のような日々の中で、僕はふと疑念を抱くようになる。
「この研修うける意味あるのか?」

・某社の作成した研修専用の薄っぺらな教科書。
・講義の内容はその教科書の読み合わせ。
・実際に手を動かすのは教科書に載っているサンプルコードを写し、実行して何もわからないままただ動いたことを確認することだけ。

そもそもペースが速すぎて、受講者の理解度など問題にならず、必要なカリキュラムを消化することが目的だと言わんばかりだ。

こんなんでプログラミングができるようになるはずがない。

僕は早々に研修を見限った。しかしながら、会社として参加しているのでさすがにサボるわけにはいかない。僕は研修を独学と質問の時間と捉えることにしてひとり走り出した。

因に僕の勉強方法は今も昔もデバッグだ。技術イベントなどでセッションを聴講した後はめちゃくちゃデバッグしているくらい。サンプルコードとデバッグは最強の教材だと思っている。

07:00 出勤し参考書のプログラムを書きひたすらデバッグ
※講師にPCの使用と早期出社の許可をいただいてた。
09:00 研修開始 ここはちゃんと内職。講義内容に沿ったものを学習すると良い。
18:00 研修終了、残って勉強、デバッグ。20時までならOKというルールだった。
20:00 退社

大変ではあったが、実行時の動作を理解できることに楽しさと喜びを感じていたので全然乗り越えられた。

そんなこんなで研修終え、当然のごとく僕は成績上位者として名をはせているのであった。

屈辱のエンジニアデビュー

研修を終え僕が招集されたのは、本社内の開発チームだった。ただし、そこに輝かしい未来など存在してはいなかった。

まず、第一声に度肝を抜かれる。

「また文系採用したのかよ」

それを僕の前でいうか、普通。

「ご迷惑をおかけするかもしれませんが、頑張りますのでよろしくお願い致します(いつかぜってぇ潰す)」とにこやかに返してやった。

その発言が表すように、現場で歓迎されることはあまりなかった。(もちろん全員がという訳ではない。)

僕は怒りを闘志に変え誰よりも成果を出してやると己を鼓舞しPCへと向かう日々を送る。

地獄のはじまり

そんな中でとある案件にアサインされた。日頃の業務の評価から僕をアサインしたとの事だ。

1次請けの新規案件で要件定義から設計、開発まで全てを行うという貴重なものらしい。某施設向けの業務用アプリで、開発にはバックエンド、フロントエンド、Androidアプリが含まれる。

評価されいてたことに加え輝かしい話に胸を躍らせたが、それも束の間。地獄の業火に包まれる。いわゆる炎上というやつだ。

設計までで3ヶ月以上遅延しただろうか。休日返上、月残業は100時間超えはデフォ。ろくに知識もないままDB設計やインフラ設計等色々な経験をしたが詳細は割愛する。

こればかりは本当にしんどかった。
怒号と罵声が行き交うプロジェクトだった。

上司は精神を病み休職。他社員は失踪し警察に捜索願を出す事件にまで発展した。

自身も体力的にきつくなっていた。
よくお腹が痛いと言って職場のトイレで仮眠をとっていた。

どうしてここまで酷くなったのか。今となってはあまり覚えていない。ただ覚えているのは、スーツ越しに感じた便座の冷たさだけである。

深淵での出会い

ある日僕に一冊の本が渡される『Android 入門

「Androidの実装はユキギガンテ君にしてもらいたいんだよね、若いし。」

社長直々にお願いされた。

因みに社内にAndroidの経験者は居ない、つまりこれは無茶ぶりでもある。

スマホアプリか。僕は自身の好奇心を抑えきることはできなかった。

そして、僕はその一冊の本に手を伸ばす。
これが僕の運命を大きく変えることになる。

ここから寝る間を惜しんでAndroidと戯れる日々がはじまる。

08:00 出社
09:00 業務開始
18:00 一応定時という観念はあった。
24:00 日付が変わるのを合図かのように「今日は帰ろうか」となる。
25:00 帰宅後Androidの独学に励む
28:00 就寝 最低でも3時間は寝ることを心掛けていた。

控えめにいってAndroidはめちゃくちゃ楽しかった。簡単な画面の作成、たった一つの画面遷移、ちょっとしたDBアクセス。たったそれだけの実装でも、動作をさせることが出来たときには喜びと感動が大きかった。

僕のAndroidスキルの上昇に際限はない。そのうち個人でもアプリを作りたいと考えるようになった。そして初めて個人で作り上げたアプリが「けんさくぅ」(グラブルの救援検索アプリ)である。今でもなおアップデートを続けている大変思い入れのあるアプリだ。

Androidの勉強に不思議と疲労は感じなかった。
これがゾーンと呼ばれるものなのか、はたまた精神的に異常をきたしていたのか僕には分からない。

しかしながら、相も変わらず僕はお腹が痛いと言って職場のトイレで眠る日々を送っていた。2月頃の事だ。便座は冷たかった。鼻が透き通るような消臭剤の香りを心地よく感じるようになっていた。だがやはり便座は冷たいままだ。

解脱

そしてAndroidアプリは僕の手により無事完遂されるのであった。

どんな機能であろうと、どんな要望であろうと華麗に実装して魅せた。

気づいたら僕は最強になっていた。

もはや職場のトイレで寝るのは習慣であった。だが今までとは確かに違うものがある。そう、便座がほのかに温かいのだ。春だ。春がきたのだ。

僕はAndroidエンジニアとして転職を決意した。

ふと見上げた空に雲はひとつもなく、透き通るような青が広がっていた。
空の美しさを知った。というのは嘘でトイレの汚い天井が目に映った。

そして新たなる高みへ

時は流れ退職。そして無事、Androidエンジニアとして転職を遂げた。
まず転職先で最強だと思っていた僕の自信はいとも簡単に崩れ去る。

そこには僕より遥かに優秀なエンジニア達が在籍していた。
僕は己のいた世界の狭さを知る。
彼らと共に仕事をすることはとても刺激的であった。もちろん体力的にという意味ではない。

正直焦りを感じることもあった。だが、だからこそ頑張ろうとも思えた。

彼らの存在は僕を更なるエンジニアの高みへと誘った事は言うまでもないだろう。

そして今の僕がある。

これからエンジニアを目指す方々へ

この記事の目的は、皆さんを脅すことでは決してありません。
ちゃんと新卒の教育をしてくれる会社はたくさんあります。

「環境は人をダメにもするし、活かしもする」ということ

私の話はイレギュラーケースです。やばい環境下でどうにか生き抜いた話だと認識してもらえれば十分です。

「(未経験でも)エンジニアになれますか?」
という問いに対し、私は100% YESで返します。

ただし、職業「エンジニア」の肩書を得ることと、「エンジニアとして活躍できる」ことはイコールではありません。

本当にこの世には色々な会社があります。開発の風土が根付いていてエンジニア同士の活動を活発に行っている会社もあれば、素晴らしいビジョンだけを語る、技術軽視な会社もあります。はたまた、所謂ブラック企業もあります。

もしあなたが今後エンジニアとして活躍をしていきたいのであれば、環境を選ぶべきです。しかしこれはプログラミングの経験/未経験関係なく、新卒や業務経験のない方々にとってはとても難しいことだと思います。

それを知った上で、あなたは今何を準備し、どういうプランをたてますか。
それがエンジニアになる前にまずすべきことなのではないかなと私は思います。

この記事が気に入ったらサポートをしてみませんか?