Do you know these moments when you:

  • stopped laughing at Dilbert, because you realize its true
  • spent evenings completing a project that never went into production
  • when requirements are blurry but the schedule is not

There are so many factors that can frustrate developer and hinder him from being productive.

What factors do you experience at your current workplace?

See Also

What Makes you lose motivation?

+8  A: 

Messy offices!

I know this sounds petty, but IMHO it makes a huge difference as far as morale is concerned. I've worked in two offices now where my colleagues were massive coffee addicts, and as a result there are old coffee pads, cups, and other crap all over the place. Both times we ended up hiring cleaning ladies instead of just picking up after ourselves, which means that the office is then clean exactly once every two weeks.

Nik Reiman
You inspired me to tidy up a little.
Lou Franco
^^ That makes me very happy to hear ;)
Nik Reiman
What do you do about the stale coffee smell?
We replaced our old coffee machines with a Keurig K-Cup. Worse I have now, is a dirty mug, and a couple coffee stirrers.
Wes P
+37  A: 

Micro-management by managers who don't understand software/web development, and think that you can allocate time for it like you can allocate time for tasks that actually have a known duration (e.g., painting a wall at Xm^2/hr, stamping sheet metal at X components/hr, etc).

+6  A: 

I'm in a big company. What frustrates me here is:

  • in the last second I usually receive the most important information, like: Oh no, this won't be a standalone application, it should be a Servlet
  • Everything is easy for the managers, so easy that neither a written specification is nor requirements are given
  • hacks and quirks survive every other code
Andre Bossard
+2  A: 


I know to a guy who digs ditches for a living, that sounds luxurious, but when you like the work, you want it.

+9  A: 

What bothers me, it's the people who work mainly with the mouth. Everything is always easier with the mouth...

I find typing is slightly more difficult with the mouth. I have to be careful to keep drool out of my keyboard.
Adam Bellaire
Haha... it can be interpreted in more than one way... good one.
+4  A: 

Managers who want precise schedules, when the tasks can't be accurately predicted.

Douglas Leeder
+4  A: 

Coworkers who try to overstep their bounds. In particular team leads who think they should have a say over members of other teams, developers who think they need to determine how QA tests a product, and QA people who think they know better than the project managers when it comes to how the product should work.

Of course, then there's the QA people who ask developers, "How should I test this?" Er, the whole point of you testing it is so that someone not invested in the code verifiest it works correctly.
+3  A: 

Lack of motivation in my current work.

I'm always viewing things like StackOverflow and the such to take up time and tasks I'm given seem to take half the time they do other people. At the end of the day, when I'm on client site, it shows bad attitude towards work and not very much dedication towards the job etc.

Anyone know how to get more motivated really well, please, let me know as at the moment I'm considering if 'messages' have inherent meaning (Like Hofstadter proposes in "Godel, Escher, Bach", I believe he's wrong... but that's a Red Herring for another day).

Find a more interesting job.
That's the thing, my job is interesting, sometimes :(
+18  A: 

Experienced programers on the team who don't bother researching or debugging a particular issue before they ask somebody else for help. I don't mind answering questions but don't waste my time with something that you should be able to figure out if you had taken more than 30 seconds to investigate.

Tell them to "tell it to the bear".
Paul Tomblin
Tell them to "read the ....ing manual" :P
+14  A: 

Incompetence of course! Worst of all, when it's mine incompetence. Yes, that's frustrating.

All those incompetent miners! *shakes fist*
+33  A: 

Working for a big company for the first time after 20 years in small firms (giving away my age here), this bothers me:


  • Decisions and planning done by non technical managers.
  • Decision ways are very long.
  • Management always talks about "just do it" and stops everything once you do exactly that.


  • Slow PCs that fit everybody and nobody (lowest possible standard for everybody)
  • Notebook with external screen with different resolutions
  • Old development tools (Java 1.4, Delphi 7, VS 6)

No roadmap. Programmer are treated as replacable resources.

Ralph Rickenbach
+1  A: 

See Also

What makes you lose motivation?

+8  A: 

Ridiculous timescales: Recently we had a spec written on a Sunday that was to be delivered the next day. And I've just been given a week to implement a huge new feature that also requires 2 third-party companies to also do some work. The timescale cannot slip because there is a VERY important (government contract) customer demo at the end of the week. I suppose I should get on with it rather than posting on here, but I'm stuck waiting for the external guys to do something.

Oh, and salary levels... a year after becoming the lead developer on the company's biggest and most profitable product, I am still being paid at a Junior engineer level, despite a glowing appraisal (that should have been a pay-review) and many promises to "sort it out".

I smell someone ready to look for a new opportunity...
It is starting to feel that way, I agree... the "problem" is that the work is interesting, my boss really appreciates me and is a good guy (the salary thing is out of his hands), I like my colleagues and am respected, along with my opinions on things. Those are things I don't want to lose!
Valerion: if your boss really appreciates you, confide in him -- "I'm going to leave unless this is solved". If he understands engineers, he will immediately start trying to get things fixed.
+1  A: 

Miss-communication, I just simply cant stand it when people ask for documentation or similar, then don't read it, and ask questions that it answers. I could really just pull all my hair out...

+7  A: 

Having to go move the laundry into the dryer. I freelance and work from home :-)

+5  A: 
  • People using the sugar spoon for their coffee and not replacing/washing it.
  • People finishing the milk and leaving the empty carton in the fridge.
  • People telling me I cannot take a nap in my lunch break.
  • The fact that 20 people have only 1 toilet for the whole office.
  • Boredom, boredom, boredom...
  • People taking 4 days to write the code to call a web service from PHP, only to fail, and have me (I know nothing of PHP) to look at a single doc, and implement it in 3 minutes.
  • People that are documentation-challenged.
  • People asking me to format XML differently so that they can process it with XSLT (apparently XSLT cannot handle many standard XML forms).
  • People asking me to make a web service return an XML string, as they or their language cannot interpret a WSDL schema.
  • The fact that the office is in an attic, with an incredibly wobbly wooden floor, that shakes everything every time someone walks.

And I haven't even started with the actual code yet...

The first two are easliy solved by drinking coffe the way it's right: black w/o sugar :-)
People complaining about your XML don't know XSLT well enough. Coming to you in advance and asking to decide a common specification together to ease development, I can get behind.
Tom W
+4  A: 

I think negative people who say things can't be done or will take to long frustrate me the most. the UNWILLINGNESS to try new things

+2  A: 

In my previous job (mildly large organization - about 500 employees) the worst thing was the sinking sensation that nobody was running the boat.
Things worked out because of the good will and professionalism of some people and despite "management" interference.
People that were in charge for no obvious reasons and complete lack of respect for one's worth and work.
Total chaos! And believe me that that isn't unusual! It is pretty common place!

Antonio Louro
+4  A: 

I like it at my place but as we're consultants we go out and work for others and this is what disturbs me most at those places:

  • Always working on legacy code and never developing anything new.

  • Working on legacy code with no testing what so ever.

  • Using old tools.

Niklas Winde
+1  A: 

The lack of people working in the same area.

+2  A: 

I work for a large company after coming from a small outfit, and the one thing at the top of my long list of frustrations is accountability, or more specifically, the complete lack of it. It all too easy for some other person's or team's lack of planning or competence to become my emergency. Without accountability this situation never gets rectified, it just perpetuates and that kind of frustration can quickly lead to a complete lack of motivation and the whole 'I love my work, but I hate my job', mentality.

+1  A: 

Hiring a professional developer, but then not taking their advice.

"Oh sure, some random admin from another part of the company knows more than you do about web usability."

Cory Dee
+4  A: 

Coworkers that fart too much

+6  A: 

Salary levels and position based on years of "experience" rather than demonstrated skill.

Oh yeah, I see this everywhere *sigh*
Dmitri Nesteruk
Could not agree more, I have seen few good meritocracies if you know of one please tell me where to send my CV

not having anything on this list.

+2  A: 

When some moron in a business line I've never even heard of (MBSs?, CDOs?, CDSs?, etc.) blows himself up and takes down the rest of the company (including my business).


Marketing people showing up in the lab in the Friday afternoon, asking fot three product demo to be ready on Monday morning, 'cause the CEO must go overseas with some new shiny gadget to show.

And no possibility for a little more time (yes, three demo for scratch...)


Predominantly male workplace with only 3 people in their 20s (all guys).

Other than that, everything rocks!

+2  A: 

The narrow-eyed focus on software features, forgetting that we're in the business of solving problems, not lengthening the feature checklist. Thankfully minds are beginning to open up on this topic.

Joeri Sebrechts
+7  A: 

Warning management about an upcoming problem - only to be ignored.

Then three months later when the problem manifests, hearing the question "Why didn't anybody see this coming?"

Matt Brunell
That's why it's always good to warn per e-Mail to have a written confirmation and to be able to suggest improvements to the communications flow (Important: The "I told you so!!!" attitude almost always backfires, use the more humble "Hey, as this seems to have gone unnoticed, i suggest X, Y and Z".
Michael Stum
+1  A: 

I work in an open war room. Most of my colleagues are great. However, some lack basic etiquette, and it drives me crazy:

  • never using 'please' or 'thank you'
  • never asking 'do you have a minute?' or 'are you interruptible?' before a question
  • not observing that everyone else leaves the room when they take a call
  • some bodily-function issues that make me feel like we've been reduced to Lord of the Flies
Michael Easter
+1  A: 
  • A really messy legacy codebase made for nonprogrammers

  • Meeting-itis

  • Coworkers interfering with my tasks at hand; showing lack of confidence in my results (no matter how good results at all...)

Alex. S.
+3  A: 

Several of the "senior developers" at my company (myself included) also do double-duty as "account managers", the direct client contacts for everything from day-to-day support issues to longer term enhancements.

We're constantly interrupted by phone calls, meetings or coworkers that require attention on almost everything but programming.

+1  A: 

Our outsourced IT systems are so user-unfriendly that even a cowboy physicist programmer could write something more user friendly.

Ian Hopkinson
+22  A: 

Not understanding how programmers work -- that context switching is expensive, and celebrating "heroes" who put out a fire rather than those who design the house to not catch on fire in the first place.

Good point on the understanding. As a corellary, assuming that most of what a programmer does is translate specifications to code. Even if we had a solid specification, I find that most of a programmer's day is spent fighting with the technology or researching an approach. Coding<1hr per day.
+1  A: 

17" monitors. What century are we living in? I had to buy my own bigger ones.

I feel your pain :-(
+3  A: 

I've become irreplaceable. I recently saw four people promoted to higher paying positions. I was not considered because they don't have anyone who can currently replace me. Of course they won't hire anyone for me to train the issue of being irreplaceable never seems to come up when deciding on pay increases.

Jim C
Can't you bring up the point that you are irreplaceable and ask for higher pay? If I were irreplaceable I would do that or I would start looking for something else to do.
if you get another job offer they will be forced to pay your more. Unless that is of course you are not irreplacable :-)
+2  A: 

I mostly work from my own home office, but what frustrates me most about some of the clients I do work for, is the almost complete lack of forward planning or even purpose. They want the latest web site gizmo, but they don't know why, other than they want it.

+3  A: 

The loudmouth managers sitting right behind me, who refuse to close their office doors when yelling at someone on the phone. They constantly distract me and then wonder "why isn't it done yet?" (even though they have no technical background and should never, ever, ever make estimates).

+2  A: 

OK, I hope this isn't legally binding :-p:-

  • The fact that it's an internal IT department meaning software quality is horribly compromised. This simple fact means that I, as a developer who's actually passionate about programming, will never be happy until I work for a real software house. Joel Spolsky wrote about this very well:-

Internal software only has to work in one situation on one company's computers. This makes it a lot easier to develop. You can make lots of assumptions about the environment under which it will run. You can require a particular version of Internet Explorer, or Microsoft Office, or Windows. If you need a graph, let Excel build it for you; everybody in our department has Excel. (But try that with a shrinkwrap package and you eliminate half of your potential customers.)

Here usability is a lower priority, because a limited number of people need to use the software, and they don't have any choice in the matter, and they will just have to deal with it. Speed of development is more important. Because the value of the development effort is spread over only one company, the amount of development resources that can be justified is significantly less. Microsoft can afford to spend $500,000,000 developing an operating system that's only worth about $80 to the average person. But when Detroit Edison develops an energy trading platform, that investment must make sense for a single company. To get a reasonable ROI you can't spend as much as you would on shrinkwrap. So sadly lots of internal software sucks pretty badly.

The other problems pretty much stem from this one. I also feel rather trapped in internal software atm too. :'-(.

  • Lack of code review and properly enforced standards meaning code quality is extremely variable.
  • No bug tracking so problems keep on coming up and you simply forget how to deal with them, also there's no log of what's been keeping us busy and what hasn't. Not good.
  • Lack of regression tests for the majority of existing software including critical systems, meaning breaking changes are common.
  • Being second-class citizens in the company as a support department, since you're a very expensive department and you make the company no money.
  • Working on very boring CRUD problems all day.
  • Having experienced contractors telling you that it's like this everywhere they've worked... (in internal IT)
  • Having financial pressure meaning you pretty much have to stay there for at least a fair while longer.
  • Never being allowed to refactor code, ever, regardless of atrocious quality in some instances.
  • Dealing with accidental complexity all day and perhaps 5 minutes of some inherent complexity.
  • Feeling like there's no way out...
I feel your pain!
god i know this!
+1  A: 

Internet filtering softwares !


working hours: from 9 to 5 instead of 8 to 4. when you get back home it's really late


Lack of basic organization. For example, not being able to plan a three hour session for a talk by an expert. Not organizing work streams relative to release schedules, not using the perfectly adequate bug tracker.

Simon Gibbs
+1  A: 

Working for a very large company that is unwilling to buy decent hardware... as a software dev i have a PC on my desk that is the same spec as everyone else in the company.... and 2nd monitor? Not a chance.


Multi-location. I am supposed to be responsible for the technology and architecture of four teams in three locations (in three different countries). FFS.

+1  A: 

That I don't have one.

Sky Sanders
  • All jobs have time quoted for them and MUST NOT over-run;
  • Customers changing their mind halfway through a project meaning you have to start again;
  • Working for a small company - all the computers/screens etc are completely different and have their own quirks;
  • Also related to working for a small company - sometimes not getting paid on time because customers feel like they don't have to pay on time :(
+1  A: 

Really annoying and loud ringtones.