エンジニアはプライベートの時間に何を勉強するべきなのか?
プライベートの時間に何を勉強すればエンジニアとして成長できるのか?というのが最近の私の中の大きな問いだ。
この問いに対する明確な答えはない。
しかし、私の中で一つ納得感のいく答えが出たので、このnote記事で紹介させて欲しい。
多くの技術の共通項を学ぶ
私が辿り着いた一つの答えが「様々な技術の共通項となる技術を学ぶ」ということだ。
つまり、開発をする上で様々な場所で聞く単語や技術に関する学びを優先するということだ。
ピンとこない方も多いと思うので、わかりやすくAWSで例えてみる。
間違ったAWSの勉強法
私が以前実践していた間違ったAWSの勉強法は、「Lambdaを使って開発している企業もあるし、ECSを使って開発をしている企業もある。また、EKSで開発している企業もある。そのため、それぞれの技術を一通り触って、すぐに開発に参加できるようにしておこう」というもの。
一見、理にかなっているし、多くのエンジニアがこういう学習法をしていると思う。
しかし、この勉強法の欠点はLambdaの使い方というLambdaでしか使えない技術やECSの使い方というECSでしか使えない技術に時間をかけてしまっているということだ。つまり、応用が効かない学習内容に時間をかけてしまっている。
正しいAWSの勉強法
それでは、どういう勉強法が正しい勉強法なのだろうか?
先ほどのLambda, ECS, EKSの例ならば、
それらのサービスに充てるメモリ・CPUを正しく設定・監視する方法
それらのサービスの上で動くDockerコンテナの運用方法
それらのサービスから外部に出ていく経路(ネットワーク)の設定方法
などを学ぶべきだ。
これらの学習が有効な理由は、Lambdaを運用するために学んだ知識がECS, EKS(もっというならば、GCPやAzure)などの他のサービスを運用するときに役立つからだ。
共通項を学ぶ
Lambdaの設定方法のような一つの技術でしか使えないような運用方法は、仕事の中で実際にプロダクト運用をしながら身につけていけばいい。
プライベートの時間に勉強すべきことは、もっと広範で応用可能な知識だ。
おすすめの勉強内容
どういった勉強をプライベートの時間にするべきかを紹介したので、この章では私がおすすめする具体的な勉強を7つ紹介する。
ここから先は
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?