I have been working as a maintenance programmer for a couple of years and am wondering if there is such a thing as a raise for maintenance programmer? I ask because responsibilities don't get wider, you're still doing almost the same things, maybe a little faster as time passes. If it's possible, then what would be the path to get it?
-
1It depends what you're maintaining. I've worked in places where the "maintenance" programmers pretty much could set their own rate. Look at some old Cobol programmers, they're racking it in, because they've been around so long, they're the only ones who know how the application work. – RoboShop May 05 '11 at 12:46
-
8Have you asked for a raise? Talked about it with your manager? Asked your manager what it would take to get a raise, and what the career path is? Your value is almost certainly increasing as you get better at maintaining whatever system through familiarity, if nothing else. – David Thornley May 05 '11 at 14:09
-
4If your company doesn't have a upgrade path for you. Get a new job at a new company. – May 05 '11 at 15:52
-
I agree with Jarrod Roberson. – Sep 16 '11 at 20:40
12 Answers
I think it is reasonable to expect raises in line with inflation at least. It is also more than reasonable to expect raises reflecting your increased experience and knowledge of the products you are maintaining. However without changing job roles (and this is true for anyone I feel), be it to a new company, or with the same one, you are not going to get large raises.

- 3,426
-
I think that your comments are probably true for large companies. I have received a large raise without a change in role at a small (<100 emloyees) company. – Eric Wilson May 05 '11 at 12:56
-
@FarmBoy if you don't mind me asking, why did you get that raise then? I tried to think of caveats to my answer but the only one I could think of was for graduates in the first couple of years, generally their salaries go up in larger chunks as they go from 0 to 3 years experience. – Kevin D May 05 '11 at 12:59
-
2I've received large raises at both small, medium, and large companies. It really depends on the management, and how much they are willing to go to bat for you. Some managers just don't stick their neck out for anyone. Others truly value good workers. – Berin Loritsch May 05 '11 at 13:00
-
I was working as a consultant, and it became evident that the client company was willing to pay me significantly more than my current salary. – Eric Wilson May 05 '11 at 13:02
-
2@Kevin D, large raises go with adding value. When a company realizes that you provide more value than you are getting paid, and they don't want you to leave, they will compensate you accordingly. Sometimes that's due to what the company invested in you, sometimes that's due to the fact that they didn't realize just how good you were in the interview. – Berin Loritsch May 05 '11 at 13:02
-
It's sad that the highest voted answer is essentially: Don't bother to try hard, just hope for cost-of-living increases. – Eric Wilson May 05 '11 at 13:41
-
@Farmboy that was never the intent of the answer. The question indicates no increase in job role, or much of an increase in performance. Of course the better you are at your job the more chance you have of a pay rise, however your pay is relative to your skill set, if your skills are not improving, and/or your skills are not increasing in demand, expecting large raises is just wishful thinking. I'd caveat this with the assumption that you're getting paid market rate. – Kevin D May 05 '11 at 13:59
-
@Farmboy if anything the answer does say "try hard". I specificaly state is is reasonable to expect increases in pay as your skills improve. – Kevin D May 05 '11 at 14:00
-
@Kevin D: Depends on market rate. It can fluctuate. Market rate for junior people might include a risk assessment that they might not have what it takes. Somebody else familiar with the software may leave, and the OP is suddenly more important to the company. Your basic point is correct, but it's more complicated than that. – David Thornley May 05 '11 at 14:15
In any case, in any vocation, the way to pursue a raise is to pursue excellence in your craft, and to strive to provide the greatest value to your employer.
For the maintenance programmer this means that you strive to makes things better, whatever things are within your control. Even when no new functionality is required, you can make the code better, more readable, more maintainable.
Of course, your manager won't look at your code, but the goal is to reduce the cost of change, and reduce the defects introduced with changes.
Look at the worst part of the system, get tests that cover all of the desired behavior, and then refactor until it's understandable and easily modifiable.
For more details, check out the following:

- 12,071
-
7"In any case, in any vocation, the way to pursue a raise is to pursue excellence in your craft."
This is aspirational rather than practically true. Most companies concentrate on paying as little as they possibly can.
– temptar May 05 '11 at 12:45 -
2Sure, but if you are becoming more skilled, your market value will increase, and your company may need to pay you more just to keep you. – Eric Wilson May 05 '11 at 12:49
-
2@temptar: If the company isn't valuing the work I'm doing then it's the wrong company for me and I should have chosen another job in the first place. – Christian Seifert May 05 '11 at 12:50
-
This is all fine and true. In a lot of places, however, the reality is different. If it weren't, managers would not necessarily be given a higher economic value than sysadmins. – temptar May 05 '11 at 12:53
-
3@temptar: companies that want to pay as little as possible will get as little skill as possible too. It's a race to the bottom. Avoid such companies if you have more lofty goals with your life. Otherwise prepare to be outsourced. – Macke May 05 '11 at 13:31
-
3The way to pursue a raise is to pursue excellence in your craft, and make sure your manager knows you're more valuable and want to get paid for it. I got the same bad advice through elementary school: don't toot your own horn, other people will recognize your ability and accomplishments anyway, that sort of thing. In the real world, if you want to get rewarded, you show why. Giving real reasons will be easier than making something up, and will make you feel much better about it. – David Thornley May 05 '11 at 14:13
-
@DavidThornley I wasn't trying to say "don't toot your own horn" just to emphasize the importance of excellent and valuable work. I completely agree that you also need to make it clear that you are worth more money, when that is the case. – Eric Wilson May 05 '11 at 14:31
-
@DavidThornley I totally agree. I made the mistake of being "modest" on my first evaluation on my first real job out of school. Despite receiving high praise from my managers, they were quite happy to concur with my lowballed self-evaluation and give me a meager raise. I never made that mistake again. – mwigdahl May 05 '11 at 21:23
-
There seems to be a certain amount of naiveté about business practice here. The assumption that the company will pay you what you're worth crashes into the reality that what they think you're worth and what you think you're worth often does not align. Bearing in mind that outsourcing is becoming more and more typical, and that most management are not equipped to identify who is "good" and who is "important" to hold onto, the simple fact is that a lot of companies do let good people go because they do not recognise unique values. – temptar May 06 '11 at 09:00
-
@temptar -- The company will generally try to pay you the either what they think you're worth or what you think you're worth, whichever is lower. Whether either side is correct in these evaluations is up in the air, of course... :) – mwigdahl May 13 '11 at 16:55
It's difficult to answer this question because a lot depends on:
- Corporate culture
- Regional laws
- Office politics
Essentially, you should be able to expect cost of living/inflation increases. Despite the name, they usually increase more slowly than inflation.
Assuming your company has merit increases or bonuses, which is what the three bullet points are about, increasing your odds of getting a slice of the merit pie will boil down to the following:
- Knowing your client so you can anticipate their needs. In maintenance there is usually a bit of downtime between releases, and this is a good time to "play user" with the software you are maintaining. Try to solve the problems they need to solve. Think about how the software could support that better.
- Adding value to the software you are maintaining. If your suggestions from the first bullet point get implemented, you get the credit. That means you are adding more value to the company than the guy next to you who just puts in their straight 40 hours a week.
- Sucking up to the boss. Sadly, some companies are more politically charged than others. This is a point that only gets you so much, and one I personally can't do. If I agree with my boss, I'll support him/her. If I don't, I'll bite my tongue when we are with a client, but I'll express my concerns afterwards directly to him/her. Some people rely on this though. The first two bullet points have served me well so this one hasn't been needed. Some bosses want you to do this, others are quite offended if you do. Those are the types of bosses you want, because they are more concerned about the first two bullet points anyway.
Bottom line, if your company doesn't or can't do merit increases or spot bonuses for good work, it doesn't matter what you do at that company. However, when you do change jobs (an inevitability, not advice for the situation), the other company usually will have preference for people who add value and can get inside the head of their clients. That will influence the starting pay they will consider giving you.

- 46,104
In a lot of companies, the only way is to leave and go somewhere else. This will either a) result in a higher salary elsewhere or b) a counter offer in recognition of your value.

- 2,756
-
3Needless to say, this is a very dangerous strategy to use to try to get a raise out of your current employer. You have to be perfectly OK with leaving if you try this. – mwigdahl May 05 '11 at 21:24
-
I would concede that. But I would also hope that prior to asking for a raise within the company, anyone would have considered their options in the event of a refusal and that typically involves considering leaving at that point too. If you want to play it safe, you want to play it safe, either which way. – temptar May 06 '11 at 08:58
-
A counter offer in recognition of your value can be a ploy to get you to stay just long enough to train your replacement. – Oct 04 '11 at 17:14
Assuming that you are getting better at your job - finding problems more quickly, implementing fixes that don't cause additional problems, and generally making the application better then you have a good argument for a raise above and beyond "cost of living".
If you can point to any specific things you've done that will help. These could include (for example):
- Fixing a bug that was causing a customer to threaten to leave.
- Implemented a system that reduced installation errors.
Show where you've added value to the company.

- 38,938
The rule is the same for all jobs: you'll always get a bigger raise by moving to another company.
Why? In part, because you can keep turning down offers that are 2% over your current salary, or 4% over your current salary. In part, because the incentives are different for the two employers--one wants to pay the least that will keep you from leaving, the other who wants to pay you enough to make you switch.
Accepting a role at a company should never mean that you agree to never get a raise. Who on earth would ever accept a position like that but the least qualified or most needy? Certainly an employer would prefer to get maximum output from their employee and never provide any raise; the opposite is also true: the employee would like to get as much money as possible while giving as little time and energy as possible - this gives rise to economic terms such as equilibreum, etc.
In the end, if an employer is interested in keeping an employee, they will provide incentives to stay. Ask for the raise. If your employer does not feel that you deserve it, they will deny your request. If they don't value you enough, then you move on, and find some better use for your time.

- 923
-
Another reason technical stay with a company is that their job duties are so specific that no-one else is really looking for these very specific skills. – Oct 04 '11 at 17:17
Your rate is what you negotiate when you first interview for a job. Speaking from personal experience, raises have not netted more money in the same way that new jobs have.
You need to start thinking in terms of labor economics (supply and demand).
When you believe your labor (your education, experience, skills,
what you are able to do) is under-valued:
- Look at the market for your particular skill set.
- If there's a strong demand (due to a shortage of labor) change jobs.
- If there's weak demand, stay in your current job and learn other skill sets (with strong demand) on the side.
While you are trying to assess the labor market for your particular skill-set, you will observe that other skill-sets (experience with particular software packages, programming paradigms, etc) are "in demand". By "in demand", I mean that there are a lot of jobs posted for those skill sets with rates considerably higher than what you're getting.
This is called doing a labor market survey.
You need to find what the most "in demand" skill sets are. Make a spreadsheet with the skill sets you encounter on job boards (indeed.com, dice.com, monster.com)
Next to each skill set, list the count of jobs currently advertised (in your local area radius if you're not willing to move).
Go down the list and research each skill set. You may find that a lot of the skill sets that are "in demand" happen to require proprietary software that you have no access to (i.e. costs lots of money, you need to enroll in an expensive training course). Write down the investment required (time and money) for you to acquire each skill set in your skill-set "market survey" spreadsheet.
You may want to avoid skill sets requiring an unreasonable investment.
Find the best skill sets (most jobs, best rates, least investment on your part) and go about learning these on your own while keeping your current job.
Then apply for jobs and interview. You can schedule multiple interviews during vacation days. Be prepared to drive a lot, be prepared to be thoroughly grilled on the newly learned skill set and be prepared for rejection. Don't give up.
If you do get a new job after interviewing, you will have a good bargaining position with your current employer.
You can start thinking of your current employer as your "client #2" and your new employer as your "client #1"
Ask for a raise at your current job to match the hourly rate you negotiated for at the new job. Be polite but strong. If they nix the raise (the rule, not the exception) politely give 2 weeks' notice. You may get called in for an exit interview. Explain your position and let them know that you are happy to do maintenance work on the side/part-time, at your new hourly rate.
If they ask you back full time for more money than your new job, politely refuse their offer. More often than not, this is their ploy to get you to stay long enough to train your replacement.
Again, be polite but strong. Do not explode. Do not burn bridges. Client #2 may still need you and you can make some nice money forking for them part time or telecommuting for a while.
Keep repeating the above recipe until you feel that you have "topped out". You "top out" when you no longer have more money to gain from learning a new skill set.
Be prepared to work long hours and to negotiate a lot. Your clients (#2,#3,#4,#5,...) will have a lot of work for you to do.
P.S.: Never train your replacement.
The worst self-inflicted injury technical people make is training their replacement.
What it boils down to is that you need to apply market rules to your situation.

- 658
- 5
- 8
-
Always train your replacement. If you don't have a replacement, you can't move up. – Scott C Wilson Sep 16 '11 at 22:57
-
Training your replacement is really your judgement call based on how you see the future performance of your company. Suppose you train your replacement. Now there are two employees with the "same" skill set. That's redundant. If the company is growing and profits are up, redundancy means that the more experienced employee moves up the ladder to bigger and better things. If profits are shrinking and reducing overhead is the first priority, redundancy means that the more experienced (and better paid) employee is axed. You would have had a job had you not trained your replacement. – Sep 19 '11 at 16:50
I would say yes it is possible. You have to sell yourself to your employer and show them your value to the company.
Because you are maintaining their software, you have a knowledge of the codebase that someone new doesn't have. If something were to go wrong, you have the experience and expertise to fix the issue. You as you gain more experience, you get faster at fixing issues which will affect the company's bottom line.
This sort of knowledge and experience they can't just get from a new hire, it's something you've gained from working with the system and knowing the software.
You just need to sit down with your boss/manager and discuss the issue and sell yourself.

- 9,528
-
The above holds true if your boss/manager is sophisticated enough to understand that "programmers" of varying technical experiences and backgrounds are not interchangeable like "gears in a clockwork mechanism". Unfortunately, that level of sophistication is sorely lacking in management today. All the more reason to move into consulting. You sell yourself, you set your rate, you set your time. – Sep 19 '11 at 17:00
You're only going to get a raise depending on what is going on at your company and the surrounding job market. Maintenance contacts can be very profitable for a company or you may be working on a project the company intends to cancel.
- Justify your value and present it to your boss before asking for a raise.
- What is the company's financial situation - are all raises frozen?
- Has anyone else received a raise assuming they deserve it as much as you do?
- How hard would it be to replace you?
- Are you able to find a comparable job & salary?
- Does your company value what you do or are you just a replaceable gear.
An application will barely exceed in complexity with your ability to manage it.

- 36,816
Innocent question. In these days of competitiveness, if you do what is expected, you are at the mercy of your superiors. Think it is wrong. Think again. It really isn't bad. Your urge to 'whatever', be it a pay rise or better recognition will force you do something different constantly, thus bettering yourself continuously. It is this that changed my life for better and frankly I'm not satisfied with what I'm today. There are miles and miles to go, before I sleep :)
Heck, how can I be different? First thing, measure your current delivery metrics in terms of speed, volume and quality (that can be measured or experienced). See how better you can improve your delivery metrics. This alone can be the differentiator. Wish you good luck!

- 475
-
Excellent advice. Continuous self improvement is the Japanese philosophy of Kaizen – Sep 19 '11 at 16:43