Software developer
Software developers create and test programs that allow people to complete tasks, run services and use digital devices.
Also known as: Programmer
- Starter salary£30,000 a year
- Experienced£75,000 a year
- Typical hours37 to 40 a week
What you'll do
As a software developer, you could:
- discuss client requirements and potential development ideas
- work with a technical team to form design plans and timescales
- write or update computer code
- test software at each stage or iteration to find and fix problems
- make sure software meets industry quality standards
- record changes made, with reasons, at each stage of development
- complete final checks before a product is released for use
- maintain and support systems once they're up and running
Working environment
You could work in an office, from home, remotely or at a client's business.
Skills and knowledge you'll need
You'll need:
- analytical thinking skills
- to be thorough and pay attention to detail
- maths knowledge for understanding programming
- the ability to come up with new ways of doing things
- complex problem-solving skills
- excellent verbal communication skills for sharing ideas
- knowledge of systems analysis and development
- the ability to write computer programs
- to have a thorough understanding of computer systems and applications
How to become a software developer
You can get into this job through:
- a university course
- a college course
- an apprenticeship
- a graduate training scheme
University
You could do a foundation degree, higher national diploma or a degree in:
- computer science
- information technology
- software development
- financial technology
- software engineering
- maths
Entry requirements
You'll usually need:
- 1 or 2 A levels, or equivalent, for a foundation degree or higher national diploma
- 2 to 3 A levels, or equivalent, for a degree
College
You could do a college course to learn some of the skills needed to get a trainee position, or to move onto further study. Courses include:
- computing
- computer science
- programming
- principles of coding
- T Level in Digital Software Development
Entry requirements
Entry requirements for these courses vary.
- 4 or 5 GCSEs at grades 9 to 4 (A* to C), or equivalent, including English and maths for a T Level
Apprenticeship
You could apply to do an apprenticeship, such as:
- Software and Data Level 2 Foundation Apprenticeship
- Software Development Technician Level 3 Advanced Apprenticeship
- Software Developer Level 4 Higher Apprenticeship
- DevOps Engineer Level 4 Higher Apprenticeship
- Digital and Technology Solutions Professional L6 Degree Apprenticeship
- Game Programmer Level 7 Degree Apprenticeship
Other routes
You may be able to apply for a place on a graduate training scheme with an IT company, if you have a degree.
These are often open to graduates of any subject, not just people with a degree in a computing.
Foundation apprenticeship
You can apply for a foundation apprenticeship if you're aged 16 to 21.
If you're aged 22 to 24, you can apply if you:
- have an education, health and care (EHC) plan
- are in care or have been in care
- are in prison or have been in prison
Entry requirements
You'll usually need:
- no specific qualifications or experience to apply for a foundation apprenticeship
- 5 GCSEs at grades 9 to 4 (A* to C), or equivalent, including English and maths, for an advanced apprenticeship
- 4 or 5 GCSEs at grades 9 to 4 (A* to C) and A levels, or equivalent, for a higher or degree apprenticeship
Career path and progression
With experience, you could:
- become a senior developer, leading a team
- manage development projects
- move into related areas, such as systems design, IT architecture and business systems analysis
- set up your own company and work as a consultant
Career tips
You could build up your skills and knowledge using online learning resources for:
- programming languages
- project management
- software development methods
Guides for this industry
Related roles
- Job roleWeb developer
- Job roleSolutions architect
- Job roleComputer games developer
- Job roleIT project manager
- Job roleArtificial intelligence (AI) engineer
Contains public sector information licensed under the Open Government Licence v3.0
