大学生の僕がゼロからWebエンジニアになった話 - 2年生 -の続きになります。
高校時代まで陸上選手だった僕が
大学時代に勉強してエンジニアになるまでの話です。(ほとんど思い出話です)
大学3年生
1年生から2年生まで、プログラミングに出会ってから、
独学で勉強を進め、自分で簡単なサービスを作れるようになりました。
そして、間もなく僕は実際の現場に興味を持ち始めます。
「今僕が使っているサービスは、どんな人たちが、どんな感じで開発しているんだろう?」
僕は、 大学で一緒にプログラミングをするような友達もいなかったので
複数人で1つのモノを作った経験もなく、開発に「加わる」ということに不安を持ちながらも
あるベンチャー企業にインターン生として参加しました。
現場に出てまず感じたのは、自分の無能さでした。
とにかく、言葉の意味がわからないのです。
「とりあえずxxにあるプロジェクトからクローンしてきてローカルで動くようになったら教えて」
というシンプルな指示でも、「は?」という感じでした。
今まで適当に手元のPCでなんとなく動かしていただけだったので、
いきなり手も足も出ない状況になり、勤務初日から途方にくれたのを覚えています。
その後、帰り道にいくつも本を買って帰りました。
GitやUnix、DBやクラウド環境など、とにかく仕事場でよくわからなかった知識を
次の出社日までに叩き込みました。
技術を扱える以前に、会話についていけないと、自分に対する指示の意味すらわからないのです。
そして、環境構築がなんとなくできるようになり、バージョン管理を覚え、
issue => ローカルでいじくる => できた! => push
のような流れを自力でできるようになりました。
たったそれだけですが、そこにたどり着くまで
自分一人ではかなり苦労しました。
開発者にとっては当たり前のことでも、初めての人には意味不明なのです。w
なんとか簡単なissueが消化できるようになった後、
僕は同じ組織の別のプロジェクトにも加わりました。
そこで僕は次の壁にぶち当たりました。
そのプロジェクトには リポジトリの番人 がいたのです。
最初に入っていたプロジェクトでは、レビュー体制も不十分だったのですが、
次のプロジェクトでは、番人がきっちりとレビューをしてくれました。
それが僕にとてもとても苦しいものでした。
ロジックはもちろん、インデントや変数名など
細かい部分も指摘を受けました。
別に動いてるんだからいいじゃん(´;ω;`)
そう思いながらも、今までの個人の開発では全く意識していなかった部分で怒られ、
なんどもはじき返されて、半泣きでプッシュしまくりました。
当時はすごく苦しかったのですが、それはとてもいい経験になりました。
少しずつ、「動けばいい」という単純な考え方から、
様々なことを考えて実装するように変化していきました。
そして、「良いコード」と「悪いコード」 の存在に気づき始め、
さらに自分のコードを見直して、それが「良いコード」だと思えた時
うへへへへw
と思うようになりました。
インターンに参加して、1年が過ぎると、
僕は自分でかなり成長を実感していました。
それは、1年前に書いていた自分のコードを見て
なんじゃこりゃww と思うことで自覚できます。
そしておそらく1年後の自分は、今の自分のコードを見て同じように
なんじゃこりゃww と笑うでしょう。
でもそれがエンジニアとして成長することだと思っています。
視野が広がり、できることが増え、
仕事をするのがどんどん楽しくなってきました。
次回、4年生になり、僕は卒業研究を放置して
仕事ばかりやっていた時の話をします。。