views:

337

answers:

11

Imagine that you're working on some huge application, probably building it from scratch, as a part of the team. Maybe it is some sort of CRM package or people management software - anything that is big and complex.

Just the development process may take 2-3 years. Then, after the product is launched, you'll be dealing with maintaining it - I guess customers will want new features, some bugs will be found etc. Maybe a whole new version of the application will be in the plans.

Anyway, here you are, working on the same application and mostly using the same technologies year after year.

My question is, what would you do and how? (Let's say, the company is good enough and the salary is quite reasonable).

The pros I can see

  • Stable position, you could've become a key person on the project after all this time
  • You know the product inside out, you're an expert in your field
  • There is always ongoing work, you have a number of customers who have needs

... anything else?

The cons I can see

  • You know the product inside out, you're bored by the fact that you learn nothing new most of the time
  • There is always ongoing work, but you mostly keep doing the same things over and over
  • Your technical skills are not getting updated, you're becoming less competitive as a developer

... anything else?

So, what are your options here? Stay with the company until retirement? Try to build a career in this company? Spend your spare time on a side project? Educate yourself and look for another position? Maybe even apply to a competitor if they have something interesting and promising going on?

What would you do?

+2  A: 

I think you should be basing your career choices off of more than just the timeline of the project you are working on. If the company is a good fit for you, it shouldn't matter what you are doing while you are there, whether it is 1 project or 15.

TheTXI
+7  A: 

I've been on two projects that lasted 6+ years, and both times I was very sorry when it ended. I've also been on projects where I escaped after less than a year and wished I'd been smart enough to leave earlier. There are a lot of considerations that go into job satisfaction, and project longevity isn't a big one.

On one of the "get me out of here!" jobs, I initially liked it, and when we tried to hire a guy to fill another position, on his second day after starting work, he caught up to me in the parking lot and asked me a lot of questions about the environment, and he didn't come back to work the next Monday. Turns out he'd begged for his old job back. For months I wondered what he saw that I didn't, and then for months I wondered why I didn't see those things too.

Paul Tomblin
+3  A: 

Stay as long as it benefits you. If you feel like you're stagnating, leave. If you feel like you can learn more, stay.

The last thing you want to do is pigeonhole yourself into one technology, or one program.

George Stocker
+2  A: 

Most of the "cons" you have listed can be easily dealt with by spending some of your own time working on personal projects or updating your skill set through courses or tutorials.

Nixuz
+1 cause it's true, but available time and not being 'forced' to learn something can cause the learning process to be really slow.
SnOrfus
+2  A: 

That can be a good situation - you can really become an expert on the technologies your company uses, and start to write blog posts, speak at user groups and conferences...maybe get a book deal.

Plus you may have the opportunity to write the system a second time, which is invaluable. Most projects don't last long enough for that to happen.

Sarah Mei
A: 

I still feel to be too young to stay with one project forever :)

For me, the major downside of keeping with a single project would be the need to stick with one set of technologies and problem domains, thus slowly loosing the ability to learn and get into new things.

david a.
+1  A: 

For a project of significant duration (years) I think it's foolish to expect that technology won't change. The project should build in some growth for techology in the design. Under those conditions, your assumptions about the technology, and your skills, getting stagnant are invalid. Perhaps the better question is whether or not the company is agile enough to keep up with emerging technology and, depending on the answer, whether that is a good fit for you.

tvanfosson
A: 

This is entirely a matter of personal preference.

I used to work in C in the most old legacy systems. I learned a lot but didn't like being stuck with dinosaur code.

Now I make web apps and feel more cutting edge.

Project duration has no bearing for me. The people you work with make all the difference, good or bad.

tkotitan
+2  A: 

con:

You become invaluable to the project, and can never move out or up.

Gary Kephart
+5  A: 

I believe that somebody who's never worked on the same project for more than a year can't really claim to be an experienced developer.

Only on a long-lasting project can you really see first hand how technical, design, architecture and personnel decisions really work out.

Many of the worst disasters in IT project history were perpetrated by people constantly chasing the latest buzzword technologies and never staying long enough to see them fail.

Michael Borgwardt
Am I dating myself by saying "Right on!"?"Many of the worst disasters in IT project history were perpetrated by people constantly chasing the latest buzzword technologies and never staying long enough to see them fail." The rest were from people doing design before they had ever done maintenance.
HLGEM
A: 

Part of this is knowing what direction I want to take my career and do I want to specialize in whatever form of software that the big and complex project is using. Do I want to be a consultant, a product developer, or someone within IT that does some customizations and helps keep the lights running? Is there a clear progression within the company to move up accordingly or will I have to take things into my own hands? That is my initial answer that I could go on and on about if I had some more details.

JB King