Outsourcing programistów jest powszechną praktyką wśród firm i polega na przekazywaniu czynności innym firmom, które pełnią rolę usługodawców. W ten sposób organizacja płaci za profesjonalistów bez utrzymywania ich wewnętrznie, a jeśli tak, to bez relacji biznesowej, na podstawie umowy. Zaczęto go używać pod koniec drugiej wojny światowej, kiedy walczące korporacje chciały skupić się na produkcji broni masowej.