実務だけでは、意外と成長が止まる
プログラマーやエンジニアは、まず実践が大事。 実際に作って、壊して、運用して、トラブルを踏む。これは間違いない。
ただ、それとは別に 座学とか資格勉強みたいな「今の仕事に直接関係ない勉強」も結構重要だと思っている。
理由はシンプルで、実務だけだと知識が偏るから。
毎日同じ現場、同じ技術、同じ設計、同じ運用を繰り返していると、気づかないうちに「その会社専用エンジニア」になっていく。
いわゆるタコツボ化。
特に長く同じ会社にいる場合は危険で、本人は毎日コードを書いてるから成長してる気になる。 でも実際は「同じことを高速で繰り返してるだけ」というケースが結構ある。
もちろん、
- 座学は無駄
- チュートリアルだけやっても意味ない
- 資格なんて実務では役に立たない
という意見もわかる。
実際、AWS資格を全部持ってても、まともに構築できない人は普通にいる。
でも、だからと言って「知らなくていい」にはならない。
重要なのは、今やってる仕事以外の知識を頭に入れておくこと。
昔の知り合いに、Windows向けのC++アプリ開発だけはものすごく強い人がいた。
Win32 APIも詳しいし、GUI周りも強い。 でも、それ以外はほぼ興味なし。
AWS? 「名前は聞いたことある」
Docker? 「よくわからない」
Web? 「別世界」
みたいな感じ。
その分野だけで食っていけるレベルなら、それでもいい。 実際、業界トップクラスなら仕事は来る。
でも、その人は「C++に詳しい人」ではあるけど、業界で名前が知られているレベルの専門家ではなかった。
しかも社員ではなく外部契約。
なので正直、 「もし今の契約終わったら、次どうするんだろう」 とは少し思った。
本人は実家がかなり裕福らしく、そこまでキャリア不安を感じてなさそうだったが、普通の人はそうはいかない。
最近は特にAI時代なので、変化速度が異常に速い。
今まで触ったことないクラウドでも、AIを使えばある程度は開発できる。 逆に言うと、「最低限の概念を知ってるか」がかなり重要になってきた。
ECSとは何か。 ロードバランサーとは何か。 認証とは何か。
雑でもいいから知ってるだけで、AIへの指示精度がかなり変わる。
だから資格勉強も、別に資格そのものが目的じゃなくて、
「自分の世界の外を知る」
という意味では結構価値があると思っている。
実務だけやってると、意外と視野は狭くなる。