昔々は同僚を中心に数人のシステム開発・保守部隊が構成されていたんですが、次々と辞めていったり他のチームに異動したりで最終的には2人になってしまったことがありました。
しかも、もう一人というのが中途入社で経験が浅かったこともあって実質そのシステムの細部までわかるのが自分一人となり、設計やらの上流工程や調達・決裁などの事務処理まで細々とした仕事までをほぼ請け負わないといけない状況となってました。
こういう状況でも何とか仕事を回していたのですが、特に上の人から見ればどうにかなっているように見えてしまうんですけど、実際のところどうにもならない状況だったりします。
現状維持さえできない
こういう状況になってくると、新しいシステム開発プロジェクトを立ち上げるなんて以ての外で、取りあえず今あるシステムの細かい改修要望を対応したり、バグを潰していったりといった取りあえず現状を維持する日々となってきます。
ただ、実際には現状維持なんてこともできていないわけですよ。
システムは耐用年数があったりしますので次のリプレイスまでのカウントダウンが刻々と迫ってきますし、技術は進化するので今のものがどんどんレガシー化しますし、それに伴って保守・運用コストが増加していって日々の業務時間を圧迫してくることになりますし、次々と新しい脅威やセキュリティホールが見つかるといったリスクも増大していったりします。
結局システムも生き物みたいなもので、日々メンテナンスをしないとどんどん弱っていきますし、病気が見つかれば処置が必要です。
2人じゃただ単にその対応に追われるだけで、そのサービスのあるべき姿なんて描かれても進捗することもできません。
それでも、周りからすれば現状のシステムの課題やあるべき論を展開して日々改善要求を突きつけてくるわけで、妥協案を探ってできるレベルまで落としこんだ上で何とかつないでいく中で、周りにはそれを現状を維持していると思い込んでしまうわけです。
現状維持という観点では、やっている本人もそういう思考に偏ってきて、そもそも手一杯の状況では新たに仕事をとってくることも生み出すことも自分たちの首を絞めることになるわけですから、そういう行動に移りたがらなかったりします。
例え新しいことをやりたいと思っていても、無理だ諦めろという考えに染まっていくわけで、そんな状況ですから運営側にも活気が全くなくなるわけです。
実際に開発・保守要員が1人でも2人でも現行のサービスを継続させることはできるかもしれません。
が、実際には問題を先延ばしにしているだけで内部的なリスクというのはどんどん増大していったりしてます。
エンジニアを育てることなんてできない
もう一つは、そういった状況に陥るとエンジニアのスキルアップもできなくなるので、成長させるといったことも難しくなります。
今の業務をこなすことはうまくなるかもしれませんが、そのものすごく狭い世界と固定化されたスキルでは他の仕事をすることも難しいので企業内におけるエンジニアの価値も低下していくことになります。
一番怖いのは、毎日の仕事はあるわけでそれを単調にこなしていく日々に慣れてしまって思考停止に陥ることです。
小規模なチームで固定の保守・運用業務を長年やらせているとこういった人がどんどん増えてきてしまって、他のチームへの人員配置も難しいようなことなるのを結構見たりしてます。
開発メンバーが複数人いると、それぞれの得意分野持っているスキルやノウハウも異なるため、それを補完しあうことで互いを高められるということができたりもします。
高スキルの人の影に埋もれてしまったり、チーム内の権威的な階層によって積極的に情報共有やスキルアップを図ろうとしない人もいたりするので、チームの人数が多ければいいという話ではないのですが、それでも切磋琢磨し合える仲間がいるというのはモチベーションにつながったりもします。
高度なスキルを持った優秀なエンジニア二人ということであれば、それぞれを高めあう努力を継続することはできるかもしれませんが、そういった人は稀ですし実際もう一人のほうはあまりその辺が積極的ではなかったこともあって自分もエンジニアとしてのモチベーションはかなり低下してたりしました。
最終的には、なんとか今の状況と面倒を見ているサービスの重要性を説いて体制を強化してもらい、その後も徐々に大きくすることができました。
組織の体制として余分な人員配置や遊びの要員を抱えているというのはよろしくないこととは思いますけど、少なくとも現状維持できるだけの体制というのは実際のところ退化しているに等しいので、成長させていきたいという展望があるのであれば、それに見合った体制作りというのは当然必要になってくるのではないかと思います。
[PR]
[PR]