Software development
The software development industry consists of organisations which develop, maintain and publish software or applications for themselves or for clients. People within these organisations help build software systems that power networks and devices to ensure that those systems stay functional.
Software itself is the set of instructions or programmes that instruct a computer of what to do. You could choose to work at a software development house where you would undertake different project work for clients. Or you could do in-house software development.
It is one of the fastest growing industries in the IT space alongside data science and artificial intelligence.
Find out more about the software development sector, how to organise work experience and secure your first graduate role.
An overview of the software development
Software developers focus on the design and programme implementation. The stages involved within the software development procedure include:
- Gathering and analysis of requirements: At this point, the prime focus of the stakeholders and project managers is to note the exact things needed from any software under consideration
- Design: In this stage, the draft design is prepared for the software from the requirement specifications
- Coding/implementation: This is the stage where actual coding begins. The main focus of the phase is the development of perfect codes by the developers.
- Testing: If anything goes wrong in the testing stage or any error is noted in the codes, it can lead to the repetition of the coding process, and the cycle goes on till the completion of the same.
- Deployment stage: The finalised code is implemented into the software and then deployed or delivered to the customers to be used.
- Maintenance: Once the customers start using well-developed software, the current issues start surfacing with time. This is often coined as maintenance for the finalised software.
The factors affecting the software development industry and its growth include:
- the outsourcing of development work overseas
- open source data
- multiple platform working (for example, mobile technology)
- cloud technology
- big data
- gaming
There has also been an increase in the use of systems for business process management such as enterprise resource planning (ERP) and customer relationship management (CRM) systems.
The industry websites below can help you keep up to date with what's happening in the market and will provide sector information. This can be particularly useful when faced with commercial awareness questions during a recruitment process.
Computer weekly
British Computer Society
Codecademy
The Engineer
Who are the employers in this sector?
Global employers
Worldwide, the four largest software companies are Microsoft, Oracle Corporation, SAP and IBM.
There are many countries that you could work in with a software development role. For many years, Silicon Valley has been seen as the major tech hub in the United States. As tech has continued to thrive as a major industry, more and more tech hubs have emerged as a result of the demand for more great technology solutions. Other important tech hubs exist in Singapore, London, Tel Aviv, Tokyo, New York and Shanghai.
UK employers
The Tech Nation 2023 Report states that the UK majors on fintech, health and energy with $11.5bn, $3.5bn and $3.3bn being invested in the respective industries. The report also highlights that there is diversity of positions in the UK tech workforce with a multitude of roles available in software development.
The UK is home to many global players as well as many small and medium-sized companies and start-ups. The Tech Nation 2023 Report states that companies accept the support that software development offers.
In the UK, many of these organisations are London-based. There is also a "Silicon Fen" hub around Cambridge, as well as clusters in Scotland and the Midlands.
East Midlands
Nottingham is fast becoming a notable tech hub within the UK with a good representation of larger organisations as well as start-ups. Tech Nottingham is a local network offering events and information for Nottingham's software community.
Many of our graduates choose to stay in Nottingham to work in the software development sector. Recent graduates have moved to Capital One, Experian, Red Box Recorders and Midland HR.
Every year a number of Nottingham students opt to start their own software development companies. Support for this is available from the Ingenuity Lab based at Jubilee Campus.
How to use your degree in the sector
Within the software development industry there are many roles for software and application development. Job titles may not be standard across the industry so always look at the job description as well as the role title. It may also be useful to consider whether you would like to develop software in-house or for an organisation which provides software services to clients on a project basis.
Companies also recruit for other roles within the software project lifecycle. These might include:
- Project manager - Project managers plan and designate project resources, prepare budgets, monitor progress, and keep stakeholders informed the entire way.
- Software developer – A Software Developer designs and builds computer programs that power mobile devices, and desktop computers.
- Technical sales and business development consultant – In this type of role you may be developing leads and contacting potential customers. You could be devising sales strategies and implementing them. You may also meet face to face with existing customers regularly.
- UX and UI designers - UI UX designers create the user interface for an app, website, or other interactive media.
- Business analysts - Business analysts assess how organisations are performing and help them improve their processes and systems. T
- Systems analysts - Systems analysts analyse how well software, hardware and the wider IT system fit the business needs of their employer or of a client. They write requirements for new systems and may also help implement them and monitor their effectiveness.
Some roles are less technical, for example a business analyst might be more involved in understanding client software requirements and communicating these to developers. The article from Ubiminds provides a useful and readable description of roles involved in a typical system lifecycle.
Ubiminds - What are the key Development Team Roles, Responsibilities, and Concerns within the Software Development Lifecycle (SDLC)
Medium-sized and larger organisations will also require head office personnel. This could include marketing, HR and finance and project management, Graduates from any discipline would be able to apply for these types of roles in the software development sector.
Relevant degrees and/or programming experience
Computer science students are obviously highly sought-after within this sector. Organisations are also often interested in STEM (science, technology, engineering and maths) undergraduate students due to their analytical skills and potential programming or IT experience.
A relevant degree is useful, but anyone with coding skills and some experience with programming languages should be able to apply. It’s a good idea to take advantage of doing an online course, using online videos or resources for programming languages, so you can refine your skills and become a self-taught software coder.
Many employers are interested in candidates who can show that they have written code in their spare time and are able to pick up new languages, so it is not always necessary to have formal work experience.
Some organisations will be happy to train graduates in the software they use. Employers often say they are looking for a passion for technology above any specific coding skills.
It is also useful to talk about your transferable skills, for example how you can work effectively in teams and communicate with others to solve problems effectively.
How do I get a graduate role?
How do I gain work experience?
A year-long placement or summer internship is a fantastic opportunity to gain some work experience.
Shorter-term work experience or internships will also help when you are applying. Internship and placement opportunities can be found on Gradcracker, Prospects and Rate My Placement websites, as well as My Career.
MyCareer - sources of vacancies targeted at UoN students and graduates
Gradcracker - job vacancies
Prospects - job vacancies
Rate My Placement
We also have the Nottingham Internship Scheme where UoN students apply for placements in local companies during the Easter and summer vacations.
Nottingham Internship Scheme
As well as formal work experience, it may also be useful for you to gain coding experience through student societies or volunteering. Hacksoc offers opportunities and encourages students from all disciplines to gain coding experience. Any development projects as part of your course, extra-curricular projects, or even personal projects at home, will add value to your CV.
HackSoc
Please be aware that study abroad, compulsory year abroad, optional placements/internships and integrated year in industry opportunities may change at any time for a number of reasons, including curriculum developments, changes to arrangements with partner universities or placement/industry hosts, travel restrictions or other circumstances outside of the university's control. Every effort will be made to update this information as quickly as possible should a change occur.
What are my further study options?
It is possible to study MSc courses in computer science and more specialised areas. Although a masters qualification is certainly not a prerequisite, postgraduates may find their specific experiences enable them to progress more quickly.
PhD students may find their skills useful in organisations looking to adopt brand new technologies who might be offering research and development roles.
Horizon is a Nottingham-led research institute bringing together researchers within industry partners looking to innovate.