Chociaż dostępnych jest wiele różnych rodzajów pracy projektantów oprogramowania, wiele z nich można zaklasyfikować do kilku podstawowych kategorii. Stanowiska inżynierów systemów zwykle obejmują projektantów oprogramowania, którzy są odpowiedzialni za rozwój i nadzór nad systemami komputerowymi dla konkretnej firmy. Inżynierowie aplikacji to projektanci oprogramowania odpowiedzialni za tworzenie nowego oprogramowania komputerowego, narzędzi i aplikacji, często poprzez tworzenie i testowanie kodu dla nowego oprogramowania w całym procesie rozwoju. Istnieje również wiele stanowisk projektanta oprogramowania w pewnych wyspecjalizowanych dziedzinach, takich jak tworzenie gier, tworzenie i administrowanie witrynami internetowymi oraz w ramach określonych aspektów tworzenia oprogramowania, takich jak projektowanie interfejsu użytkownika (UI).
Praca projektanta oprogramowania może obejmować szeroki zakres dziedzin i procesów, w zależności od rodzaju oprogramowania, które projektant chce rozwijać. Wiele z tych miejsc pracy wymaga inżyniera systemowego, który jest projektantem oprogramowania odpowiedzialnym za rozwój i nadzór nad oprogramowaniem i systemami komputerowymi w firmie. Na przykład firma detaliczna może używać podstawowego oprogramowania komercyjnego do śledzenia sprzedaży i rejestrowania budżetów firmy. Jednak niektóre firmy oferują stanowiska projektanta oprogramowania dla kogoś, kto tworzy nowe oprogramowanie do użytku przez firmę, dostosowane do konkretnych potrzeb tej firmy oraz opracowane i nadzorowane przez projektanta.
Istnieją również stanowiska projektanta oprogramowania dla projektantów zainteresowanych tworzeniem nowych programów w firmie programistycznej, często nazywanej inżynierami aplikacji. Projektanci ci tworzą kod dla nowego programu, używając dokumentu projektowego do kierowania rozwojem oprogramowania. Ten proces rozwoju zwykle składa się z wielu etapów, ponieważ do oprogramowania podstawowego są dodawane dodatkowe narzędzia i funkcje. Wiele z tych firm ma również zadania projektantów oprogramowania dla testerów, którzy używają oprogramowania w celu znalezienia błędów i błędów, które należy naprawić przed komercyjnym wydaniem programu.
Wiele stanowisk projektanta oprogramowania jest podobnych do inżynierii aplikacji, ale jest zorientowanych na konkretną branżę w zakresie tworzenia oprogramowania lub jeden aspekt takiego rozwoju. Na przykład programiści w branży gier to zazwyczaj projektanci oprogramowania zainteresowani tworzeniem oprogramowania do gier, często obejmującego programowanie sztucznej inteligencji (AI) i inne aspekty tworzenia gier. Są też projektanci, którzy skupiają się na konkretnym aspekcie rozwoju i wybierają specjalizację w tym obszarze. Zadania projektanta oprogramowania dla tych osób można znaleźć w wyspecjalizowanych dziedzinach, takich jak projektowanie i rozwój interfejsu użytkownika, co wymaga zrozumienia, w jaki sposób ludzie łączą się i wchodzą w interakcję z technologią.