Programista to osoba, która używa języków programowania do pisania kodu oprogramowania i aplikacji działających jako samodzielne produkty lub współdziałających z innymi usługami i serwerami. Zajmują się projektowaniem, testowaniem i konserwacją systemów oprogramowania w ramach świadczenia usług informatycznych.
Oprócz tworzenia nowego oprogramowania, programiści oprogramowania testują istniejące oprogramowanie pod kątem jego zamierzonego zastosowania, znajdują błędy i błędy oraz modyfikują oprogramowanie, aby rozwiązać problemy lub dostosować je do innego zastosowania. Podczas pracy z istniejącym oprogramowaniem, programiści oprogramowania zazwyczaj starają się zintegrować go z istniejącymi sieciami. Ewentualnie mają za zadanie zastąpienie całego systemu nowym rozwiązaniem programowym opartym na specyfikacjach określonych przez dyrekcję IT firmy.
Programiści oprogramowania wspólnie z projektantami i analitykami analizują systemy oprogramowania, z których korzystają już ich firmy, i przedstawiają nowe pomysły dotyczące potencjalnych ulepszeń. Po utworzeniu nowego oprogramowania lub aplikacji testują funkcjonalność w kontrolowanym środowisku, które naśladuje rzeczywiste sytuacje, aby zapewnić prawidłowe działanie po zwolnieniu. Podczas tego procesu programiści oprogramowania tworzą także dokumentację skoncentrowaną na użytkowniku, dotyczącą szkolenia i prawidłowego użytkowania oprogramowania. Programiści oprogramowania zazwyczaj koncentrują się na tworzeniu oprogramowania przeznaczonego głównie do sprzedaży, takiego jak gry wideo i systemy operacyjne lub oprogramowania zaprojektowanego w celu ułatwienia operacji biznesowych dla firmy, która je zamówiła.