Software development covers a wide range of roles, tasks and systems, all of which focus on designing and maintaining software that addresses users’ needs.
As well as writing code, software developers need to understand clients’ or users’ needs, prototype and test solutions, and maintain them. This tends to be an iterative process to reflect changing needs. As a result, software developers need to work with a wide range of other people to make sure their solution continually meets expectations.
Software developers are also known as web, system or software programmers, software or network engineers or a combination of these terms – or others. You may find that job titles are not consistent across industries or sectors.
Typical duties include:
discussing and understanding clients’ and/or users’ requirements.
researching and prototyping possible solutions.
writing and testing code.
applying project management methodologies.
collaborating with other developers and other professionals such as technical writers and graphic designers.
using development tools to manage the process, version control and quality.
contributing to training materials for new software systems.
monitoring and evaluating existing systems to ensure they are fit for users’ needs, and maintaining it as needed.
keeping up to date with technical skills and industry trends.
You’re likely to work standard office hours (eg 9.00 am to 5.00 pm), although you may need to work extra hours when deadlines are approaching or if problems arise unexpectedly.
Salary survey websites suggest that entry-level salaries in software development tend to be between £28,000 and £40,000. Salaries are higher in London and Cambridge.
Typical employers of software developers
Software development companies.
Financial services firms.
Public sector organisations.
Media and entertainment companies.
Universities and education providers.
Jobs are advertised on
, by careers services and specialist recruitment agencies.
Qualifications and training required
There are routes into software development for both graduates and school leavers.
For graduate positions, degrees in computer science, software development or similar are usually preferred. However, some employers don’t specify a degree subject and are willing to train you up if you demonstrate enthusiasm and the capacity to learn the relevant skills.
You can enter this profession without a degree via a software development apprenticeship.
Key skills for software developers
Programming languages (different types of developer roles require different technologies).
Excellent organisational and time management skills.
Accuracy and attention to detail.
An understanding of technology trends and their role in a commercial environment.
Self-development skills to keep up to date with a fast-changing industry.