わからなくなってきた
エンジニアとして成長する、とは何だろうと思えてきた。
先日のことである。
以下、前置き(余談)。
会社の福利厚生の一貫として、社員の方々と飲みに行く機会が設けられている。管理職がいると話がしずらいだろう、という計らいでいわゆる平社員の一部で集まっていた。
いろんな話をしてきた。
現場、趣味、愚痴、前回の飲み会など、1年目として初参加なので他の現場の状況を聴くことが出来て嬉しかった。ランダムでメンバーが決まっていたというものの、なんやかんやで同じプロジェクトの方々が多かった気がする。
そのためもあってか、自分が今突っ込まれているプロジェクトについての話がとりわけ気になった。
N年目の方々(N>=10)が新人だった頃の話を聴く限りだと、当時の環境は劣悪のように思えた。よく辞めなかったな、と思うくらいに。
彼らは環境を良くしようと努力してきた。私を含む5年未満のメンバーがある程度やっていけるくらいに。(それでも今一つとおもえることがあるけれども)
しかし、最近は悪くなっているらしい。原因もわかっているらしく、諸悪の根源を打倒せんと血気盛んに盛り上がっていたのも印象深かった(もちろん酒の席での話ということが前提ではあるが)。
なんか、そんな話が出てきている時点で役員は現場の意見を汲み取れていない気がする。
彼らは上と下との摩擦が生じないよう、ギリギリのところで食い止めているのはこの話を聴く前から察することができたし、話も聞いていた。この人たちが居なくなったら俺も逃げるしか無いなーと思った。
思ったことここまで。これからが本題。
彼らの不満ももう一つあった。現場での教育についてである。
彼らは「現場都合の事象が多いせいで若手の成長を妨げている」
と言っていた。
しかし以前、会社の誰かが言っていた。
「様々な仕事を任されることがある。成し遂げることで成長につながる」と。
後者を聞いたときには確かにその通りだ、と思っていたが、現場で1ヶ月OJT(On the Job Training:職場で実務をさせることで行う従業員の職業教育のこと(Wikipedia))をしているとそれは「適応することとすり替えている」と思えてきた。
後者にバイアスをかければなるほど合点がいく。かけなければわからないが(かけても微妙かもしれない)。
私は「エンジニアとして成長する」ということは、既存のシステを学びつつ、常に技術的に新しい『何か』を追い求めていくことだと思っていた。
現場に配属してみると、実際に求められているのは「独自FWやバージョン管理など現場のエコシステムの理解とヒューマンスキル」と、思っていたこととは乖離しているように感じた。新しいものは何も求められていなかった。
以上は、どれが正しいのか、どれが間違っているのか。
おそらく、どれも正しい。ただ求められる割合が違うだけなのだろう。
そのお陰もあってか、人としてはある程度成長することが出来た気がする。まともになれたという意味で。しかし、技術的にはどうだろう。データ構造を見ても「何でこういう設計にしたんだろう」と思いながらコードを書いたりしている。そういう意味ではコードを読む力は少しついたかもしれない。
ハッキリ言うと内部での技術的な評価は正直どうでもよくて、同期や内部の人間での立ち位置から見るような相対的な評価ではなく、絶対的な評価基準が欲しかった。自分自身、何ができて何ができないかを知りたいということもある。
加えて、実務ではやらなくても知識としては欲しいものはたくさんある。なので私は現在応用情報の勉強している。
言語もJavaしかできない人間にはなりたくない(業務以外でJavaは書きたくない)ので趣味ではDartやKotlinを書いている。それが今どきのものなのかはわからないが。
思ったことを取り留めもなく文脈もメチャクチャで申し訳ない。
言いたいことを三行でまとめると
・エンジニアとして成長しているかわからない
・そもそも「エンジニアとして成長する」とは何かわからない
・エンジニア向いているのかわからない
何もわからない