最近、やたらと業務の領域を厳格化しようという動きがあると感じます。
あなたはプログラマーだから、システム保守の仕事だけをしてくださいね。
あなたは運用担当者ですから、ソースに手を加える事は許されません。
とか。
これは、法令順守や内部統制などでシステムを取り巻く環境が昔より厳しくなってきた事に伴うものだったり、業務の効率化を最優先に行ってきた結果だったりもするのですが、それにしたがって配置され、それにしたがって業務をこなすエンジニアにとっては、その領域を逸脱した業務というのはできず、普段から触れることのできるスキルも固定化されてきます。
運用担当者なら運用の仕事しかできない。システムに障害がおきても運用担当者はその原因を調べ、保守担当者にエスカレーションするというところまでしかできない。
原因は分かってる。それを修復するスキルは自分にはある。でもその領域に踏み込む事が許されていない・・・。
そんな状況にエンジニアを追い込んでいます。
それをもどかしい気持ちとしてみているエンジニアならまだしも、逆に「それは私の仕事ではありませんから」と自分の担当外の領域をやろうとしないエンジニアもいたりします。
もちろん専門特化する事が悪いとは思いません。
自分にはこの領域で高い能力を発揮する事ができるという自信と、周りからの賛同があればその道でエキスパートとしてやっていく事は、自分の思惑と業務を効率よく推進していくという組織の思惑が一致して、レベルの高い業務が行えるかもしれません。
が、しかしそれは自分の色々な経験を経たゆえの考えであって、「保守って何?」「運用って何するの?」とわからない新米エンジニアにとっては、その領域に当てはめられた事でその他の業務というのに何があるかさえも分かりません。
そしてその組織を統率する上司も、「君はこの領域だけをやればよい。他の仕事は気にしなくてよい」と言ったりします。
確かに新米エンジニアにその領域で経験を積ませれば、その領域でエキスパートに育つかもしれません。
しかし、その他の領域が分からないエンジニアを果たして、能力の高いエンジニアと呼べるでしょうか。
それはエンジニアの幅を著しく狭めているだけの気がしてなりません。
昔は、少し様相が違いました。
あまりエンジニアとしての分業が進んでいませんでしたし、優れた運用ツールも豊富ではなかったので、エンジニアは自分たちでどうにかしないといけない状況にありました。
皮肉にも業務が非効率であったり、統制を取れていないことが、エンジニアを何でもしないといけない環境に押しやっていたのだと思います。
また、以前に書いた「減っていく失敗できる環境、増えていく失敗できない環境 」というエントリでも触れたように、業務の領域の効率化と統制を進めた結果、エンジニアが広い幅で能力を求められる環境というのも減ってきています。
こういった状況にもかかわらず、上司は「優秀なエンジニアが育たない」と嘆いてたりもします。
「それ以外はやるな」と言われているのに、「何でそんな事も知らないんだ」という態度をとってきたりもします。
その矛盾になかなか気づいていません。
これからより業務の領域はより厳格化してくると感じます。
その時に、自分は何をやりたいかという事を分かるためにも、仕事にはどんな領域があるのかを見てみることを強くお勧めします。