Programer aplikacija je inženjer računalnog softvera čija primarna odgovornost uključuje razvoj novih vrsta aplikacija za računala, mobilne telefone i druge vrste elektroničkih uređaja. Programeri aplikacija općenito su zaposleni u velikim tehnološkim tvrtkama, ali neki softverski inženjeri rade neovisno o velikim tvrtkama i prodaju svoje aplikacije velikim tvrtkama. Uspješni softverski inženjeri razvijaju nove programe za postojeće platforme, kao i razvijaju ideje za platforme koje još nisu u punoj proizvodnji.
Tipično, programer aplikacija ima fakultetsku diplomu iz računalnog programiranja, računalnih znanosti ili srodnog područja. Mnoge velike tvrtke za informacijsku tehnologiju zapošljavaju nedavno završene fakultete, ali druge tvrtke zahtijevaju od zaposlenika da imaju poslijediplomske diplome koje se usredotočuju na određene aspekte programiranja. Neke tvrtke imaju početne pozicije za ljude koji imaju osnovne programerske vještine, ali nemaju fakultetsku diplomu. Povremeno, neki početnici zaposlenici mogu prijeći na bolje plaćene uloge ako se pokažu vješti u rukovanju razvojem softvera.
Marketinške tvrtke provode istraživanja kako bi prikupile informacije koje se odnose na potrebe potrošača i ekonomske trendove. Informacije se prosljeđuju softverskim inženjerima koji imaju zadatak stvoriti nove aplikacije koje zadovoljavaju potrebe javnosti u smislu korištenja i troškova. Programer aplikacije počinje sastavljati planove za predložene aplikacije. Pojedinosti tih planova prosljeđuju se marketinškim tvrtkama koje provode daljnja istraživanja kako bi vidjeli postoji li dovoljna potražnja potrošača koja bi opravdala daljnji razvoj proizvoda. Ideje koje dobiju najbolju povratnu informaciju stavljaju se u potpunu proizvodnju.
Programer aplikacije mora imati napredno razumijevanje matematike i binarnih kodova koje koriste računala. Algoritmi, koji su instrukcijski kodovi koje koriste računala, kreirani su i podvrgnuti opsežnim testiranjima kako bi se utvrdilo mogu li računala ispravno funkcionirati na temelju dostavljenih informacija. U većini slučajeva timovi programera rade zajedno i pokušavaju postupno poboljšati uzorke aplikacija sve dok aplikacija ne dosegne točku u kojoj je spremna za prodaju.
Programeri često izrađuju nekoliko verzija iste osnovne aplikacije koju mogu čitati različite vrste uređaja, kao što su mobiteli, tableti i osobna računala. Nakon što aplikacija krene u proizvodnju, programer mora raditi na stvaranju nadogradnji, poznatih kao zakrpe, koje se povremeno objavljuju javnosti kako bi aplikacija mogla nastaviti funkcionirati zajedno s drugim vrstama softvera koji se neprestano razvijaju.