彼らはプログラムを設計しています……そうすることで、徐々に入れ替えが難しくなっていきます。プログラマーが悪い
- 無能な管理者。
これはもちろん、あなたが正しく状況を表現していると仮定してのことです。
問題1を修正することはできません。問題#2に対処できる可能性はわずかにあります。このわずかなチャンスは、いくつかの理由で上司が単に何が起こっているかを認識していない場合です。上司に行って、あなたが見ている問題と、なぜ彼らは会社のために悪いのかを彼に教えてください。上司はすでに問題を知っていて、それに対処する能力がないか、または、彼は問題を理解する能力がないことをソフトウェアとソフトウェアエンジニアを管理することについてあまり知らないので、それはおそらく失敗するでしょう。この無能なマネージャーを交代させる必要があります。
新しいマネージャーは、このプログラマーとの座談会を行い、彼にアーキテクチャを説明させ、新規開発を中止し、すべてのプロトコルを文書化するように指示します。その間に、彼は、プロトコルを文書化すると、最初のエンジニアを「助ける」ためにそこにある新しいエンジニアを取得し、ソース管理にソフトウェアを入れて、コード自体がよく文書化されていることを確認します。この新しいエンジニアは、任意の新しい開発を行い、うまくいけばバグ修正と既存のソフトウェアのマイナーな強化を行います。彼は辞めるかもしれない、かんしゃくを投げるかもしれない、騒々しく異議を唱えるかもしれない、あるいはもっと悪いことに、物事を妨害するかもしれない。だからこそ、バックアップを取ることが第一の仕事なのです。1人目のエンジニアから2人目のエンジニアへとスムーズに移行できればいいのですが、そうはならないと思ってください。最初のエンジニアが辞めるか、先に会社に対して(さらに)破壊的な行動を起こさなければ、最終的には最初のエンジニアをクビにする計画です。
このような無意味なことを続けさせてはいけないだけです。長引けば長引くほど、最終的には修正するのが苦痛になる。それはすでに苦痛になるので、それを修正しないことは、これについて考えるための絶対に間違った方法です。
この場合、私は修辞的な「あなた」を使用していました。あなたが個人的に何ができるかという質問に答えるためには、上で言ったように、上司にあなたの懸念を持っていくことから始めましょう。繰り返しになりますが、それは有益な結果をもたらす可能性は低いです。
次のステップは、あなたが話していないことにかかっています。上司の頭の上を行くのは非常に危険かもしれません。そうであれば、本当にそこで働き続ける気があるのかどうかを見極める以外にできることはほとんどありません。上層部に気軽に相談できるような小さな会社であれば、行ってみてはいかがでしょうか。上層部がすでにその低レベルのソフトウェアマネージャが無能であると感じている可能性は十分にありますが、もちろん彼らはあなたにそれを言うつもりはありません。
もしあなたの第一の目的がこの混乱を解決することであり、あなた自身がこの場所で長く働いていると考えるならば、もう一つの遠い可能性として、内部ツールの開発の一部を自分で引き受けることを提案することがあります。そうすれば、最初のエンジニアと話し、物事がどのように動くのか、コードがどこにあるのかなどを理解する正当な理由が得られるはずです。最終的には、あなたがツール担当者となり、経営陣は最初のエンジニアを追い出すことができます。そうすれば、その役割のために誰かを雇ってもらうことができるので、あなたは自分のやりたいことに戻ることができます。繰り返しになりますが、これは私が本気で提案していることではありませんが、もしあなたが本当にやりたいと思っていて、やる気があるのであれば、選択肢の一つになるでしょう。