<job> (Or "computer programmer", "developer") Someone who writes or debugs computer programs, for a living or for fun. "Analyst/developer" is a common equivalent job title, implying the added role of system analysis.
The term may be qualified according to the type of software - "application programmer", "system programmer", etc.