2022年まとめ
2022年も年の瀬となったので振り返ってみようと思う。以前の記事より推敲の段取りを少なく済ましているので荒さが残る駄文かもしれない。この一年を大雑把に区分けするなら就活、インターン、大学の3つになる。
2022年の最初は就活を本格的にスタートさせることから始まった。後から周りと比べてみると就活を始める時期は遅かったように思う。例年三月が本選考開始と言われるが、そんなの有名無実なルールだ。大学のタスクとプログラミングスクールのインターンに精を出していたらあっという間に冬休みを迎えて、さすがに始めようとなった。とはいえ新卒で入る会社選びは人生の中で大きな選択になることは間違いないので持てるリソースをできるだけ費やしていった。
初めの頃の解像度は、漠然とIT業界を考えていたくらいだった。エンジニアの採用実績豊富な就活エージェントを探し出し、面談を重ねた。そこで知ったのは。同時に会社四季報の業界地図を購入し、隅から読み進め、ネットで情報収集した。それらのメモはGoogleドキュメントやスプレッドシートに記録し、積み重ねた。最初に学んだことは、一口にIT業界と言っても企業規模や業態、職種によって様々な働き方があるという事実だった。それを知る前は、漠然と大企業の安定感や気楽な感じに惹かれていた。大学推薦も使えば大手Sierに入れるチャンスがある立場でもあった。しかし自社開発企業のWebエンジニアという職種の存在を知ってからそれを志すようになった。主にベンチャー企業が多いのだが、主体性を持って働ける点や、待遇も大企業に劣らず悪くない点、何より働きながら市場価値を上げられる点に大いにメリットを感じた。そして、自己紹介プロフィールをまとめていき、エージェントからエンジニア就活において上位10%に入る人材だから自信持っていろんな企業を受けてほしいと背中を押された。逆求人イベントに招待され、参加してみると色々な企業から面接きてほしいと言われ、結構行けるぞという気持ちがあった。またスカウト型の就活サイトに登録していたのだが、ここでもスカウトが止まない。そんな中でエージェントから紹介された企業(比較的人気のメガベンチャー)の面接にウキウキしながら進むのであった。
人事からの太鼓判を抱えて自信を持って望んだのも束の間、一次面接であっさり落とされてしまうのだ。人事から嘘をつかれたようでかなりショックを受けたが、面接を振り返ると自分が過去積み重ねてきたこととの間に微妙なミスマッチがありそうだなと感じた。それは実務経験でエンジニアの仕事をしたことがないという点だった。さらに情報収集を重ねていき、ベンチャーとはいえ、エンジニアの人気企業は高倍率の狭き門であることを知った。そのため、人気企業は3~4時間くらいかかるコーディングテストが課せられ土日はコーディングテストに消えた。意外と厳しい世界であると実感した。また、エンジニア就活の人事のブログを見つけ、面接は意外と通過率が低いんだなということも知った。人事は面接者を連れてくることが仕事で、判断するのは現場や上級者の人たちだ。人事から熱烈にスカウトされてもしっかり準備せねばならない。実務経験がないとはいえ、インターンや大学でやってきたことは、志望業界的に決して見当違いな分野ではないはずだ。プログラミングスクールのインターンで営業の経験を経た以上、相手は何を望んでいるのか、どういう情報を話すべきかを改めて考え直し、自己分析用のドキュメントを更新、洗練させていった。
面接を何度も繰り返していくうちに、1~2次を通過できるようになった。ここまで10社ほど選考に乗ったように思う。面接は場数を経てPDCAを回すことでクリアできるようになってくることを実感した。初めの頃は緊張していたが、段々緊張も無くなってきたし、堂々と話せるようになった。そういえば、面接は全てオンラインで実施された。実家よりも一人の方が集中できるので、毎日のように漫画喫茶の個室に足繁く通った。実務経験がなくても、スクールのインターンで成し遂げてきたジェネラルな経験は、語り方と企業の求める人材像次第で非常に刺さることも大いにあった。そして、3月に差し掛かる頃に、最終面接を終えある企業から内定を頂くことができた。立て続けにもう一社の企業からも内定を頂くことができた。
この時点で2社目の企業はかなり志望度が高く、選考を受ける企業を比較して選べる立場になった。内定が出た安堵感に加え、その前の時点では10社くらい同時並行で選考を受けていたので肩の重荷が非常に軽くなった。この時点で2~3社のみ選考に残し、就活を終わらせに入った。結果としてそれらの企業たちは落選や辞退を経ることになり、5月に入る頃に2社目の企業の内定を受諾することに決めた。
その企業に決めた理由はたくさんある。エンジニアとして成長できる環境がある上に、待遇や給与水準も業界内で見ても高い。さらに事業の安定感と今後の成長が両立していて、自身を委ねるのに不安要素が一切無い。昔大学の授業で決算書を読む授業があり、就活でもそれを読んで企業分析していた。この企業の決算書は私が見た範囲で一番だった。この会社との出会いは、エージェントに突然招待された平日の逆求人イベントだったので、良いご縁だったと思う。もしその逆求人イベントの日に他企業の面接が入っていたら、全く違う世界線があっただろう。
内定が決まってから残りの大学生活をどう過ごすかを考えた。2年前からやっていたプログラミングスクールのインターンはそろそろ引き際だと感じた。理由は二つあり、一つはインターン先が求める能力が自身が得意とする能力にミスマッチが生じ始めてきたことだ。私がそこにJoinした2020年は教材等のコンテンツ面に改善の余地が大いにあり、私の技術力と執筆力が比較的高かったことが活かされた(文系のエンジニア志望がそこまで多くない学生集団の中において)。おおよそ1年もの間そこでバリューを発揮してその次はマーケティングに応用することができた。2年を経てある程度仕組みが整ってくると、いかに数をこなすかという営業的な価値観が強まるフェーズになる。ここに売上(=入会数)の成長が鈍化してきたため、営業マン採用がどんどん加速していった。事業のタイミングで求められる人材が変わることがあるのだなぁという学びになり、エンジニア気質の人たちが少なくなっていった。逆に言えば、私が2020年にこの団体にJoinできたことは完璧なタイミングだったなぁとも思うのだ。引き際に思ったもう一つの理由としては、内定者インターンでエンジニアの勉強を優先すべきと思ったことだ。企業の人事との面談を通して、おそらく同期の中で唯一エンジニアの実務経験が無い。今後新卒としてスタートダッシュを決めるためにも、残りの時間をそこに費やそうと思った。
そうして早速7月から内定者インターンを始めることになった。初めは右も左も分からないまま本社に出向いた。自社開発のWeb系企業の業界自体が若く、どの会社も大企業のような手厚い研修は無いものだ。なので、基本的には個々人の自走力に基本的には委ねられる。この時、就活エージェントとの面談の中で、エンジニア一人採用するのに採用する企業は就活エージェントに紹介料を大体130万円以上払っていると聞いた。自身が背負う責任と期待に身震いした。内定者インターンの最初の仕事は配属されたチームに必要な技術スタックを習得することだった。メンターに色々教えてもらいながらも進めていった。配属されたチームの技術スタックは、ほとんど最新の技術スタックを使っており、その概念を理解することに苦労した。スクールのインターン時代はRuby on Railsなるものを主に扱っていたが、全く異なる概念で過去に学んだことがほとんど通用しない(プログラミングの基礎スキルは前提ということである)。Go, NextjSなどのプログラミング言語やフレームワーク、GraphQLなどの通信規格などどれも初見だったのでチュートリアルから始めることになった。 さらに周辺知識としてWebシステムやコンピュータの知識、クラウドやDocker、チーム開発のGithub、ドキュメントや報告の仕方のようなソフトスキルなど、学ぶことは多岐に渡る。このように勉強するということが仕事として有給として対価を頂ける環境はあまりにも有難い。世の中の多くの人たちは、小学校から大学までの学校、社会人向けのスクールなど、勉強するだけで数十万、数百万払う側だ。今度はお金を貰いながら、しかもプロのアドバイスを聞き、現場を経験しながら勉強できる。そのポジションにつけるようになるには、レギュラー争いの競争に勝たなければならないのも世の定めなのかもしれない。
内定者インターンを重ねていき、求められる技術スタックや仕事現場の概要を掴み始めてきた。それらの技術スタックを使い、ポートフォリオ(=オリジナルプロダクト)の作成に取り掛かった。内定者インターンを始めてから3ヶ月くらい経ち、オリジナルプロダクトがほとんど完成してきた頃に大きな変化が訪れた。それは、担当メンターが元々気になっていた別会社に転職してしまったことだ。後から改めて認識したのだが、担当メンターは表彰でトップクラスの成績を残すエース格のエンジニアだった。優秀なエンジニアは引く手あまたで、より自分が望む環境に積極的に転職していけるんだなぁと思った。かなり細かいところや根本的な疑問など、私の色々な質問に全て答えて頂き、これは非常に稀有な経験で感謝しかない。担当メンターが居なくなっておそらく上長などの間で私の処遇について話し合われたと思う。結果としてチームを異動することになった。元々のチームを改めて見てみると、絶賛新規開発を行っていて経験豊富なテックリードクラスのエンジニアが引っ張るチームだ。組織から見ると、技術スタックをゼロから習得し始め、メンターにおんぶに抱っこ状態だった私の育成計画が頓挫するのも無理はない。また、自身の能力が依然として足りていない事実を認識し、現在地を理解した。もっと努力して早く会社に貢献できる人材にならねばと感じた。そうして10月から別のチームにJoinすることになった。
新しいチームのミッションは、自社内で3年前から使われ続けているプロダクトの運用、改善だ。このプロダクトはRuby on Railsをサーバーサイドで使っている。またユーザーが社内に大勢いるので、ビジネスサイドの議論が活発に行われる。これらのことから昔スクールのインターンで経験してきた営業やマーケティングの経験、Ruby on Railsの経験がすぐに活かせる環境だ。Joinして早速本当の実務タスクを始めることになった。インターンに与えられるタスクは、稼働時間が不安定なこともあり、基本的に時間制限の無いタスクが割り当てられる。このようなタスクを通してプロダクトや仕事の仕方の解像度を上げることが求められる。既存プロダクトの環境構築やコードリーディングなどは基本的には自分で進める。新しいチームは比較的同世代の若い新卒メンバー(年下も居る)が先頭に立ってプロダクト運営をしており、1~2年後の姿を想像しやすいのでその意味でもとても刺激になる。最初のタスクを通して先輩から開発の仕方や便利なツールの使い方など多くを学んでいった。年齢は同世代だが、経験としては先輩なので自分の能力は低い。学歴も仕事の成果になんら関係無いので、素直さを忘れないようにひたすら吸収するだけだ。
最初のタスクは、プロダクトからSlackに通知されるお金の表示にカンマをつけて見やすくするというタスクだった。初めて生プロダクトのコードに触れた。初めは巨大な迷路のようで該当箇所を辿るだけで一杯一杯だった。クラスがそこかしこにあり、アクションの中でたくさんインスタンスを生成している。APIもたくさんあり複雑だ。タスクの箇所となるコードの場所をVSCodeで検索して見つけたり、インスタンス元のクラスを見て内容を把握していく。そして修正したコードをGithubにあげ、Pull Requestを作る。そこで承認されれば、テストケースを書きステージング環境で他者に確認してもらう。それらを経てようやく本番環境にリリースされ、タスクは完了となる。このタスクの完了だけで全体を通しておよそ20~30時間くらいかかったように思う。
このまま次のタスクに進んで行き、プロダクトの解像度も同時にどんどん上がっていく。運用プロダクトの場合仕事のリソースの割き方として実際にコードを書く仕事は一つに過ぎず、コードを調査する割合が大きい。実際に調査した結果をドキュメントに残し、報告することも重要な役割なのである。過去の人たちがどのような思考でそのコードを書いたのか、設計したのかをドキュメントやGithubのログ、コードそのものから読み解いて行く。過去の人たちはすでに社内には居ない場合が多いので自分達で読んでいくしかない。その意味で国語力が重要なのである。プログラミング言語やWebシステム、データベースといった文法を言葉にした読解作業なのである。また、読解をシステマチックにできるようにするための雛形のようなものも自分で用意したりした。これと似たような感覚を覚えたものがある。それは大学受験の現代文だ。やっていることがほとんど同じなのだ。受験勉強と仕事とのアナロジーを見出せる瞬間が来るとは我ながら大きな発見だった。
そんな中、修論を縮みあげなければならないタイミングが来てしまった。同期に大学院を中退してプログラミングで生計を立てているフリーターが一人居て、活躍していそうな雰囲気がある。これを見てしまうと学位がなんの役に立つのか甚だ不明ではあるのだが、せっかくここまで来たし(サンクコストの観点は一旦置いておいて)、世間体も生きて行く上である程度役に立つ。なので最後修論を縮みあげて綺麗に卒業して社会人の第一歩を踏み出そうと思う。
年末年始なのに修論を書くタスクを抱えながらも、どうしてもNOTEを書きたくなる欲求を抑えられなかった。将来改めてこれを読み直した時に、そんな時期があったなぁ、そんなことを考えていたなぁと懐古主義を満足させることができそうだなぁという感覚に満足してこの記事を終えたい。
この記事が気に入ったらサポートをしてみませんか?