Size matters. But not in the way you would expect.
Traditionally, big organizations would engage big organizations to be their suppliers. They could afford the extra premiums that the larger organizations charge as a burden of their size and overhead cost structures and it was a "safe" thing to do. Today there is nothing "safe" about business and even big organizations need to watch costs… just look at recent headlines.
If you are engaging with a vendor for something like software development, size matters… but bigger is not necessarily better.
Large suppliers have some pretty decent talent in their organizations. It would be unreasonable to assume otherwise. But they also have a lot of commitments for that talent. Their teams tend to be dynamic and fluid. This means that the team coming to work on your project may not have worked together in the past. Further, they may not have worked on any of the reference projects they are listing. Thus, past success in other projects may not translate to success in this project, the one that matters to you.
Smaller vendors will tend to put forward teams that have worked together well in the past. As well, the projects they have worked on will be the some of the same ones that the vendor will be quoting as references.
If your project represents 10% of a company's revenue for the next year they are much more likely be to be focused on the success of that project than a company where your project represents 0.01% of their revenue… it's just that much more important to the company's success.
Ultimately, when you are bringing on a vendor for a software project, you need to look at:
- The quality of the team that will be working on your project?
- Whether or not the majority of the team has worked together on successful projects before?
- What's in it for them if they do well?
- Whether or not the proposed team worked on the reference projects?
Domain (business) experience is another critical factor to ramping up a successful software team. Sure it is possible to learn the domain on the fly, but its akin to learning a new technology. Good programmers can do it, but it adds cost and risk.
In reality, software is developed by the team on your specific project. Size matters only in the scale of the team you need for your project.