I have been interviewing large programming houses. Some are here in the good old U.S. of A. But, others are in Canada, Belarus, Vietnam, and India. Which one is the best and why?
What I learned is that big companies have many individuals working for them, but seem to have a narrow type of thinking when it comes to their business model.
The low end..
I have seen big outsourcers specialize in hiring cheap labor. Everyone at such companies would be inexpensive and not that well skilled.
The medium level
Others specialize in hiring medium (end) workers. You will never get anyone that bad, or anyone that good at such a company. If most of the work on a particular side required average workers, but sometimes you need a specialist, you will be sorry if you hire an inflexable middle of the road company.
The High end..
There are a few high-end programming companies too. Some of them charge high end prices without delivering high end service. But, some really do hire the best and finest programmers in town. If your project consists of partly grunt work and some specialty work as well, you will get the job accomplished with this type of company — and for a very handsome price tag.
Mixed Level
Mixed level companies. There are companies that charge a fixed hourly rate for work, but mix up the levels of the programmers and project managers. You might get a handful of medium level workers, and once in a while they might pull in a specialist, while having the whole operation managed by a very seasoned project manager.
All Level
Some companies, large and small, offer a choice of programmers. The hourly price changes depending on who you hire. To me this makes sense. You pay exactly for what you get. In real life, programmers can range in price from $10 per hour until $200 per hour. I bet that you can imagine the difference in efficiency, capability, and quality between the workers at all of those price breaks!