Profile photo for Quora User

There are a few things.

There is working with people who don't understand the complexity or difficulty of what you are doing. This includes both non-technical people and technical people who don't really look at what they are asking you to do.

There's working with "legacy code." Meaning dealing with bad code that is in code base and doing important things. It's hard to understand, risky to rewrite, and hard to maintain or extend. Oh, and very few people get it's difficult to work with.

There's more senior, older developers who don't understand the principles of good software engineering. They often get mad when you write good code that meets the standards set in influential books. They want you to just hack out verbose code, that doesn't take advantage of the languages new features. They don't really accept that more succinct code, avoidance of repeated code, and shorter functions are better or worth spending time on. Oh, and these same people always break the code base and recklessly change and delete things.

There are business people who just don't communicate. They write bug reports that don't include any complete sentences. They assume you know everything about how they use the site. They assume you know where the bug occurred, what they were doing, and what the correct behavior is. They are frustrated and annoyed when you come to them with specific questions.

There are also business people who have a deep need to assert that they are smarter than you. They disagree with you about what is in the code base, even though you are reading the code and they are not. They get very mad and try to get you in trouble when everyone is forced to deal with the reality that doesn't match their assertions.

There is of course regular office politics. As we all know, capitalism is the war of all against all. You often have to deal with people defending incompetent belligerent cronies, lazy coworkers who through you under the bus, gossip, people contradicting correct decisions for political reasons, etc.

I've had situations that combine all these things. There has been times when I've dealt with TERRIBLE code written by consultants. I had to deal with business people who wanted what amounted to complete re-writes, they were expecting the results to match results on pages they never showed me. When it was clear that the db layer of the code needed to be augmented, my lazy hack boss, had the consultant write some more code, and it was broken. From there I had to rewrite a bunch of code, compressing thousands of lines of queries to a few hundred. I had to deal with problems with the new code. From there when the data didn't match what was on the page they never showed me, they felt I did a bad job. My manipulative scummy boss did not defend me.

View 100+ other answers to this question
About · Careers · Privacy · Terms · Contact · Languages · Your Ad Choices · Press ·
© Quora, Inc. 2025