2018-04-26 08:23:44 +0000 2018-04-26 08:23:44 +0000
185
185

天才的な」コードについて管理職に話をするには?

EDIT:

素晴らしいアドバイス、コメント、フィードバックをありがとうございます。

結局のところ、この状況では誰も「悪者」ではありませんでした。私がここで受け取ったアドバイスは、私がプロジェクトの元リードと連絡を取り合うのに役立ちました。それが判明したように、私の会社は、はっきりとした理由もなく、コードベースの初期の「開発中」バージョンを受け取っていました。古い会社は、私たちに生産準備ができたバージョンを送ってくれました。そして、上にチェリーとして、私が持っていた深さに不完全な製品を効果的にリバースエンジニアリングするために公に私を賞賛しました。長い話をすると、私が維持するためにタスクされているコードは悪いです。とても悪い、実際には、製品は不完全であるだけでなく、非機能であり、何年も続いています。

_どのように私は、彼らに恥ずかしくない方法で、私が怠惰や愚かに見えるような方法で、貴重な製品が悲惨な状態にあることを、管理者に伝えるには? _


Clarification: this question vs technical debt

_この質問は、キャリアの自殺をコミットすることなく、製品についての長年の信念に挑戦する私に関係しています。 経営陣は、おそらくコードは私がそれを理解することができないように複雑であることを示唆しており、間違いは設計によってであることを提起した。 この問題が技術的負債に関係していないもう一つの理由は、「天才的な」コードと技術的負債の違いは、私が「天才的な」コードを変更してはいけないことになっていること、そして「天才的な」コードは技術的負債ではなく、秘密の黒魔術だということを経営陣が伝えていることです。それは秘密の黒魔術です。その代わりに、彼らはしません。 _ 管理者は時間、コスト、またはお金に直接懸念していません – それはいくつかの懸念であるが。残念なことに、開発経験の少ない人たちによる部分的な食事のメンテナンスの長いラインは、コードを「触った」だけで十分に長く、ここかあちこちにパッチを追加し、次に移動していましたが、何年にもわたって管理者にプロジェクトがjust one step away being production ready. 私が ~1.5Gb のコードベースで遭遇した天才コードの問題点を簡単にリストアップすると…

  • コードベース全体で同じ関数、同じスコープの同じ変数名がある (それをサポートしていない言語で)。
  • 関数は定義されているが呼び出されない。
  • 順序の悪い変数の使用法と初期化。
  • ランダムにリクエストされた API ルートは何も返ってこないか、意味不明なものを返してきます。 しかし、私が最初に開発を始めたときは、コンパイルすらできませんでした。

それは悪夢です。

問題は、経営陣がそれを受け継いだ人や、以前の開発者から「動く」という保証を受けていたので、かなりの投資をしてきたことです。そして今、その矛先は私に向けられています。

私が以前の開発者が完全に正直ではなかったかもしれない、あるいは製品を完全に理解していなかったかもしれないと提案すると、経営陣は「とにかくやってくれ」と「なぜまだできていないのか」…そして「私たちは本当にそれが今までに動いたかどうか確信が持てない」から「あなたがそれを受け取ったときには動いていた」、そして「私たちはそれが動くのを見たことがない」から「それはすでに生産されている」という混合シグナルを送ってきました。 )

経営陣はまた、おそらくそれは私がそれを理解することができないように非常に複雑であることを示唆し、ミスは設計によるものであるthatオリジナルの開発者は非常にメタであり、ミスのように見えるものは、実際には天才のストロークである**thatオリジナルの開発者は非常にメタであり、_thatミスのように見えるものは、実際には天才のストロークである_**Granted、私は天才ではない、と多分それはケースです:私は私が見つけた非常に基本的な問題についての私の以前の観察を提供します。

回答 (0)