Programista systemów informatycznych projektuje i programuje aplikacje komputerowe. W niektórych organizacjach członkowie personelu programistycznego mogą być również zaangażowani w zbieranie wymagań systemowych, testowanie i uruchamianie aplikacji. Niezależnie od tego stanowisko programisty systemów wymaga specjalistycznej wiedzy w zakresie technologii, a wiedza branżowa jest również cenna.
Nazwa stanowiska programisty systemów może odnosić się do wielu podobnych stanowisk o różnych specjalnościach. Dokładne wymagania w opisie stanowiska programisty systemów będą się różnić w zależności od tych typów, ale wszystkie wymagają wysokiego poziomu umiejętności technicznych, a często preferowany jest czteroletni stopień naukowy w dziedzinie informatyki. Zazwyczaj wymagana jest praktyczna znajomość określonych języków programowania i narzędzi inżynierii oprogramowania wspomaganego komputerowo (CASE). Doświadczenie w tworzeniu systemów dla konkretnej branży jest często pożądane, zwłaszcza dla starszego programisty systemów.
Niektóre branże mogą potrzebować programistów systemów, którzy mają specjalistyczne umiejętności. Producenci części z systemami wbudowanymi, które zawierają wiele części z interfejsami cyfrowymi, mogą potrzebować doświadczonego programisty systemów wbudowanych. System wbudowany to wyspecjalizowany program komputerowy będący częścią większej maszyny lub systemu. Program często działa na pamięci tylko do odczytu (ROM). Pojazdy i urządzenia, takie jak programowalne dzbanki do kawy, mogą korzystać z aplikacji wbudowanych. Deweloper systemów wbudowanych projektuje i koduje te aplikacje przy użyciu oprogramowania, sprzętu lub języków asemblera.
Organizacje finansowe, które przeprowadzają transakcje finansowe, zazwyczaj korzystają z systemów transakcyjnych. Termin system transakcyjny może odnosić się do systemu komputerowego, który jest zbudowany do wykonywania transakcji w oparciu o logikę zaprogramowaną w systemie lub może odnosić się do systemu używanego przez brokerów do śledzenia swoich transakcji i informacji o klientach. Twórcy systemów transakcyjnych mogą potrzebować wiedzy na temat rynków finansowych, a także opracowywania systemów. Mogą być używane języki oprogramowania C, C++ i VisualBasic.Net, a specjalne zestawy do tworzenia oprogramowania (SDK) dla systemów transakcyjnych są dostępne w handlu.
Firmy programistyczne tworzące gry wideo mogą również szukać programistów systemów o wyspecjalizowanych umiejętnościach. Zazwyczaj twórca oprogramowania do gier wideo potrzebuje specjalistycznej wiedzy w zakresie programowania multimediów. Mniejsze firmy zajmujące się tworzeniem gier wideo mogą potrzebować programistów, którzy mają również duże umiejętności projektowania i umiejętności inżynierii dźwięku.
Organizacje mogą wdrażać narzędzia CASE, aby uprościć projektowanie i rozwój aspektów pracy programistów systemów. Przykładem narzędzia CASE jest pakiet Rational Systems Developer. Opiera się na zasadach programowania obiektowego (OOP), a pakiet promuje szybsze projektowanie i rozwój systemu dzięki użyciu projektowania i generowania kodu w jednolitym języku modelowania (UML).