Software garatzailea programak sortu eta diseinatzen dituen pertsona da. Pertsona hau programatzailea izan daiteke, edo baita programazioaren garapenak izan ditzakeen ataza zabalagoetan ere. Pertsona berau definitzeko analista eta programazio ingeniari terminoak ere erabili ohi dira.
Denbora pasa ahala, sistemen diseinua, programen garapena eta programazioaren arteko ezberdintasunak handitzen doaz. Askotan bereiztu egiten dira programatzaile eta garatzaileak, hau da, aplikazioaren ezarpena egiten dutenak ez dira programatzen eta diseinatzen aritu direnak izaten. Gainera, garatzaile batzuk sistemen arkitektoak izatera pasatzen dira, hots, maila askotako arkitekturak edo programazio sistema handiak diseinatzen dituztenak.