software development using waterfall method vs agile

Hi experts,

Here is my situation.

I have previously worked as a .NET web developer at various companies. But I have always used the Waterfall method of software engineering. Summarized below.

Waterfall Method

Phase 1: Requirements
Phase 2: Design
Phase 3: Implementation
Phase 4: Testing
Phase 5: Deployment
Phase 6: Maintenance

I just got a job offer at a company as a .Net desktop developer but the method they use is Agile development method. So I'm not sure if I should take it or just take a job using the waterfall method i'm used to.

I have read about Agile here and in a few other places. So I know it focuses on quick development and team work.

I'm used to using the waterfall method but I'm open to using agile. I guess I won't know how I feel about agile until i try it.  

So my question is this.

Have any of you gone from a traditional waterfall method development environment  job to an agile development environment job?

Was it hard to get used to this new method? Did you like it better or less?
Which do you feel is a better methodology in your opinion?

Thanks for your input.

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

If you're afraid of Agile: Don't be. Those who do well with Waterfall also do well with Agile and those who screw up with Waterfall do the same with Agile. :)

From a career POV, it's surely the right move, as having Agile on your resume surely helps (and inversely it doesn't help if you don't!).

As such Agile is just another process. I personally love it, I've done 8 years of Waterfall and 4 in Agile. What I've realized is that if you have good ppl you can do well in both, but in Agile you can do better.

The most important thing abt Agile is that it empowers developers to make decisions.
It gives more importance to working code than some unnecessary process overheads like filling out some stupid checklist at the end of every phase. Mind you, Agile doesn't say don't fill up the checklist, it just says what you think is right.
Other very imp thing is fast feedback and re-planning. In Agile team continuously re-plans at micro level based on feedback it get from itself.

Just the re-iterate, Agile doesn't make anyone better.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
When they say "Agile Development" it's usually very similar to waterfall except you do it in small pieces instead of the whole thing all at once.

If you know how to develop in .NET, then the method shouldn't be much of an issue. They'll still give you a list of what you need to do and you'll do it. You'll just have smaller lists and less time to do it. It will keep it more interesting and you won't waste as much time working on something that gets the requirements changed later.
Also note that "Agile Development" technically covers several different processes. It's often just like a bunch of little waterfalls (at least in my experience).
OWASP Proactive Controls

Learn the most important control and control categories that every architect and developer should include in their projects.

it's usually very similar to waterfall except you do it in small pieces instead of the whole thing all at once.
Stop calling that Agile! Agile is NOT mini-Waterfall.
Perhaps, but the fact that that website exists proves my point that many businesses make that confusion. Just because they say they use Agile, doesn't mean they don't use mini-waterfall.

Anyway, the process will take a week or less to learn. Then the way they document will take anywhere from an afternoon to a couple weeks. Then all you need is your .NET skills which are what they are.

The process the company uses is not that important. The language is much more important. But development is development is development. If you can code, you can code.
"the fact that that website exists proves my point that many businesses make that confusion."
Someone else screwed up so it's OK to advise others to do that? Despite the fact that there is actually a website saying DON'T?

"Just because they say they use Agile, doesn't mean they don't use mini-waterfall."
Again, read the previous line.
Also: The website tells you how to find out "mini-waterfall-smell", so
- read, find, fix and then call it Agile.
- read, find/ignore, fix/ignore and then call it mini-Waterfall.

Bottom line: There is nothing wrong in continuing with mini-Waterfall if you're comfy with. Just don't call it Agile and teach others to implement their Agile as mini-Waterfall.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Programming Theory

From novice to tech pro — start learning today.