大学で留年をした1年間の使い方

この記事は、[Yahoo! JAPAN 18 新卒 2 Advent Calendar 2018](https://adventar.org/calendars/3419)の24日目の記事です。
前回はsimanaraさんの「[家のインターネットが遅かったからなんとかした話](https://qiita.com/simanara/items/93aa77873a4a5aefe18d)」でした。

# はじめに
私は大学生のときに4年に進級する段階で、卒業研究着手条件を満たすことができず、留年しました。
しかし今となっては、留年した1年間で経験したことが今の自分を作っていると思っています。
そのため、後悔はありますが、人生の汚点だったとは思っていません。
そのように思えた理由を書きたいと思っています。

# 状況
留年が確定した段階で卒業までに足らない単位は、英語と卒業研究のみでした。
そして、英語に関してはTOEICによる単位代替が認められていました。
そのため、必要な単位はTOEICで取ることにし、大学の授業には出ませんでした。

そんな訳で1年間、完全フリーな時間ができました。

精神面はとても病んでいました。
一人の時間となると、もう何もできませんでした。
悲しいとかっていう感情は通り越して、無気力感だけがある状態、つまり感情がありませんでした。
誰かといる状態から一人になったときの感情の過程がつらかったです。
そして、このつらい状態のときがきっかけで「逃げる」という行動が始まります。

# 準備
まずしたのが、アルバイト探しです。
アルバイトに決めたのは、とにかく何かを考えている状態、何かをしている状態であり続けたかったからです。
それだけでなく、大学という空間からも逃げたかったので、同年代が多いようなアルバイトは嫌でした。
何がきっかけで病むかわからなかったからです。
そのうえ、就職先はエンジニアに絞っていたこともあり、1年分の経験を積みたいと考えていました。
よって、アルバイトの職種はエンジニア1本に絞りました。
次は、どのようなエンジニアとして働くかです。
大学の授業や個人での学習でPHPには触れていたので、「PHPを使うエンジニア」という形で絞って探しました。
幸いなことにMax週5フルタイムで入ることはできたので、アルバイト先の候補はありました。
困ったことは、大阪に住んでいたので、そこから通えるアルバイト先が少なかったことです。
やっぱり関東圏に多いんですね。
面接をしてすぐに雇ってもらいました。
この面接のときには、大学の授業や個人で作ったものを作品集としてまとめ、見せました。

# アルバイトスタート
アルバイト先の規模はとても小さく、制作班（エンジニア・デザイナー）は6人でした。
同じオフィス内には、この人数しかいませんでした。また年齢層も一番若い人で20後半で5つ以上上でした。
この内エンジニアは2人です（HTML・CSSのコーダは別にいました）。
そこでの主な事業内容は、宣伝活動のためのウェブや紙媒体（チラシ・看板など）の制作でした。

まずは取り扱っているホームページのコード読みから仕事は始まりました。
また、サーバーの構築と運用方法も教わっていました。
このときに面倒だったのが、運営しているサイトで使用しているモジュールの関係上、特定のバージョンで構築しないと動かないという問題があり、基本的にソースインストールで構築していました。
ソースを読みながら、こまごまとした開発を手伝って2.5カ月がたちました。

# 教わっていた先輩の退社
まぁいろいろあったんですね。突然、先輩が辞めてしまいました。
急きょ、現状を引き継いぎました。
入って2.5カ月の学生しかバックエンドの開発ができず、サーバーの管理ができない状況となりました。
保持しているコードを漁って、サーバーの構成を見てっていう日々がやってきました。

# 販売サイトの構築
そのような状況になってからの初めての大きな仕事は、販売サイトの構築でした。
途中で止まっていた案件で、中途半端な要件定義までしか行われていませんでした。
その案件が急に締め日が決まった状態で動き出しました。
そのときにまず始めたのが、どこのVPSを借りるかでした。
まさかの予算を上げる作業ですね。
いくつかの選択肢を用意する必要がありました。

実際にVPSを借りて、サーバーの構築が始まりました。
他サービスで利用しているサーバーの設定ファイルを基に、英語の公式ドキュメントを読みながら構築を進めていきました。
英語を落として留年したのに、英語のドキュメントを永遠と読み続ける日々でした。
そのときに英語とは一生付き合っていかないといけないのだとなんだか悟りました。
このときの経験がきっかけでだんだんと英語のリファレンスに対しての忌避感はなくなっていきました。
むしろ今では、より正確で新しい情報を得るために、1次リソースであることが多い英語の方を探すこともあるぐらいです。

サーバーの構築は予想以上に時間がかかりました。
原因は、一から構築したのが初めてだったことと、保持しているサービスの運用と細かい開発が入ってくることでした。
それらの案件は優先順位高めで降ってくるため、必然そちらに時間を取られます。
結果的にスケジュールが押すこととなりました。
ホントはバッファを取ってスケジュールを組まないといけないのですが、入って間もない学生がそのあたりの感覚があるはずもなく、全然足りていませんでした。
強がってキツキツでスケジューリングしていた気もします。
ここで、上司が何かしてくれるだろうと待っているではなく、自分からちゃんと意見しないと大変なことになることを学習しました。
ただ、命令に対して意見を言うため、ちゃんとした根拠は必要です。
また、強がっても何もいいことはないと知りました。
困ったときに助けてくれる人はいなかったので（同じ分野の人がそもそもいない）、困りそうな段階で早めに手を打って、引き返したり、方向転換したりしやすいように立ち回ることが必要だと学びました。

ApacheとかPHPなどをインストールするのも困りましたが、メールサーバーとして動くようにするのも困りました。
このときはちゃんと学んで、早めに代案を用意して、それで通せるように交渉しました。

そして、ようやくウェブアプリケーションの開発に取り掛かることができました。
PHPでのサイト開発は予定よりも早く進み、待ち状態にもなっていました。
完成が見えてきたときでした。
社長のこうしたいっていうことや、実際に完成間近のものを使って欠陥が出てきました。
社長のこうしたいは時間がたって出てきたことのようなので仕方ありませんが、欠陥に関しては防ぎようのあることでした。
欠陥は主に、中途半端な要件定義（途中で止まっていた案件だったため）と、実際に使う人からのヒアリングがほとんどなかったことにありました。
「こういうのが作りたい」というのから、社長と辞めてしまった先輩とで設計したもののようでした。
イメージと作りたいという気持ちだけで設計されたものなので、設計に漏れがありました。
実際、聞けばいろいろ出てきたので、実際に使う人へのヒアリングの重要性と、意見を引き出すことが重要だと思いました。
完全とはいきませんでしたが、何とか形にはして、締め日に間に合わすことはできました。

# それから
販売サイトをリリースしてからは、そのサイトをひとまず運用しながら、完成までもっていきました。
その他のサイトも運用しながら、開発を続けていました。
その内、新しく人も入ってきたので、その人に教えるという日々を続けていました。
そして、年度末に辞めました。
年度初めに大学に復学です。

# アルバイトを通じて
アルバイトをしていて最もためになったと思っているのは、社長との会話です。
社長はその会社の経営陣のトップであり、雇い手のトップです。
会社が小さいこともあり、社長との距離が近く、話す機会がしっかりとありました。
会社の経営について少しは考えられるようになりました。
また、面接でも話す内容が少しですが、考えやすくなりました。

アルバイトの環境も今となっては良かったです。
他の人とは年が離れており、同年代とは関わりのない環境にいました。
そのおかげで、留年しても心がつぶれることがなかったと思いますし、多少入りにくいような環境に対しても参加しに行くことができるようになりました。
大学4年のときには、外部の勉強会に積極的に参加できていたし、今でも外部のコミュニティーに参加し積極的に行動できるようになりました。
昔よりも知らないところに飛び込むハードルが下がったことで、できる経験の幅が広がりました。
社長は人脈でもって会社を成り立たせていたので、「**人脈は力**」を身近に感じることができました。
自分ですることは自分で選ぶ人生を歩んでいきたいので、そのときに必ず人脈というのは生きてくると信じています。

周りがしていないようなことを経験することで視野がかなり広がったと思います。
実際は大学から逃げるように、アルバイトを始めたので、逃げ方さえ間違えなければ悪くないなと思いました。
少なくとも、留年する前の私では、今のポジションはありえませんでした。
考えることすらしなかったでしょう。
逃げで始まった経験が私を大きく成長させてくれました。
この貴重な経験を胸に、いろいろな人と触れ合い、日々成長していきたいと思っています。