低レイヤーを学ぶ
低レイヤーを学ぶことは大切。
という話を、今年に入ってかれこれ5回くらい聞きました。
現役エンジニアの方々から。
昨日は縁あって、あるIT企業の交流会に行ってきました。大学生や高専生と現役エンジニアでざっくばらんに交流会しようや〜 みたいな。
早くも軽食のピザが残りわずかになってきたかな〜という頃、「エンジニアとして就職するにあたって在学中にやっておくべきことは何か」という話題になりました。
するとそのエンジニアの方は、「低いところも含めて広く知っておくといいよ」と。例えば、Railsアプリをデプロイする時はherokuが便利だけど、Unixやサーバー周りを知るためにあえてVPS借りてサーバーを組んでみるとか。
Ruby on Railsだとか、herokuだとか便利でいい感じにやってくれるツールはあるけど、その裏側で動いているUnix、ネットワーク、セキュリティあたりの知識は汎用的に使えるものだから学んでおくべきだ、と。
Ruby on Railsだけでも構成要素はいっぱいあるし、当然そこより低いレイヤーの物はたくさん詰まっている。
PostgreSQL>リレーショナルDB>DB
Rails>Heroku>puma>Unix
とかとか、あげるとキリがなさそうだけど就職が決まるまでのあと2年間少々、できるだけ低レイヤーも学ぶようにしていきたい。
まずはその一歩として、4月に基本情報技術者試験を受けます。