Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I work as a Software developer in a mid sized company.

I have got an offer from another company for their sustenance team. The job involves maintaining their products and fixing the bugs that customers may raise.

Has anyone moved from software developer to sustenance team ?

Edit: I have 4 years of experience and Oracle has given me the offer.

share|improve this question
Why the downvotes? I think this is a valid question. If this is not the forum for it, what is? – Randall Cook Apr 26 '12 at 17:03

closed as off topic by MichaelT, ElYusubov, World Engineer May 7 at 22:45

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined in the FAQ. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about closed questions here.

3 Answers

I've moved from development to maintenance to QA and management and back and forth over a career that started as a programmer helping a statistician at Penrose Cancer Hospital in Colorado Springs in 1975 to CEO of an embedded Linux consulting firm with 30 employees now. A move to maintenance is not necessarily a step down.

I would say that the job satisfaction depends on many factors, not just the job type. Those factors are:

  1. Your interest in the technology - if maintenance means maintaining a technology that really turns you on and that has a great future then go for it
  2. Your ability to derive esteem from the position - if maintenance means becoming the company expert in a challenging technology that is critical to the company, then this might be a good long-term choice, though you might have to be willing to be an apprentice for a long time
  3. Your perception of the future value of the technology - if you see it as a dead-end technology then don't do it
  4. The corporate culture - what is the pressure level (Are they going to be asking you to fly between Hong Kong and Phoenix every two weeks, or is that exactly what you want)? What is the bureaucracy level? Are you a small org person moving to a big org?
  5. Your life script - do you see this as a short-term job, or something that you want to stay with for the long-term?

Note that I haven't mentioned compensation. That's important too, but if you haven't considered the above first then no amount of money will keep you at a job whose technology doesn't interest you in a company that is going nowhere with co-workers you can't stand. Might even be detrimental to your health.

share|improve this answer

If you currently develop new software, then I would consider this a step downward in a software engineering career. If you are trying to move up but stay out of management, the usual trajectory is to take ever more prominent roles in ever more difficult/critical/large projects. Moving from development into maintenance is something of a step backward, IMO.

If it were me, the only reasons I would take this move is if the money were much better (unlikely), or if I thought the new company had way more potential to grow than your current one. And once I got there, I would work very hard to get out of maintenance and back into core engineering. In other words, if in 1998 had Larry and Sergey asked me to maintain their search code at their new startup I would have done it. :)

That being said, depending on the nature of the new company, there might be more customer interaction with your new job than with your current one. I once knew a brilliant engineer who left the core engineering group and joined the professional services group so he could travel and interact with customers more. We missed him, but I think he enjoyed the change of place. He kept that up for a few years then left to join a startup as a core engineer.

share|improve this answer

You have not mentioned your years of experience.

If you have done about 2-4 years of development, it can be a good step to move into maintenance, get to understand the architecture, check how things are done for a particular use case, learn the design patterns used. All this will eventually help in designing a big architecture.

Also in maintenance depending on the maturity of the product , the fix sizes may not be more than 10 lines of code. I maintain a mobile web browser, which is a fairly huge application, but most of my fixes in the past one year have been within 10 lines of code.So it's more detective work to find out the root cause of the issue and then small surgical patches to fix it.

But if you are 7-8 years experienced, then better not to move to maintenance , as it will only frustrate you.

Also make sure that you get out of the project once you have understood the architecture, which I assume would happen within an year or two(again depends on the application architecture size). If you stay longer than that, it can put into the maintenance frame of mind, where in one just writes small patches of code to fix issues & writing large chunks of code becomes a challenge.

share|improve this answer

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