* Be clear about requirements. If the requirements aren’t clear push back before doing any work.
* If you are working defects expect reproduction steps, a test location, defect state, and desired state. If this isn’t clear push back on it.
* if you cannot deliver code, because the work environment is shit, then deliver better documentation.
The problems I encounter at my work is that just about every is slow. Those who aren’t appear to hoard product knowledge and are really shitty at communicating. I really want to say that is intentional behavior but I just think it’s actually a mix of shitty code, fear of writing, and aggressive posturing by people who want attention compared to everyone else. The key failure here is that the employer rewards hard work without quality checks.