Live data from Hacker News

I'm doing 90% maintenance and 10% development, is this normal?

programmers.stackexchange.com

31–40 of 58 posts

Re: I'm doing 90% maintenance and 10% development, is this normal?

#31
I developed on enterprise PM application on the SharePoint platform (V2, WSS3.0). Over the past year, I have done 3.8% support, and the rest development. I'm quite happy with that.

I've recently been aquired by a larger company who develops a similar product, same windows stack but without the SharePoint flavour. They do an inordinate amount of support. But they do it to themselves - they give their clients the means to beat them up about support: multiple support channels, nd aaggressive SLA's. They have a team of 12 developers and they're always under pressure to maintain their support processes.

Sounds like you need some strategic architecting input: which products are important; what functionality can (needs to) be reeingineered; what's profitable and what isn't; what is a realistic support process, timeframe, etc? Then once you've been through all this, you realise how important it is to design simple, reliable products.

Re: I'm doing 90% maintenance and 10% development, is this normal?

#32
post #19

> (badly coded, developed by multiple programmers over the years, handles the same tasks in different ways, zero structure) Yeah, 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 re…

That's a terrible attitude to encourage. Accepting the status-quo as a junior is a great way to encourage them to never improve or question the more debatable practices. Teaching juniors to care about software quality and software maintainability is hugely important in order to encourage an overall improvement within the software dev industry.

You're wrong. He should accept that where he works, there is no respect for quality, he should embrace that and continue supporting the application in the best way he can without worry about the quality. He should do all this whilst applying and interviewing at places that do care about quality. There's no point in trying to fight the tide at his current company. He needs good references after all.

Re: I'm doing 90% maintenance and 10% development, is this normal?

#33

> (badly coded, developed by multiple programmers over the years, handles the same tasks in different ways, zero structure) Yeah, 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 re…

demand more money now, concentrate on learning to work with people, but do not give up on code quality.

Not entirely, anyway. You can't turn the whole app into a good one in any reasonable time, but when you fix a bug, take time to apply the boy scout rule ( http://www.informit.com/articles/article.aspx?p=1235624&... ) Don't put that down as a separate task that your management can approve or deny, it's part of doing the job of coding properly. That way, at least the buggy parts of the app get better.

You should not be focused only on your career when making coding and tech decisions, but look at it this way: in a year's time, you're in an interview for a job you really want. What are you going to say "I can read and maintain shitty code" or "I can make shitty code better"?

Also consider: documenting your app's architecture (or lack of it) and conventions (or lack of them).

Also consider: reading up on architecture, testing, refactoring and code quality. If nothing else, these will help you get your next, better job. Off the top of my head, try "Domain Driven Design" by Eric Evans, "Growing object-oriented software guided by tests", "Refactoring" By Martin Fowler, and on the last topic "Clean code" by Robert Martin and "Code Complete" by Steve McConnell

Big ball of mud apps (http://www.laputan.org/mud/ ) may be common, but it doesn't have to be that way - you can learn some pitfalls to avoid

Re: I'm doing 90% maintenance and 10% development, is this normal?

#34

No, not even at entry-level. 90% maintenance is a disaster. 60 to 75 percent might be typical for entry-level programmers, and that's bad, but 90 is abysmal. If 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…

Are we perhaps using different definitions of "maintenance" here?

If by maintenance you mean "dealing with bugs", then yes, 90% is too much.

But if it includes adding features, then 90% is perfectly normal if not a bit low.

Re: I'm doing 90% maintenance and 10% development, is this normal?

#35
post #17
post #12

Earlier quoted context omitted.

My first real programming job was 100% maintenance. It was horrible. Luckily I was able to get out after 6 months, but still wonder about the other guys I was working with there.. hopefully they got out.

He should be glad it's not 90% maintenance and 10% meetings

Or in my case 90% meetings and 10% maintenance!

Re: I'm doing 90% maintenance and 10% development, is this normal?

#36
post #16

It's not the 90% maintenance that's the problem, it's this: "But then I got to hear I wasn't allowed to improve the existing code and to only focus on bug fixes when a bug gets reported." A product that is not worth improving? This is called a hopeless product, a hopeless company, and a hopeless job prospect.

Typical for software with actual users that rely on it. Hell, typical for hardware too like the electronics in your car.

Re: I'm doing 90% maintenance and 10% development, is this normal?

#37

> (badly coded, developed by multiple programmers over the years, handles the same tasks in different ways, zero structure) Yeah, 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 re…

demand more money now, concentrate on learning to work with people, but do not give up on code quality. Not entirely, anyway. You can't turn the whole app into a good one in any reasonable time, but when you fix a bug, take time to apply the boy scout rule ( http://www.informit.com/articles/article.aspx?p=1235624&... ) Don't put that down as a separate task that your management can approve or deny, it's part of doing…

I don't think that money resolves everything (at least, normal sums of money, lol). If they are paying him the minimum, that means they don't value what he does. I guess that's the reason he has a lot of projects to handle... probably other developers have left for the same reasons.

Reductio ad absurdum: If somebody offers me a full time job of sewer-cleaning, paying me 15k, i'd probably pass, because I value other things besides money. I want to enjoy what I do, and the market right now (at least for the dev community) gives me enough options to choose where I want to work.

He'd probably learn A LOT more, somewhere else, working with other people, and where the company actually values him.

Someone would think that the kind of people who hires devs in such conditions, having a high employee turnover, would start to value them a little more. Sadly, my experience knowing a few cases firsthand, is that they think "there's always someone else".

Re: I'm doing 90% maintenance and 10% development, is this normal?

#38
post #37

Earlier quoted context omitted.

demand more money now, concentrate on learning to work with people, but do not give up on code quality. Not entirely, anyway. You can't turn the whole app into a good one in any reasonable time, but when you fix a bug, take time to apply the boy scout rule ( http://www.informit.com/articles/article.aspx?p=1235624&... ) Don't put that down as a separate task that your management can approve or deny, it's part of doing…

I don't think that money resolves everything (at least, normal sums of money, lol). If they are paying him the minimum, that means they don't value what he does. I guess that's the reason he has a lot of projects to handle... probably other developers have left for the same reasons. Reductio ad absurdum: If somebody offers me a full time job of sewer-cleaning, paying me 15k, i'd probably pass, because I value other t…

> He'd probably learn A LOT more, somewhere else, working with other people, and where the company actually values him.

Most likely. I'm suggesting that until that happens, in preparation for that, he can learn as much as he can from what's in front of him; and do a good job too.

Re: I'm doing 90% maintenance and 10% development, is this normal?

#39
Totally normal, except for the cashier salary bit. Your perceived impact on sales is not related to that, 90% is actually too low, often it could be more. Code quality is often good, but usually is much less important in what we developers tend to think.

That's why VB6 product market still exists.

Think of it this way - 100% of ANY business is maintenance. Once you build McDonalds and In-and-Out, the rest is 100% maintenance and just actually producing the burgers (what you call maintenance)

Re: I'm doing 90% maintenance and 10% development, is this normal?

#40

I enjoy some maintenance, though I don't want to only do only that. It'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…

I agreed with you until "[Salary] is the most important thing he has said". For many people salary is not the most important thing in life. If this guy learns a lot doing what he does, salary considerations could be secondary for him. And I think there is a possibility that he is in a position to learn the hard way (in a way he will not forget what he learnt) some of the nasty parts of software development: code base is awful, touching one thing breaks unrelated parts, doing a simple change takes days because of duplication, PM do not care a shit if code is clean or not and don't want to hear about refactor. All of that is crude reality. Only after having endured such evils can someone really understand why duplication is bad, why hidden dependencies is evil, and, even more importantly:

How and when to tell or, more often, to NOT tell a PM that you WILL refactor the code before doing this fix, for everyone's sake.

Post reply on HN