Becoming a Software Developer: Job Description & Salary Info

About this article
Get the truth about a software developer's salary, training requirements and career prospects. Read job descriptions and see the pros and cons of becoming a software developer.
View available schools

Pros and Cons of a Software Developer Career

In broad terms, there are two main types of software developers: those who design computer applications and those who create systems that keep computers functioning properly. To find out more about the pros and cons of a career as a software developer, read on.

Pros of a Software Developer Career
High median annual salary (about $103,000 for systems developers and $96,000 for applications developers)*
Robust job growth (22% from 2012-2022)*
Flexibility in terms of job location - telecommuting may be an option*
Lack of rigorous educational requirements**

Cons of a Software Developer Career
Long hours are common (over 25% of software developers worked more than 40 hours per week in 2012)*
May face stressful situations on the job**
Must stay up to date with rapidly changing technologies*
May spend long hours looking at a computer screen, which can result in eyestrain**

Sources: *U.S. Bureau of Labor Statistics, **Princeton Review.

Essential Career Information

Job Description and Career Options

The duties of a software developer are varied, ranging from analyzing users' needs to testing software after it has been created. Software developers also suggest potential improvements to customers' current software systems and applications. Additionally, developers have to create the models that programmers use to write software code, and they also collaborate with other computer specialists involved in software development, such as graphic designers.

Applications software developers focus on designing computer applications such as word processors and games. They might create custom software for an individual client or broader applications for the general public. Systems software developers focus on creating systems that keep computers running properly. They also build the interfaces that allow users to interact with computers. Many software developers find employment with firms that specialize in designing computer systems or software, and about 10% of software developers worked for computer or electronics manufacturers as of 2010. About 8% of people employed in this occupation worked in the finance and insurance sector.

Salary Info and Career Outlook

The U.S. Bureau of Labor Statistics (BLS) expects job growth for software developers to be much faster than average in the coming years. Overall employment of applications developers is projected to increase by 23% from 2012-2022, and employment of systems developers is expected to grow by 20% during the same period. As of May 2014, the BLS reported a median annual salary of about $96,000 for applications developers and around $103,000 for systems developers.

Requirements for Software Developers

Strong computer programming skills are essential for software developers. In addition, you'll typically need a bachelor's degree in computer science or a related field, like mathematics. However, talent is what is important on the job market, so you may also be able to find a job if you learned your programming skills informally and can demonstrate them to potential employers. Knowledge related to the industry in which you plan to work will also be important in your career as a software developer, since you'll want to understand how the software you create will be used. Additionally, you'll need to possess strong problem-solving and analytical skills to succeed as a software developer. Since developers spend much of their time working with project teams and interacting with customers, the following 'people skills' are required as well:

  • Oral communication
  • Customer service
  • Teamwork

What Are Employers Looking for?

Some employers prefer job candidates with bachelor's degrees and experience, and knowledge of popular programming languages, such as Java, is also valued on the job market. The following are a few sample job listings from May 2012 to give you an idea of what employers are looking for:

  • An information technology company based in Massachusetts is looking for a software developer with strong programming experience in languages such as Perl, Java and Python. This position involves working with a collaborative development team. A bachelor's degree in computer science, math or physics is required.
  • An alternative energy company in New York seeks a software developer to create and support applications geared toward the energy and financial markets. A bachelor's degree in computer science or a closely related field and 1-3 years of Java development experience are requirements.
  • A California maker of diagnostic manufacturing equipment is looking for a software developer to help refine existing software and develop a new user interface. The position involves working with engineers, application scientists, product managers and key customers. A bachelor's degree in computer science or electrical engineering is required, along with 2-4 years of programming experience in the LabVIEW language.

Standing Out in the Field

According to the BLS, advancing your education is one way to stand out from other job-seekers in the software development field. While a bachelor's degree is required for many software developer positions, a master's degree in computer science or a related field is preferred for some jobs. The BLS also expects job prospects to be best for software developers with knowledge of the most up-to-date programming tools and languages. For software developers who plan to coordinate entire projects, it may be advisable to take college courses in English, graphic design and the social sciences in addition to computer science. For those planning to work in a particular industry, such as finance, relevant coursework will also be an asset. Finally, developing a portfolio that showcases projects you've completed or worked on can be helpful in setting you apart.

Alternative Career Options

If you'd like to work in the IT industry, but you don't think a career as a software developer is right for you, there are other options to consider. For example, if you find writing code for software to be especially interesting, you might want to consider a career as a computer programmer. You'll translate the program designs that software developers create into instructions a computer can follow. A bachelor's degree is often required for computer programmer positions, although some employers only require an associate's degree. The BLS projects average job growth for computer programmers, with overall employment expected to increase by 12% from 2010-2020. As of May 2011, the BLS reported a median annual salary of about $73,000 for computer programmers. Although the career and salary prospects are not as good for programmers as they are for developers, this may still be a better career choice for you if you prefer to work alone. According to the BLS, programmers frequently work independently, while developers spend a lot of time collaborating with others.

You may also want to consider pursuing a career as a computer hardware engineer, particularly if you find the nuts and bolts of complex computer systems interesting. Computer hardware engineers participate in the development and testing of new computing technology, and they typically have a bachelor's degree in computer engineering. The BLS projects 9% job growth for this occupation from 2010-2020, which is lower than average; however, the median annual salary for this profession was almost $99,000 in May 2011, which is slightly higher than that for software developers.

Popular Schools

  • Online Programs Available
    1. Purdue Global

    Program Options

    Master's
      • MS in IT - Secure Software Development and Quality Assurance
      • MS in Cybersecurity Management - Secure Software Development and Quality Assurance
    Bachelor's
      • BS in Analytics - Software Development Using C#
      • BS in Analytics - Software Development Using Java
      • BS in Analytics - Software Development Using Python
      • BS in Analytics - Software Development Using Web Languages
      • BS in Cybersecurity - Software Development Using C#
      • BS in Cybersecurity - Software Development Using Java
  • Online Programs Available
    2. Grand Canyon University

    Program Options

    Master's
      • M.S in Software Development
      • M.S in Software Engineering
    Bachelor's
      • B.S. in Software Development
  • Online Programs Available
    3. Liberty University

    Program Options

    Master's
      • MS: Information Technology: Software Design & Management
      • MS: Engineering Management: Leadership
  • Campus and Online Programs
    4. Full Sail University

    Program Options

    Bachelor's
      • Bachelor of Science - Software Development
  • Online Programs Available
    5. National University

    Program Options

    Doctorate
      • PhD-TIM - Engineering Management
  • Boston, MA

    Boston University

  • Campus Locations:
    7. Universal Technical Institute

    Program Options

    Certificate
      • Wind Power Technician

Featured Schools

Purdue Global

  • MS in IT - Secure Software Development and Quality Assurance
  • MS in Cybersecurity Management - Secure Software Development and Quality Assurance
  • BS in Analytics - Software Development Using C#
  • BS in Analytics - Software Development Using Java

Which subject are you interested in?

Grand Canyon University

  • M.S in Software Development
  • M.S in Software Engineering
  • B.S. in Software Development

What is your highest level of education?

Liberty University

  • MS: Information Technology: Software Design & Management
  • MS: Engineering Management: Leadership

What is your highest level of education?

Full Sail University

  • Bachelor of Science - Software Development

What is your highest level of education?

National University

  • PhD-TIM - Engineering Management

What is your highest level of education?

Universal Technical Institute

  • Wind Power Technician

What is your highest level of education completed?