I'm a web developer who works primarily building clients' sites and web apps. At least, that's what I was hired for. There are 3 developers at this shop, and 2 "piles" of work, new development and maintenance.

We build sites using a CMS (Content Management System); we train the clients in the usage of the CMS, but none of them ever use it. Instead, they hand us 70 page word documents full of paragraphs of text, and they give it to us to input into the system.

Instead of having somebody in a position specifically to do fixes such as this (there is most definitely 40 hours/week of "2nd pile" work to do), they assign it to the developers to do.


  1. Developer #1 is the "senior developer", rarely ever has to do this. I can somewhat respect that given his seniority, but personally only think it fair that he occasionally help out with second-pile work, especially considering his overall skillset is comparable if not smaller than the 2 other developers.

  2. Developer #2 is of the same seniority as me and has been there only slightly longer, and has a smaller skillset. He gets his fair share of the "2nd pile" work, but not quite as much as me.

  3. Then there's me, developer #3. I have been doing "2nd pile" work, almost exclusively content input, for over a month now. This is not what I was hired for or what I had in mind when I agreed to leave my old job for here.

I understand that there are bad parts 'grunt work' in any job, and that I have to do my fair share. The issue is that, in my opinion, I'm doing more than my fair share, and that the work isn't distributed evenly among team members.

So I guess my question is: at what point is it appropriate to approach a member of management with concerns about how they are distributing the workload?

  • 3
    Your question is in no way specific to programmers; this kind of thing happens in many companies, in a wide range of disciplines. Ask your supervisor for mission-critical programming work that will naturally take precedence over the grunt work, or fix the CMS; if it's really that difficult to input data into the CMS that the customers get you to do it and it's too onerous for you to do it with a few clicks, then the CMS is too hard to use. Dec 9, 2013 at 21:36
  • @RobertHarvey: I disagree. This question is very much specific to programmers. Program maintenance - although generally unpopular - is mission critical programming work. It is not grunt work. But making this distinction is definitely out of scope of workplace.
    – back2dos
    Dec 9, 2013 at 21:42
  • @back2dos I'm mostly talking about the content input, not the maintenance programming. The maintenance programming is simply part of the job. Dec 9, 2013 at 21:46
  • After you file your resignation probably then only you have some chance of being heard
    – amar
    Dec 13, 2013 at 6:30

4 Answers 4


We build sites using a CMS, we train the clients in the usage of the CMS, but none of them ever use it.

So the problem here is that the clients are getting free data-entry out of your team. Normally, data-entry is to be done by the client once the tools are completed, but that has to be specified in the contract, or they can try to get you to do it. I've seen it happen.

I'm guessing your manager doesn't think this is a problem, but maybe you should phrase it something like this:

If we can ensure that clients will do their own data-entry and content-management, then I'll have more time to work on coding projects or bug fixes and that will enable us to pick up more clients, and then more money!

Putting it in terms of wasted time and lost potential profits might make it seem more important to the management team.

In the meantime, have you looked into building a tool that can automatically load their content to a database? If they send you a word doc, maybe you could separate the parts into text files, and then write a little script that loads them to the appropriate part of a client's site. Not sure how easy this would be without knowing more about the details of these CMS sites, but it might help.

  • 1
    While the answer is good and is the right thing to do, sometimes the real world interferes. It definately depends upon who is paying for the pile #2 work? If the customer is paying then management might not be very happy to find out that they've just lost 90% of their billable hours because a developer automated the process.
    – Dunk
    Dec 9, 2013 at 22:58
  • 2
    I doubt the client really pays for all these hours. If the client had to pay development fees for data entry hours, they would just hire their own people to do it, and it'll be much cheaper for them.
    – Idan Arye
    Dec 9, 2013 at 23:55
  • @Dunk: I guess it depends on the situation. If the data entry is more lucrative than the other stuff, I can see how they wouldn't be so eager to stop. Dec 10, 2013 at 0:13
  • 1
    @IdanArye - don't bet on it. I've often seen clients pay hundreds of dollars for a couple of billable hours to literally get one word changed on a CMS website. The person requesting the change isn't spending their own money, after all, they're spending their employer's money. Dec 10, 2013 at 0:53
  • @Carson63000 Changing something on the website - that I can understand. The client can't change that single word(otherwise they would have done it themselves, because it takes less effort to change that one word than the contact the developers and explain what needs to be changed). The price not a matter of how much effort it takes - it's a matter of how much the client wants it. But data entry? That's something the client can do, and it's also something that happens regularly, which means it goes into the budget, which means it needs to be justified to the higher-ups.
    – Idan Arye
    Dec 10, 2013 at 1:47

This is not an unusual problem, it is really indicative of bad management, so going to management may have limited results, but it is really your only recourse.

You should try and schedule a meeting with your manager. As a new employee you really should have several of these anyway in the first few months.

Don't threaten to leave or anything, but explain your dissatisfaction and that the job was not sold as a support or data entry job, but a programming one and you feel that the work load should be more balanced. It is not being unreasonable to ask the lead engineer to take as much as 30% of that stack 2 stuff.

Additionally, they should be aware that customers are taking advantage of their support agreements. Management may be charging for this or may not. Ask, I mistakenly thought one time it was bad for our business only to find out most of the client charges were this kind of work.

Lastly, you may want to start looking around again. If it was just recently that you were looking you may be able to find something faster if you start that machine up again. You don't want to wait a year or two down the line and find all your skills gone.

  • why is it not unreasonable to expect the senior to do this work? A good answer on SE explains why not just the what. I also think you underestimate how willing management is to make sure they long term knowledge is happy and sticks around. When you jump ship you are not going to be assigned the top tier work right off the bat at your new position either. You are going to have to prove yourself all over again. What is the difference spending another 6 months at this place and get the cred for the whole or spend 6+ at a new place trying to get back to where you were. Dec 13, 2013 at 4:14
  • There is a difference between getting cred for your programming and for doing data entry. There are many many many entry level positions that involve a better balance than is described here. Dec 16, 2013 at 18:54
  • 1
    That should be fully explained in your answer. And if you are going to suggest that the op find a new position you should probably include how to find one that will honor his skillset. Dec 16, 2013 at 21:37

So how many years has the sr. dev. been doing this type of grunt work with the promise they'll "soon" hire another jr. devs to take on this type of work? Doesn't make it right, but it would explain it.

I don't agree with misleading you during the hiring process, but you could be dealing with people who have been doing what you're doing for a much longer period of time and see this as sort of a vacation and the new guy has to pay his dues.

You shouldn't go over the sr. dev's head just yet. Acknowledge that you're not doing the type of work you thought you would be doing and try to find out how long this will go on. See if you can speak to clients about the tasks they may be paying a developer to do and see if it is a communication and/or training issue.

Unfortunately, they type of work you're doing means you're easily replaceable due to no fault of your own. If you feel there is no chance to change this or the time-table is exceeded, you may need to go to a higher-up.

Please try to leave this job in a better place than you found it, but it is understandable if you have to move on.


If the "senior developer" thinks that work assigned to his team is beneath him, that's a poor teammate. Putting yourself over the interests of your co-workers is a bad sign. I was reading "An Astronaut's Guide to Life on Earth", where the author (who commanded the ISS and has a lot more skills than any of us here on this site, I suspect), was explicit in saying that this kind of behavior is destructive to a team. He mentions one astronaut who got on an elevator and wouldn't press the button because he "didn't become an astronaut to push elevator buttons".

Don't be that guy. Do the grunt work while advocating for a change in policy that doesn't separate out work this way. There should be one pile of work for everyone. Not one pile for the cool kids and another for the scrubs.

  • 1
    The question did not ask you to judge the senior. You have a single sentence that belongs in the answer but does not explain why. Dec 13, 2013 at 4:18
  • I actually disagree strongly with this. If a company hires a senior developer, presumably paying them more money, they want them to be doing the tricky work not the grunt work. Nobody would hire a senior developer and then get them to spend half their time doing content input, it makes no financial sense. I agree that the situation the OP is in sounds like false advertising of the position though. Dec 13, 2013 at 10:32

You must log in to answer this question.