A person who develops stand-alone software (that is more than just a simple program) and gets involved with all phases of the development (design and code) is a software developer.[citation needed] Some of the notable software people include Peter Norton (developer of Norton Utilities), Richard Garriott (Ultima-series creator), and Philippe Kahn (Borland key founder), all of whom started as entrepreneurial individual or small-team software developers.
Other names which are often used in the same close context are programmer, software analyst, and software engineer. According to developer Eric Sink, the differences between system design, software development and programming are more apparent. Already in the current market place there can be found a segregation between programmers and developers,[dubious – discuss] being that one who implements is not the same as the one who designs the class structure or hierarchy. Even more so that developers become systems architects, those who design the multi-leveled architecture or component interactions of a large software system.[1] (see also Debate over who is a software engineer)
Aspects of developer's job may include