A software developer is a person concerned with facets of the software development process. Their work includes researching, designing, implementing, and testing software. A software developer may take part in design, computer programming, or software project management. They may contribute to the overview of the project on the application level rather than component-level or individual programming tasks. Software developers are often still guided by lead programmers but the description also encompasses freelance software developers.
In the US, a software developer is classified into one of 3 titles (all under the 15-0000 Computer and Mathematical Occupations Major Group):
- 15-1131 Computer Programmers
- 15-1132 Software Developers, Applications
- 15-1133 Software Developers, Systems Software
A person who develops stand-alone software (that is more than just a simple program) and got involved with all phases of the development (design and code) is a software developer. 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, 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. (see also Debate over who is a software engineer)
Aspects of developer's job may include:
- Software design
- Actual core implementation (programming which is often the most important portion of software development)
- Other required implementations (e.g. installation, configuration, customization, integration, data migration)
- Participation in software product definition, including business case or gap analysis
- Requirements analysis
- Development and refinement of throw-away simulations or prototypes to confirm requirements
- Feasibility and cost–benefit analysis, including the choice of application architecture and framework, leading to the budget and schedule for the project
- Authoring of documentation needed by users and implementation partners etc.
- Testing, including defining/supporting acceptance testing and gathering feedback from pre-release testers
- Participation in software release and post-release activities, including support for product launch evangelism (e.g. developing demonstrations and/or samples) and competitive analysis for subsequent product build/release cycles
In a large company, there may be employees whose sole responsibility may consist of only one of the phases above. In smaller development environments, a few, or even a single individual might handle the complete process.
Other articles related to "software developer, software, developer, developers":
... We had books called Face Books, which included the names and pictures of everyone who lived in the student dorms ... At first, he built a site and placed two pictures, or pictures of two males and two females ...
... In software engineering, it is more common to have the architecture, design, implementation, and test functions performed by a single individual ...
... Steve Dekorte, software developer Drunkenbatman, blogger, organizer of Evening@Adler (held at Adler Planetarium) Brian W ... Fitzpatrick, developer of Subversion, Fire and Apache Portable Runtime John Gruber, coauthor of Markdown and influential blogger (see Daring Fireball) Gus Mueller, creator of VoodooPad Jonathan ...
... Academy of Sciences Director, HIV Program, National Cancer Institute Richard Dansky – software developer of computer games and designer of role-playing ... Ehrlich and Ludwig Darmstaedter Prize Clay Dreslough (1993) – software developer (as of 2012) creator, Baseball Mogul and Football Mogul computer sports games co-founder, president, Sports Mogul Gordon P ... Gibbs Award Jesse Vincent (1998) – software developer (as of 2012) developed Request Tracker while a student at Wesleyan also author, Request Tracker for Incident Response John Monroe Van Vleck (1850 ...
... Sega put on its own video games along with certain video games published by a third party software developer ... Sega never required a third-party software developer to earn the official Sega Seal of Quality as a precondition for publication, although most developers chose ... However, this was done by the software developer and not as a requirement issued by Sega to the developer ...