I'm doing 90% maintenance and 10% development, is this normal?
programmers.stackexchange.com
I'm doing 90% maintenance and 10% development, is this normal?
1–10 of 58 posts
Re: I'm doing 90% maintenance and 10% development, is this normal?
#2Re: I'm doing 90% maintenance and 10% development, is this normal?
#3It's quite different from the amazingly rapid pace of fresh empty-text-file blue-sky development.
In the referenced article though, the person was told he was not allowed to do any proactive refactoring and was only permitted reactionary last minute emergency fixes to bug reports (to paraphrase and expand on what he said, but I am fairly sure this is accurate). That... is a very unpleasant and counterproductive set of restrictions.
Without those restrictions, maintenance can be used to gradually convert a giant mud ball mess of hectic changes and poor architectural choices into a robust foundation for future development and a well documented code base that is a joy to work with.
With those restrictions, you're constantly putting out fires with a blanket and a bucket of water, but not allowed to buy a firetruck, pass construction safety codes, or establish a network of fire hydrants.
Back to the person in the referenced post, given that he is currently the sole maintainer of 4 different mudball applications, has written 4 applications there from scratch, and has 2 new apps under development and 5 more scheduled immediately after, and will be responsible for maintaining all 15 apps, he is clearly very talented and will soon completely burn out.
But for him all these details are completely irrelevant anyway. The only important part of his post is this: "My salary is almost equal if not lower then that of a cashier at a supermarket." This is the most important thing he has said and makes the next step he should take clear, and all these details about maintenance unnecessary details.
Re: I'm doing 90% maintenance and 10% development, is this normal?
#4You could gain experience from that.
Re: I'm doing 90% maintenance and 10% development, is this normal?
#5If development is done properly, "maintenance" isn't some massive chore. It's pay-as-you-go and takes the form of proper testing, early design review and refactoring, and a shared sense of responsibility for the upkeep of the code (none of this "give maintenance work to the juniors" attitude).
When a company decides to put its junior people on full-time maintenance to have them pay their dues, it's setting itself up for failure. Unskilled maintenance makes the code worse. Unmotivated maintenance makes the code worse. Finally, even in the best-case scenario where the junior programmer is motivated and skilled, he still doesn't have the clout to do maintenance properly, which often pisses off people who depend on ill-thought-out features.
Ideally, people who care about an asset (i.e. who use it) should be the ones to maintain it. Ideally as well, the maintenance overhead should be small enough that the "stakeholder" can perform this maintenance pay-as-you-go at the same time as doing other things. Maintenance is really only done well (and if it's done well, it improves rather than "maintaining" the code) when done by people who have reasons to care about the system they're maintaining.
Once a project's maintenance overhead is measured in X full-time developers where X >= 0.5, it's time to stop pissing away time and money and motivation and kill -9 that sucker. The warning range is 0.25 to 0.5 full-time developers. If the maintenance burden is in this range, it's time to get a competent person into fixit mode (not "maintenance", but active improvement and refactoring) immediately.
Here's my somewhat long post on the topic: http://michaelochurch.wordpress.com/2011/09/23/taxation-with...
Re: I'm doing 90% maintenance and 10% development, is this normal?
#6Re: I'm doing 90% maintenance and 10% development, is this normal?
#7Re: I'm doing 90% maintenance and 10% development, is this normal?
#8Re: I'm doing 90% maintenance and 10% development, is this normal?
#9Yeah, that's totally normal for a mature application. Better get used to it.
> At this moment I'm slightly beginning to get crazy from the daily mails of users (read managers) for each application I have to maintain.
Maybe not normal, but common. It's really up to you to manage your business relationships and teach people how to work with you. How well you learn to do so will largely determine your happiness with your career.
> The sad thing is I have yet to receive a bug report on anything that I have coded myself...
Don't get cocky now. It'll happen.
> P.S. My salary is almost equal if not lower then that of a cashier at a supermarket.
That's not normal. Even a first job should pay better.
In summary: demand more money now, give up on the code quality crusade, and concentrate on learning to work with people.
Re: I'm doing 90% maintenance and 10% development, is this normal?
#10I work in an industry where data exchange standards are updated frequently when causes updates to old code. It isn't sexy, but it also isn't bug fixes either. Some people may call it maintenance, some might not.