All Topics  
Software developer

 

   Email Print
   Bookmark   Link






 

Software developer



 
 
A software developer is a person or organization concerned with facets of the software development process
Software development process

A software development process is a structure imposed on the development of a software product. Synonyms include Software_Lifecycle_Processes and software process....
 wider than design and coding, a somewhat broader scope of computer programming
Computer programming

Computer programming is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. This source code is written in a programming language....
 or a specialty of project managing
Project manager

A project manager is a professional in the field of project management. Project managers can have the responsibility of the planning, execution, and closing of any project, typically relating to construction industry, architecture, computer networking, telecommunications or software development....
 including some aspects of software product management
Software product management

Software product management is the process of managing software that is built and implemented as a Product , taking into account lifecycle considerations and generally with a wide audience....
. This person 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 programmer
Lead programmer

A lead programmer is a software engineer in charge of one or more Computer program projects. Alternative titles include Development Lead, Technical Lead, Senior Software Engineer, Software Design Engineer Lead , Software Manager, or Senior Applications Developer....
s but also encompasses the class of freelance
Freelancer

A freelancer, freelance worker, or freelance is a self-employed person who pursues a profession without a long-term commitment to any particular employer....
 software developers.

Other names which are often used in the same close context are software analyst
Software analyst

In a software development team, a software analyst is the person who studies the software application domain and prepares the software requirements and specification document....
 and software engineer
Software engineer

A software engineer is a person who applies the principles of software engineering to the design, development, testing, and evaluation of the software and systems that make computers or anything with software such as chips work....
.

With time and a little luck, differences between system design, software development and programming are more apparent.






Discussion
Ask a question about 'Software developer'
Start a new discussion about 'Software developer'
Answer questions from other users
Full Discussion Forum



Encyclopedia


A software developer is a person or organization concerned with facets of the software development process
Software development process

A software development process is a structure imposed on the development of a software product. Synonyms include Software_Lifecycle_Processes and software process....
 wider than design and coding, a somewhat broader scope of computer programming
Computer programming

Computer programming is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. This source code is written in a programming language....
 or a specialty of project managing
Project manager

A project manager is a professional in the field of project management. Project managers can have the responsibility of the planning, execution, and closing of any project, typically relating to construction industry, architecture, computer networking, telecommunications or software development....
 including some aspects of software product management
Software product management

Software product management is the process of managing software that is built and implemented as a Product , taking into account lifecycle considerations and generally with a wide audience....
. This person 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 programmer
Lead programmer

A lead programmer is a software engineer in charge of one or more Computer program projects. Alternative titles include Development Lead, Technical Lead, Senior Software Engineer, Software Design Engineer Lead , Software Manager, or Senior Applications Developer....
s but also encompasses the class of freelance
Freelancer

A freelancer, freelance worker, or freelance is a self-employed person who pursues a profession without a long-term commitment to any particular employer....
 software developers.

Other names which are often used in the same close context are software analyst
Software analyst

In a software development team, a software analyst is the person who studies the software application domain and prepares the software requirements and specification document....
 and software engineer
Software engineer

A software engineer is a person who applies the principles of software engineering to the design, development, testing, and evaluation of the software and systems that make computers or anything with software such as chips work....
.

With time and a little luck, differences between system design, software development and programming are more apparent. Already in the current market place there can be found a segregation between programmer
Programmer

A programmer is someone who writes computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist who writes code for many kinds of software....
s and developers, being that one who actually implements is not the same as the one who designs the class
Class (computer science)

In object-oriented programming, a class is a programming language construct that is used as a blueprint to create Object s. This blueprint includes Attribute s and Method s that the created objects all share....
 structure or hierarchy. Even more so that developers become systems architect
Systems architect

In systems engineering, the systems architect is the high-level designer of a system to be implemented.They establish the basic structure of the system, defining the core design features that are hard to change later....
s, those who design the multi-leveled architecture or component interactions of a large software system. (see also Debate over who is a software engineer
Software engineer

A software engineer is a person who applies the principles of software engineering to the design, development, testing, and evaluation of the software and systems that make computers or anything with software such as chips work....
)

A 'programmer
Programmer

A programmer is someone who writes computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist who writes code for many kinds of software....
' is responsible for writing code, but a 'developer' could be involved in wider aspects of the software development process such as:
  • Participation in software product definition
    Software product management

    Software product management is the process of managing software that is built and implemented as a Product , taking into account lifecycle considerations and generally with a wide audience....
    , including Business case
    Business case

    The purpose of a business case is to capture the reasoning for initiating a project or task. It is often presented in a well-structured written document, but may also sometimes come in the form of a short verbal argumentation....
     or Gap
    Gap analysis

    In business and economics, gap analysis is a business resource assessment tool enabling a company to compare its actual performance with its potential performance....
     analysis
  • Specification
  • Requirements analysis
    Requirements analysis

    Requirements analysis in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various Stakeholder , such as beneficiaries or users....
  • Development and refinement of throw-away simulations or prototypes
    Software prototyping

    Software prototyping, an activity during certain Software development process, is the creation of prototypes, i.e., incomplete versions of the Software being developed....
     to confirm requirements
  • Feasibility
    Requirements management

    Requirements management is the process of eliciting, documenting, analyzing, prioritizing and agreeing on requirements and then controlling change and communicating to relevant stakeholders....
     and Cost-benefit analysis
    Cost-benefit analysis

    Cost-benefit analysis is a term that refers both to:* a formal discipline used to help appraise, or assess, the case for a project or proposal, which itself is a process known as project appraisal; and...
    , including the choice of application architecture
    Application Architecture

    The definition below applies to Applications Architecture. This is one of several architecture domains that form the pillars of an enterprise architecture or solution architecture....
     and framework
    Application framework

    In computer programming, an application framework is a software framework that is used to implement the standard structure of an application software for a specific operating system....
    , leading to the budget
    Budget

    Budget generally refers to a list of all planned expenses and revenues. It is a plan for saving and spending. A budget is an important concept in microeconomics, which uses a budget line to illustrate the trade-offs between two or more good ....
     and schedule
    Schedule

    Schedule generally refers to:* a timetable* an airline timetable* the act of schedulingSchedule may also refer to:* Schedule , a list of actions from a set of transactions in databases...
     for the project
  • Design
  • Implementation (e.g. installation, configuration, programming/customization, integration, data migration)
  • Authoring of documentation
    Software documentation

    Software documentation or source code documentation is written text that accompanies computer software. It either explains how it operates or how to use it, and may mean different things to people in different roles....
     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
    Software product management

    Software product management is the process of managing software that is built and implemented as a Product , taking into account lifecycle considerations and generally with a wide audience....
     activities, including support for product launch evangelism
    Technology evangelist

    A technical or technology evangelist is a person who attempts to build a critical mass of support for a given technology in order to establish it as a technical standard in a market that is subject to network effects....
     (e.g. developing demonstrations and/or samples) and competitive analysis for subsequent product build/release cycles
  • Maintenance


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.

See also

  • Software development
    Software development

    Software development is the set of activities that results in software products. Software development may include research, new development, modification, reuse, re-engineering, maintenance, or any other activities that result in software products....
  • Software engineering
    Software engineering

    Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches....
  • Software development process
    Software development process

    A software development process is a structure imposed on the development of a software product. Synonyms include Software_Lifecycle_Processes and software process....
  • Computer and video game development
    Game development

    Game development is the process by which a game is produced. Today this term most commonly refers to the development of video games....