Programų kūrėjas yra kompiuterių programinės įrangos inžinierius, kurio pagrindinės pareigos yra naujo tipo programų kūrimas kompiuteriams, mobiliesiems telefonams ir kitų tipų elektroniniams įrenginiams. Programų kūrėjai paprastai dirba didelėse technologijų įmonėse, tačiau kai kurie programinės įrangos inžinieriai dirba nepriklausomai nuo didelių firmų ir parduoda savo programas didelėms įmonėms. Sėkmingi programinės įrangos inžinieriai kuria naujas programas esamoms platformoms, taip pat kuria idėjas platformoms, kurios dar nėra visiškai pagamintos.
Paprastai programų kūrėjas turi aukštąjį kompiuterių programavimo, kompiuterių mokslo ar susijusios srities laipsnį. Daugelis pagrindinių informacinių technologijų įmonių įdarbina neseniai koledžą baigusius asmenis, tačiau kitos įmonės reikalauja, kad darbuotojai turėtų magistrantūros laipsnius, kuriuose daugiausia dėmesio skiriama tam tikriems programavimo aspektams. Kai kurios įmonės turi pradinio lygio pareigas žmonėms, turintiems pagrindinius programavimo įgūdžius, bet neturintiems koledžo laipsnio. Kartais kai kurie pradinio lygio darbuotojai gali pereiti į geriau apmokamus vaidmenis, jei įrodys, kad jie puikiai valdo programinės įrangos kūrimą.
Rinkodaros įmonės atlieka tyrimus, siekdamos surinkti informaciją apie vartotojų poreikius ir ekonomikos tendencijas. Informacija perduodama programinės įrangos inžinieriams, kuriems pavesta kurti naujas programas, kurios atitiktų visuomenės poreikius naudojimo ir išlaidų atžvilgiu. Programos kūrėjas pradeda rengti siūlomų programų planus. Išsami informacija apie šiuos planus perduodama rinkodaros įmonėms, kurios atlieka tolesnius tyrimus, siekdamos išsiaiškinti, ar yra pakankamai vartotojų paklausos, kuri pateisintų tolesnį produkto kūrimą. Idėjos, sulaukusios geriausių atsiliepimų, yra visiškai įgyvendinamos.
Programų kūrėjas turi gerai išmanyti matematiką ir dvejetainius kodus, kuriuos naudoja kompiuteriai. Algoritmai, kurie yra kompiuterių naudojami mokomieji kodai, yra kuriami ir išsamiai išbandomi, siekiant išsiaiškinti, ar kompiuteriai gali tinkamai veikti, remiantis pateikta informacija. Daugeliu atvejų kūrėjų komandos dirba kartu ir bando palaipsniui tobulinti pavyzdines programas, kol programa pasieks tašką, kuriame ji bus paruošta prekybai.
Kūrėjai dažnai sukuria kelias tos pačios pagrindinės programos versijas, kurias gali skaityti įvairių tipų įrenginiai, pvz., mobilieji telefonai, planšetiniai kompiuteriai ir asmeniniai kompiuteriai. Kai programa pradedama gaminti, kūrėjas turi dirbti kurdamas naujinimus, vadinamus pataisomis, kurie periodiškai išleidžiami visuomenei, kad programa galėtų toliau veikti kartu su kitomis nuolat tobulėjančiomis programinės įrangos rūšimis.