A software developer is a person concerned with facets of the software development process. Including the research, design, programming, and testing of computer software.
Other job titles which are often used with similar meanings are programmer, software analyst, and software engineer.. in the current market place there can be found a segregation between programmers and developers,being that one who implements is not the same as the one who designs the class structure or hierarchy
In a large company, there may be employees whose sole responsibility consists of only one of the phases above. In smaller development environments, a few people or even a single individual might handle the complete process.