Штатные программисты:
+ работают в долгосрочной перспективе (после разработки будет поддержка теми же людьми)
+ сидят у Вас в офисе (коммуникации в команде проще и больше)
- им нужно платить фиксированую зп (как правило, например в СПб Вам это обойдется от 50 (джуниор) до 150 (сеньер) тыс в месяц на человека)
- нужно предоставить рабочее место (стол, стул, комп и т.д.)
- редко работают больше рабочего дня (хотя если будете доплачивать за переработки, то будут)
Оутсорс:
+ может больше времени уделять Вашему проекту (как правило), так как не тратит время на дорогу и т.д., а так же работает на собственном оборудовании и тратит собственное электричество
+ Вы платите только за проделанную работу
+/- Сами строят свой рабочий график, тут с одной стороны могут работать в выходные, ночью и тд, с другой стороны могут устроить себе выходной скажем в среду
- После завершения проекта они от Вас уйдут, либо последующая поддержка будет стоить отдельных денег
- Командные коммуникации удаленные, к тому же если не нанимаете сразу готовую команду (что дороже), то команда скорее всего будет не сработанная и не будет к этому стремиться
Выбирайте