開発をしない開発者
いま参画しているプロジェクトで丸2ヶ月経って改めて思うのは、
(おそらくwebエンジニアも含め)システムエンジニアの主な仕事はやはりコミュニケーションだということです。
つまり、決してコーディングがメイン業務というわけではない。
むしろおまけみたいなものです。
いまのプロジェクトも、いちおうやっていることはwebサイトのシステム改修という位置付けです。
そして自分は実装担当なので実際にプログラミングをする立場でもあります。
ただ、実際にやっているのはひたすらドキュメント作成とe-learning、
そして日時定例、内部定例、顧客折衝、グループ定例……などなど、ミーティングの山々。
これらに費やしている人件費から比べると、実際のコーディングなんてオマケみたいなものです。
これは日本のIT企業、とりわけ技術的なことは下に丸投げする独特な商流のせいだと言われています。
つまり、委託する側とされる側で所属している企業が異なるため、責任の所在を厳密に分けなければならず、
そのために「私はこう言いました、あなたは知っていますよね?」
みたいなやりとりを綿密に繰り返して一歩ずつ確認せざるを得ないところがあるわけです。
この業界にいて「認識」という言葉を聞かない日はありません。
委託する側はやりたいことは明確だが技術的なことは分からないので、できれば丸投げしてしまいたい
(あと、できるかぎり発生する費用を抑えたい)。
委託される側はその無茶振りを躱しつつ、業務的なことは分からないので、それを十分引き出す必要がある
(あと、できるかぎりお金をたくさんもらいたい)。
そうした立場の違いが根本にあるので、些細なことも大議論になることがよくあります。
しかも現場は大企業なほど意味不明な人事異動があってプロジェクトの途中で人が入れ替わったりするので、
そうした説明は何度も繰り返さなければならないこともあります。
いまの現場は、矢面に立って顧客折衝を行い内部にそれを共有する人と、
ベテランなのに表に出ない代わりに技術的なことならなんでもござれという人で明確に役割が分かれています。
いままでキャリア面談などで何度も耳にした、
技術特化かマネジメント特化かという選択の先にはこういう棲み分けがあるんだなぁと実感しています。
そして自分はぼんやりとマネジメントの方に適性があるんだろうなと思っていましたが、
マネジメント業務なら専門特化スキルが要らないというわけではなく、なによりも業務知識が必要になります。
業務知識、つまりその現場特有で他に持っていけない知識というのは基本的に長期で居座らないと溜まりません。
もし最速最短でその地位に上り詰めたいなら、いまの現場で頑張り続けるのが合理的のような気がします。
いまのところ、この現場に定年までいるビジョンはまったく浮かびません。
仮に自分が地位向上を狙っていたとしても、そもそも上の意向で退場させられる可能性も十分あるわけです。
そう考えるとここであれこれ長期視点に立って考えても仕方ない気がするので、
まずは足元を固めることだけ考えるのが無難ということになるわけですが……
この「将来を考えてもしょうがない」という状況が相当モチベーションを下げているんだろうなというのは薄々感じます。
日本のIT企業の生産性が悪いと言われているのはこういう特殊事情によるところも大きいと思いますが、
かといって今更業界全体がすぐに変われるとも思えないので受け入れていくしかないんでしょうね。