32

I work at a relatively new startup. I work with a particular language known for its high level abstraction, and my coworkers work with other programming languages. Now, I am relatively skilled at a particular language and can get substantial amount of modules written fairly quickly. I have always managed to submit the work assigned to me on/before time, but my manager has taken this as a sign of "what I do is easy".

I considered artificially inflating the time taken by me to do something, but I think this is unethical and did not do this. My coworkers (working at the same level as me, in terms of payscale) are fairly new with some of this and take a lot of time for getting simple tasks done. Now I understand that they work with languages which offer a lower level of abstraction, but they are nonetheless potent and useful. As a result of this, a lot of their work (like scripting, automation etc) is given to me because of their thought that "It will be easier to be done in the language you work in". But they do not realize that it has taken me years of experience and intense hard work to reach this level of fluency in the same, and is complicated in its own respect. But my coworkers/managers do not understand this.

At any rate, I do not wish to be unhelpful to my coworkers. I too was a junior programmer once upon a time with little or no experience, and I might myself be one compared to many of the great programmers out there. But I do not wish to see my proficiency in a language be read as it being "easy", nor do I wish to be made a mule to work on menial tasks. Kindly help me out with a solution to this predicament.

EDIT:

I appreciate everyone's responses, would just like to clarify a few things:

  1. The problem is not with my coworkers working more/less than me. The problem arises when their "taking more time to solve a problem/code" something is equated to their work being more complicated, and I would not for ethical reasons try to lie about how much time it took me to do something.
  2. I would understand if I was assigned some work meant to be done by others, but after a point, I have become the "Oh you want to automate this? Ask OP, he can easily write a script for this". And it gets repetitive after a point. Anyone who has worked with scripting will understand.
  3. I merely want them to understand that a) Whatever I do is not easy, despite it taking less time. It is intensive work and drains me. b) I do not wish to be judgmental or snide to my colleagues and do not mind helping them. But there needs to be a limit on how long I spend doing their tasks for them.

Is there a way to get this across without burning down bridges?

  • Comments are not for extended discussion; this conversation has been moved to chat. – Jane S Jul 6 '17 at 23:12
40

I have experience dealing with this type of thing, both from assigning work to people and from the stand point of a union representative defending people who have to much work. At the end of the day there is always a clause in whatever contract that binds you that says "Managers have a right to manage". This falls into the scope of that.

It is not your job to decide if the workload has been distributed appropriately. All employees should be working at their 100% capacity. If you finish things faster, it makes sense that more work will be assigned to you. The best thing you can do in this scenario is take it as a compliment. Your boss is taking work from other people to give to you. that means one of two things:

  1. You are performing at higher level than your co-workers
  2. They actually have a lot of work some of which you don't see and they actually haven't gotten to the piece of work yet.

No matter which option is actually going on, you are a valuable part of the team.

I can honestly say, I have never seen it end well when someone complains that they are doing more work than the person sitting beside them. To be honest, it looks kind of petty. There are extreme situations that warrant it, but I don't see that in the question you posted.

The world isn't fair, no matter where you work there will be people doing more/less work than you. This is just a fact. The sooner you get over it and just be the best you you can be, the sooner you can be happy with your job. I sympathise with you as I am usually in a similar boat, but I take it as a compliment and carrying on. It can be very frustrating at times, but ultimately, there is nothing you can do about it.

Also, your boss knows this isn't easy. If it was, the other guys would be able to do it. If that part really concerns you (that your boss thinks its easier for you), consider sitting down with your boss and just saying something like:

its not easier for me to do I just have a lot of experience in the field. I don't mind doing it, but I just wanted you to know that it is not easier in python

  • 23
    I agree with this completely but would like to add that in situations like this, a raise is reasonable, after all, the asker claims to have more experience, as well as a higher workload, compared to this coworker that get paid the same. – Syzygy Jul 5 '17 at 14:47
  • 3
    @Syzygy are you sure the coworkers are paid the same? Aren't you assuming too much ahead of what was stated? – Mindwin Jul 5 '17 at 16:12
  • 6
    @Mindwin, the question states both that the coworkers are "working on the same level in terms of payscale" and "fairly new with some of this". Unless I misunderstood. – Syzygy Jul 5 '17 at 16:22
  • 1
    By reasonable definitions, it is easier for the OP. That doesn't mean it's not the same amount of functionality. The fact that the OP is so experienced makes it easier, that's part of what having experience does. It, usually, makes tasks easier by virtue of having previously encountered and solved similar issues, etc. The point that is intended to be stressed is that the language doesn't inherently make the task different. However, that is not actually a true statement, in many situations. – Makyen Jul 5 '17 at 18:07
  • 2
    -1 it looks to me that the OP is asking something completely different from what this answer is answering. This answer is about how much work is doled out to each worker. The OP's question is about how to get recognition for the worth of his work, or how to avoid that everyone thinks he is chilling out because he happens to know a language that makes everything trivial (when it is actually his experience that makes everything trivial). -1 again for using the word "petty". Nothing in the OPs post is petty, he actively said he does not want to do petty stuff. – AnoE Jul 5 '17 at 20:28
28

Focus on your own tasks rather than others or their lack.

Either your superiors will notice and you will rise (if they're competent) or they won't in which case you have some insights into them which in itself is valuable.

Usually you wait until you have solid accomplishments under your belt before stirring the pot to see if there is more money in it. You agreed to the pay you're getting, hopefully you also agreed to reviews of your pay/work periodically. Those are the time to push for what you're worth and if they don't think you're worth what others would pay you, you job hunt.

  • 5
    This is really all you can do. Focus on your tasks, keep a list of accomplishments and at some point renegotiate pay or walk. – Mister Positive Jul 5 '17 at 13:10
  • 2
    Yes, and reviews and probation periods are the times to do it, partway through you create all sorts of problems if you try, from budgeting to potential morale issues. Utilising employees to their best advantage is managements role. – Kilisi Jul 5 '17 at 13:27
  • 4
    This is generally true, not just in the software industry. It's quite common to get "promoted" to the level of job that you are actually doing, after you have demonstrated that you can do it! – alephzero Jul 5 '17 at 14:14
8

Since most other answerers don't seem to be giving you the benefit of the doubt, I will; instead of talking about the pride and paygrades that others have touched on. I'm going to talk about potential institutional problems instead.

All somewhat interrelated, there are a few issues that I think your question hints you *COULD* have lurking, which are all extremely relevant that you raise with management if you suspect these problems:

  1. You are the sole holder of certain knowledge in your organization. This is a doozy for technical and non-technical groups alike and can spell doom if you become ill or unable to work for a protracted period (or you simply eventually leave/retire). Cross-training or hiring better talent are the only ways out. Otherwise, your team will wind up with lots of code (written by you) that nobody else can maintain. That's Bad.™

  2. Your coworkers are not skilled at catching fish. This is because you are fishing for them. If some tasks are getting half-completed and then handed to you, or entire categories of tasks are *exclusively* falling to you, that's an overdependence which is both dangerous for them and uncomfortable for you. Bring this up.

  3. You are being underutilized. If you are a skilled programmer but are being asked to handle mundane automation/reports-generation tasks, it may be that your skill in [unnnamed high-level language] is not being used enough because "Hey, champ, you're such a star at everything you do, do you think you can wash those windows real quick and then empty the wastebins?"

To determine whether any of the above problems are looming, I would posit these questions for both you and for future readers in similar situations:

  • Are the tasks you're being assigned along the critical path? If they are, then management may simply be doing it's job by keeping you from sitting idle too much.
  • Is there other work along the critical path you should be getting done in [unnamed high-level language] which nobody else can do that you're being pulled away from to pick up slack elsewhere?
    • If so, is it unnecessary that you personally always pick up that slack right away?
  • Are there types of tasks for which responsibilities exclusively fall to you even though others could/should learn about them?
  • Are there swaths of code which are written in [unnamed high-level language] which could be written in a lower ones that others know?
  • Are others (un)comfortable working in [unnamed high-level language] that you mostly write?
  • 1
    This is it. Help them learn to fish with [unnamed high-level language]. After all, everything is so much easier with [unnamed high-level language], they must be really keen to learn it themselves. – moooeeeep Jul 6 '17 at 7:47
4

You don't actually mind that the work is distributed unevenly. If it was distributed evenly, apparently you would be sitting in your office doing nothing most of the time. What you mind is that you are doing a lot more work than everyone else, and you don't get compensated for it.

So you go to your boss and say "Hey, boss, you must have noticed that I do a lot more work than everyone else here, but I'm not getting paid more. That seems quite unfair to me, so what are you going to do about it"?

Quite possible that the boss didn't actually notice anything. In that case you say, "well just yesterday I did A, B, C and D and finished the work that X didn't quite manage to finish the way before, while X, Y and Z did just x, y and z and nothing else".

If the boss still refuses to believe that you are doing more, you suggest to him to swap the workload around for a day and see what happens.

If the boss still refuses to believe that you are doing more, you then tell him that if this is how he feels, you can always find a job somewhere else that appreciates what you are doing.

  • 16
    While this answer is correct in theory, I am not sure the tone suggested is appropriate in a conversation with manager. Since the OP has several years of experience, I expect he will use the appropriate tone, but if another reader takes it too literally, it could cause problems. I understand that we are not required to spoonfeed complete solutions, but nonetheless I suggest you to consider an edit to choose a suitable tone, or at least post a note to not use this answer word-for-word in conversation with the manager. – Masked Man Jul 5 '17 at 11:33
  • 3
    You don't "do a lot more work". You produce more results for the same amount of work, because you are using different tools. As an analogy, it makes no sense to comparing the output of a worker using highly automated tools in a modern engineering factory, with someone who spends more than a year hand-crafting a single mechanical watch. The relevant comparison is the value they are adding, not the volume of output (and the watchmaker probably wins, by that measure!). – alephzero Jul 5 '17 at 14:11
  • 3
    The problem with your example is there is nothing to say that a, b, c or d are providing more value to the company then item x, y, or z or for that matter even more work. Just because someone may be getting more items completed does not necessarily mean that they are providing more value then someone who is getting less work done. – Joe W Jul 5 '17 at 14:39
1

The work you prefer not to do is still your work if it has been assigned. You need to stop thinking of it as not your work. The job is to get the projects done that the company has not to play in your preferred tool/language only.

You don't get to pick and choose what you want to do especially if you have available hours. They are paying you for full-time and they expect full-time production from you. If you are faster than others to complete tasks, then yes you complete more work but there still should be no expectation that they will allow you to sit idle while other people are busy and there are tasks undone that you are capable of doing. This is not unfair. If you are being paid for full-time, then expect to be kept busy during the normal work hours.

It doesn't matter if you don't like the tasks as long as you are capable of doing them. Clearly if you are a developer for a hospital chain, you can't take over doctor's duties because you are not qualified and you would be justified in refusing those tasks., Just as clearly, you have no leg to stand on in refusing tasks that can be done in your preferred language or another language that you are expected routinely to know as part of your duties (such as many devs need to understand SQL even if it is not their main language).

The gray area comes in when the tasks are for tools and technologies you do not know but could learn relatively easily. In this case, you might be able to refuse the task if you can show the risk associated with having someone less skilled do the work and the added amount of time it would take to do the work.

Even if you make the case, management can still decide based on ongoing needs if they prefer to take the risk. For instance suppose you were a web developer for a medical device company. If they see the need is coming up for less web development work and far more embedded systems work, they may choose to take the risk to train you in the new specialty because it makes you more valuable to them and their expected future needs. Or they may choose to hire someone with that skill set and let you go as your workload goes down. This is often the scenario when a legacy system is being replaced.

So to address what to do. First accept other work graciously when it is given. No manager wants to deal with a prima donna who is too good to do the work they actually need to get done. Next, when you complete tasks, suggest other tasks in your preferred area before they assign you to the ones you would prefer not to have. By having a plan for what you should work on next, they aren't going to throw the next available task to you unless it is a higher priority. But in this business, priorities take precedence over preference and you need to accept that.

Next, sit down with your manager and express to him your preferences and where you want to develop your career. He can't guess what you would prefer to do, so you need to make sure that your preferences are known. A reasonable manager will try to accommodate preferences as far as he or she can, but in the long run, the work available is the work available whether it is your preferred task or not. It is good to make it clear that you are not refusing the tasks and you will do them willingly, just that you are asking he consider your preferences when possible.

Next you need to show your coworkers and particularly your boss how much value you add to the product and that what you do is not less skilled than what they do. So make sure that when you accomplish something, you discuss the complexity in team meetings. Also develop and offer training sessions on the tools you use which will show them the difference between what you do and what they do very nicely. Occasionally share articles about the types of things you do as general interest items. If you have a wiki, document some of the complexities of what you do.

In other words, do the tasks it takes to get credit for the difficulty of what you do and how you do it. Doing the work is not enough, you need to be political in showing the value of your work. Once you do that, then you will find it easier to get pay raises, promotions and better assignments.

0

It's easy to say your job is hard. People tend to roll their eyes. There's one way to avoid this.

Focus on your performance metrics

Hopefully your organization measures employee performance by setting expectations and measuring success against those expectations via quantitative data, a.k.a. metrics. Make sure you know what yours are. Are you measured on code quality? Volume? Timelineness? Are you measured on how well you support your fellow team members, keeping up on new technologies, helping cross train, etc.? You should always know the objectives of your job; if you don't, schedule a meeting with your manager and get them written down.

Once you know what you know what you're measured on, start measuring! If you really are killing it with code quantity, it should be easy to prove. If lines of code doesn't provide an accurate picture (since your language is at a higher level of abstraction, maybe it is also more compact), you can focus on something else, e.g. story points, number of features, or other types of measurements that are neutral with respect to language.

Make sure your other metrics aren't suffering, e.g. quality.

When it comes time for your performance evaluation (a.k.a raise time!), make sure you have these numbers at your fingertips, bring them to the attention of your boss, and make sure your work is recognized.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.