If you love finding and fixing bugs in programming and coding, you could be suited to a career in software testing
As a software tester, you are involved in the quality assurance stage of software development and deployment. You'll conduct automated and manual tests to ensure the software created by developers is fit for purpose. Software testing involves the analysis of software, and systems, to avert risk and prevent software issues.
Your role is integral to the creation of software systems and technical products including vehicles, electronic goods, defence, and healthcare.
Ultimately software testers are employed to find bugs and issues within a product before it gets deployed to everyday users. You might work on bespoke, individual projects or multinational projects spanning the globe and costing billions of pounds. You will need to be, or become, familiar with programming and using coding languages. Assessing code is one part of the role of a software tester.
Your role will vary depending on project requirements. You may join a project at the initial implementation stages to assess potential risks, or be brought on to a project midway through, when testing becomes a key requirement.
Large organisations may have software testers dedicated to one project; whereas smaller organisations may have a central team working on multiple projects.
However, your work activities are likely to include:
- meeting with system users to understand the scope of projects
- working with software developers and project support teams
- identifying business requirements
- project planning
- monitoring applications and software systems
- stress testing
- performance testing
- functional testing
- scalability testing
- writing and executing test scripts
- running manual and automated tests
- testing in different environments including web and mobile
- writing bug reports
- resource planning
- reviewing documentation
- working towards departmental and project deadlines
- quality assurance
- providing objective feedback to software development project teams
- problem solving
- designing tests to mitigate risk
- presenting findings to software development and business user teams
- travelling to different project sites
- working on multiple projects at one time
- document analysis
- liaising with project teams in other parts of the world
- communicating findings to technical and non-technical colleagues.
- Starting salaries for graduate-level software testing positions are in the region of £18,000 to £24,000 (depending on location and company size).
- With three to five years' experience salaries can rise considerably. Software testers earn on average £35,000 to £50,000.
Salaries vary according to location, technical knowledge and the sector. The City of London and financial services currently pay the highest salaries. Some companies also offer bonus schemes, benefits and overtime payments for unsociable hours.
Income figures are intended as a guide only.
Working hours usually follow a standard office day of eight or nine hours, between 8am and 6pm. However, due to the nature of project work you may be required to work outside these times. On occasion this may mean working shifts and weekend work. This would be most likely to occur during periods of software deployment or if a project happens to be taking place across a variety of locations and time zones.
What to expect
- Work is mainly office based and you will spend the majority of your time at a computer.
- Your role may be stressful at times, particularly around the time of project completion.
- Once you have gained adequate experience, you could progress into the freelance and contracting market. This would enable you to select specific projects and work more flexibly. However, working as a contractor may not provide the same benefits and job security in comparison to a permanent employee.
- The IT sector, including software testing roles, has a higher ratio of male to female workers. However, there is a higher ratio of female to male software testers when compared with other IT jobs (such as software development). Organisations working to encourage more females into software testing roles and IT careers include Women in Technology and the BCS (The Chartered Institute for IT).
- Companies employ software testers in many locations within the UK. The highest concentration is in large cities including London, Manchester, Edinburgh and Birmingham. There are also international opportunities, most notably in the USA and India, where a large number of off-shore software testing companies are based.
Software testers often have a degree in computer science or IT. However, the role is open to graduates from a variety of degree disciplines including:
- electrical engineering
You can enter the software testing profession with an HND or foundation degree. A software, IT, or engineering diploma may be most highly regarded by companies.
You will need to have:
- strong verbal and written communication skills with the ability to liaise with a variety of stakeholders
- problem solving skills
- the ability to work under pressure
- attention to detail
- competent technical skills
- the ability to work in a team and individually
- organisational skills with the capability of working towards tight deadlines
- a passion for technology.
You would benefit from gaining professional software testing experience through summer placements and internships. This would expose you to the full development lifecycle. You would also gain experience of working in a team and using both written and verbal communication skills.
A number of large graduate employers offer summer internships and year-in-industry placements, which provide the opportunity to gain relevant work experience. Additionally, some companies run work shadow schemes to give an insight into the software testing profession.
Your university may also have a computing society. Joining relevant university societies will help you demonstrate your passion for technology and may provide other opportunities to meet with companies and industry professionals.
Software testers are required in a variety of organisations and sectors. Large employers with sophisticated software and IT systems will have the most opportunities. Technology companies and smaller organisations also require software testers.
You can find software testing opportunities in:
- financial services
- professional services
- public sector
Large graduate employers may include software testing within their rotational IT graduate programmes. This would give you the opportunity to gain experience in software testing as well as other IT roles (including project management, application support and software development).
Employers with less traditional rotational graduate schemes may offer software testing as a direct entry role where candidates start work as a software tester from day one.
Look for vacancies at:
Training will depend on the company you join and can vary from structured training and development programmes organised via a graduate scheme, to on-the-job training and short courses as required.
As the IT sector is ever changing, it is important that you keep up to date with developments and specific software testing trends. On-the-job training is an ideal way for students and recent graduates to gain an understanding of the software development lifecycle.
Additionally, you could consider joining a professional association, such as the BCS (The Chartered Institute for IT). It may help to expand your awareness of the IT sector and provide you with the opportunity to meet a variety of professionals. The BCS, along with over 100 accredited training organisations worldwide, runs a number of software testing courses and professional qualifications. The courses and qualifications are mapped against SFIAplus (the Skills Framework for the Information Age), which is the UK government-backed competency framework describing IT roles and the skills needed to carry them out.
At present there are no specific software testing postgraduate degrees offered by UK institutions. However, it is not uncommon for software testing professionals to decide to study a postgraduate IT qualification at some point during their career. Search for postgraduate courses in computer sciences and IT.
You may start your career as a software tester on a graduate scheme or via an entry-level position. Career progression can be rapid. The speed at which you progress will depend on your experience, your exposure to different systems, and awareness of testing methods. Professional qualifications and technical skills will help to speed up your progression.
Some software testers progress into senior software testing roles including:
- senior software tester
- software test team lead
- test manager.
You could choose to specialise by gaining experience within a specific sector e.g. financial services or media. Or you may decide to diversify and develop an understanding of many sectors.
Additionally, as software testers are required to work with business and project teams, you could move into business-facing roles, such as business analysis and project management.
Progression into software development roles is another possible route.