My experience is that most technical issues have solutions (e.g. see Working Effectively with Legacy Code), but there&#x27;s now way to fix bad (project) management other than a revolution.<p>I agree with other people that you can mitigate the pain of bad management by doing things like 1) Write high quality code from day one 2) Automating deployment 3) Minimizing technical debt 4) Doing &quot;spike&quot; when asked to do something new so you don&#x27;t give a bad estimate.<p><a href="http:&#x2F;&#x2F;programmers.stackexchange.com&#x2F;questions&#x2F;122014&#x2F;what-are-the-key-points-of-working-effectively-with-legacy-code" rel="nofollow">http:&#x2F;&#x2F;programmers.stackexchange.com&#x2F;questions&#x2F;122014&#x2F;what-a...</a>