If you've been developing software for long enough, you should have a reasonably good idea of what methodologies and technologies you can work well with.
I was fortunate enough to gain exposure to a range of different sized projects, using different approaches in the first decade of my career.
- Team sizes of 1 to 8;
- Timescales from a couple of days to 18 months;
- One-off throwaway scripts, enterprise applications that were maintained and in use for 5+ years;
- Solo missions, pair programming;
- Not worth testing, through to test-driven from unit to data access to GUI-driven automated suites;
When you've been with the company for that long you automatically know what sort of projects are going to come your way, and likewise your teammates know what you will be able to produce at the various stages, from design, to testing, development, delivery, and liaising with clients.
With a bigger company where nobody really knows all the ins and outs of the systems you're dealing with, and everyone seems to have a different view of the methodology it's difficult to explain the simple concept that "Garbage in" leads to "Garbage out".