Skip to content

Applied Software Engineering (BSc)

Entry year


Taught at the National Software Academy in Newport, this hands-on course is for those who want to learn how software is built and maintained through industry-facing development projects.

Book an Open Day

Course overview

This course aims to make you a highly employable software engineer with the skills, knowledge and hands-on experience that graduate employers are looking for. 

Designed in close collaboration with industry, this innovative degree will help you gain experience in hands-on software development using current commercial tools and techniques. Our teaching focuses on cloud, mobile and web development, with an emphasis on technology and standard industry practices.

You will create software-based solutions to real problems in a dynamic, tech start-up atmosphere at the National Software Academy in Newport. The Academy is part of the School of Computer Science and Informatics. All of your travel costs are included in the degree, as is access to Cardiff University's student facilities. 

Distinctive features

Industry-focused engagement – Network with our wide range of industry partners through case studies, team projects, networking events and guest presentations.

Professional skills development – Develop your teamwork, leadership, communication and problem-solving skills and learn how to make effective use of your time to deliver value on real client projects.

Innovative teaching atmosphere –  Based in a vibrant tech start-up atmosphere, you will be at the centre of a teaching network of industry mentors and experts who will offer their insight into how software engineering works in practice.

Summer placement opportunities – Gain work experience and make valuable industry connections with the opportunity to complete two paid work placements during the summer months. Our dedicated placements team can help you find a placement and provide support during your time there.

UCAS code4JVD
Next intakeSeptember 2020
Duration3 years
ModeFull time
Typical places availableThe School typically has 200 places available.
Typical applications receivedThe School typically receives around 1,200 applications.

"I like the way the National Software Academy are changing the curriculum. It's more practical and relevant to today's standards. You get in, you write code, you do it."                                                      Emma, Applied Software Engineering Graduate.

Entry requirements

ABB - BBB. You will not need to achieve these grades from any specific subjects. Please note that General Studies are not accepted for entry.  

Extended Project Qualification: Applicants with grade A in the EPQ will typically receive an offer one grade lower than the standard A level offer. Please note that any subject specific requirements must still be met.

The Welsh Baccalaureate Advanced Skills Challenge Certificate will be accepted in lieu of one A-Level (at the grades listed above), excluding any specified subjects.

DDM - DMM in BTEC Information Technology (or Information Communication Technology), Computing and Engineering.

32-30 points or 655 in 3 Higher Level subjects.

Alternative qualifications may be accepted. For further information on entry requirements, see the School of Computer Science & Informatics admissions criteria pages.

GCSE

Grade C or grade 4 in GCSE English Language.

IELTS (academic)

At least 6.5 overall with a minimum of 5.5 in each subskill.

TOEFL iBT

At least 90 overall with minimum scores of 17 for writing, 17 for listening, 18 for reading and 20 for speaking.

PTE Academic

At least 62 overall with a minimum of 51 in all communicative skills.

Trinity ISE II/III

II: at least two Distinctions and two Merits.
III: at least a Pass in all components.

Other accepted qualifications

Please visit our English Language requirements page for more information on our other accepted language qualifications.

GCSE Maths grade C/4. GCSE English Language grade C/4 or an accepted English Language equivalent

Tuition fees

UK and EU students (2020/21)

Tuition feeDeposit
£9,000None

Visit our tuition fee pages for the latest information.

Financial support may be available to individuals who meet certain criteria. For more information visit our funding section. Please note that these sources of financial support are limited and therefore not everyone who meets the criteria are guaranteed to receive the support.

Students from outside the EU (2020/21)

Tuition feeDeposit
£21,950None

Visit our tuition fee pages for the latest information.

Financial support may be available to individuals who meet certain criteria. For more information visit our funding section. Please note that these sources of financial support are limited and therefore not everyone who meets the criteria are guaranteed to receive the support.

Additional costs

Accommodation

We have a range of residences to suit your needs and budget. Find out more on our accommodation pages.

Course structure

The course is structured as a full-time degree, taught over three years with two semesters per year.  The course is delivered exclusively from the National Software Academy premises in Newport, with full facilities and student support provided. Students will be provided with a travel bursary to cover the costs of travelling to Newport.  The premises in Newport are located in very close proximity to Newport railway station.

Formal teaching and group sessions will take place over three days per week in Newport with two days per week left for group project work, self-directed learning and accessing other University resources, support services, clubs, societies etc.

Students at the National Software Academy work on the development of software projects for real clients drawn from the private, public and third sectors. Most client-based projects span four weeks and your team will meet with your clients every two weeks during this period. Much of the teaching, learning and assessment is based in the context of these projects.

This three-year course starts by building core analytical and coding skills that will underpin your studies and your future career. Web development projects in year one are followed by more substantial projects in year two, when you apply new skills and knowledge to implement enterprise-scale software systems. Meanwhile, you will take on a larger role in project meetings, building your workplace confidence and communication skills.  In year three, you will learn about emerging technologies and combine them with your core skills to produce an innovative product with an appreciation of the latest languages, frameworks and tools.  The Large Team Project in the final year is an opportunity for you manage and deliver a substantial software product over 10 weeks.

The modules shown are an example of the typical curriculum and will be reviewed prior to the 2020/21 academic year. The final modules will be published by September 2020.

Year one

In year one you learn to think like a programmer and begin to code in a professional manner. You will work primarily with languages such as JavaScript, Java and Python to design, develop and deploy web applications according to the needs of customers.

You also will start to develop your knowledge of relational and NoSQL database systems.  You will learn how to use the same industry-standard tools that are used by real-world developers, following best practice to develop quality software.

You will begin to develop your professional skills including communication, project management and the principles of agile development.

Module titleModule codeCredits
Introduction to Web DevelopmentCM611220 credits
Software Development Skills 1CM611320 credits
Computational ThinkingCM611420 credits
Fundamentals of Computing with JavaCM612120 credits
Software Development Skills 2CM612320 credits
Database SystemsCM612520 credits

Year two

In year two you will work on larger, more complex and technically difficult projects.

You will expand your knowledge in areas such as performance and scalability, cyber security and DevOps, and develop and deploy mobile-based applications according to the needs of customers.  This will be necessary to support the scale, resilience and security needs of your cloud-based enterprise solutions.

At this point you are expected to be leading project meetings to plan and manage development work for a team, and regularly holding meetings with customers.

Module titleModule codeCredits
Database SystemsCM621120 credits
DevOpsCM621220 credits
Commercial Applications with JavaCM621320 credits
Performance and ScalabilityCM622220 credits
Agile Project ManagementCM622320 credits
Cyber SecurityCM622420 credits

Year three

In year three you will learn about user experience design and emerging trends and use these to develop a product with an appreciation of the latest languages, frameworks and tools. You will learn about managing change and adopting technology in organisations.

In the Large Team Project module you will collaborate with other team members to effectively manage a project to develop a high-quality software solution to meet the needs of your clients.

The final year builds upon the experiences of years one and two, and brings together all of the elements you will need to think like and work as professional software engineer.

Module titleModule codeCredits
Commercial Frameworks, Languages and ToolsCM631120 credits
Adopting TechnologyCM631220 credits
Emerging TechnologiesCM632120 credits
Large Team ProjectCM633140 credits
Managing ChangeCM633320 credits
The University is committed to providing a wide range of module options where possible, but please be aware that whilst every effort is made to offer choice this may be limited in certain circumstances. This is due to the fact that some modules have limited numbers of places available, which are allocated on a first-come, first-served basis, while others have minimum student numbers required before they will run, to ensure that an appropriate quality of education can be delivered; some modules require students to have already taken particular subjects, and others are core or required on the programme you are taking. Modules may also be limited due to timetable clashes, and although the University works to minimise disruption to choice, we advise you to seek advice from the relevant School on the module choices available.

Learning and assessment

How will I be taught?

The National Software Academy, a part of the School of Computer Science and Informatics, has a strong and active industrial focus, which informs and directs all teaching. We are committed to providing students with teaching of the highest standard.

Key skills are taught through lecturer-led sessions typically with a high proportion of hands-on, practical learning, using current commercial tools and techniques.  You will be given a set of concepts and examples, and are then challenged with one or more problems on which you can apply your new skills. 

You will often work together to apply your knowledge to achieve solutions to real-world problems in a project-based learning approach. Ample time for mentoring is provided in the timetable, which complements the expected (and significant) self-study that is required.  Further learning is provided through industrial talks or additional mentoring.

 

How will I be supported?

The School of Computer Science and Informatics prides itself on offering a comprehensive support structure to ensure positive student/staff relationships. You will be assigned a member of staff to act as your personal tutor, who will serve as a point of contact to advise on both academic and personal matters in an informal and confidential manner.

The course makes use of Cardiff University’s Virtual Learning Environment (VLE) Learning Central to provide course materials, and additional information is provided online.

The style of course delivery and the focus on projects means that you will receive regular support both from academic staff and also from industry professionals.

Although the delivery of the course will take place in Newport, you will be encouraged to base yourself in Cardiff in order to take advantage of everything that it has to offer, both in terms of the University facilities (Libraries, Halls of Residence, Student Union etc.) and the wider city.

You will also have full access to the 24-hour computing facilities in the School of Computer Science and Informatics.

You will have access to the full range of services provided by the University’s Student Support Service:  http://www.cardiff.ac.uk/studentsupport/

 

How will I be assessed?

Teaching is organised into modules. Your progress in each module will be assessed during, or at the end of, the semester in which it is taught. All modules include assessments, the methods of which vary from written examinations and assessed coursework, to a combination of both.  Coursework is the preferred method on this degree with your project work being central to this.

The project portfolio is the primary means of assessment for many modules. It consists of a sample of student work, with written explanation and/or reflection. This covers the entire software development lifecycle, depending on the learning objectives of the module for example: requirements, documentation, technical specifications, code, tests, sprint plans, user stories, screenshots of products, and user feedback. You will use the project portfolios to demonstrate your understanding of all relevant theory, and how it has been applied.

A timed computing exercise fulfils a similar purpose, where students undertake a programming, or other software development assignment, working independently, during a set period.

Exams are also used to assess knowledge and understanding more directly. Other forms of assessment during the course include undertaking reflective reports, business cases and presenting to clients and peers, which draw upon your experience of project work.

Feedback:

Students have many opportunities forfeedback during contact sessions. You will be involved in giving feedback in activities such as code reviews, retrospectives and self-assessment. Additionally, you will receive feedback from teaching staff, industry professionals and project stakeholders; providing you with experience of the real-life feedback that you may encounter when you find employment..

What skills will I practise and develop?

The skills developed on this course mirror the complete software lifecycle, covering everything needed for professional work, including:

  1. Meeting with customers and gathering their requirements.
  2. Managing projects, timescales and software teams for the delivery of real projects.
  3. Effectively communicating technical and non-technical ideas to a range of audiences, verbally and in writing.
  4. Analysing requirements and applying current software engineering concepts and knowledge of technology to develop useful products -- and make them scalable, robust and secure.
  5. Fluency in industry-standard programming languages and confidence working with a range of operating systems.
  6. Ability to confidently use industry-standard tools such as IDEs, DBMSs and source control.
  7. Debugging and testing code to fix bugs and defects.
  8. Design and implementing relational and NoSQL database systems for real projects.
  9. Securing database systems, network communication and web-applications.
  10. An intuition for software design and code quality, and an ability to think like a developer, making pragmatic engineering judgements and trade-offs in a fast-paced commercial environment.
  11. Reviewing code and giving effective feedback and mentoring to colleagues.
  12. Deploying and launching products and services, supporting real users.

Knowledge & Understanding:

Upon completion of the Programme a typical student will be able to demonstrate the ability to apply their knowledge/understanding of:

  • Concepts, syntax, and language features common to a range of computer programming languages used in industry.
  • Appropriate tools and techniques to design, write, debug, test, manage and deploy code; as well as to manage a commercial software development process such as Agile.
  • Technical knowledge of a variety of platforms and technologies used in industry.
  • A deep understanding of what constitutes good quality code.
  • Cutting-edge technologies and trends in selected research areas of computing.
  • Understanding of a range of 3rd party libraries, frameworks, and large commercial codebases.

Intellectual Skills:

Upon completion of the Programme a typical student should be able to:

  • Evaluate the available options to select the most suitable tools and techniques for use in each stage of software development;
  • Analyse complex problems effectively, identify edge cases, inconsistencies, potential pitfalls, and other issues.
  • Think critically about software design, exercise engineering judgement in the context of writing and developing software.
  • Sustain a critical argument, in writing, presentation and group discussion. Solve unseen problems, iteratively; by identifying a starting point and developing a solution incrementally.

Professional Practical Skills:

Upon completion of the Programme a typical student should be able to:

  • Use current commercial planning tools and techniques to plan, schedule and manage a commercial software development project and track the project during its lifecycle.
  • Gather, analyse and prioritise appropriate functional and non-functional requirements during meetings with real customers using commercial tools and techniques and consider quality and other constraints.
  • Design, write, test, debug, manage and deploy code productively on large projects in a commercial, team context.
  • Work with a variety of platforms (cloud, mobile, web) using a range of languages, technologies, and tools.

Transferable/Key Skills:

Upon completion of the Programme a typical student should be able to:

  • Critically appraise her or his own work and the work of others, through written and verbal means;
  • Clearly and efficiently communicate complex ideas, principles and theories effectively by oral, written and practical means - to a range of audiences, most notably industrial customers.
  • Work and learn effectively in a team and as an individual;
  • Appreciate opportunities for career development and lifelong learning by participating in the University’s Personal and Career Development Programme and by building up a life-long support network of industrial contacts;
  • Undertake independent study, and critical reflection.

 

Careers and placements

Career prospects

Skilled software engineers are in extremely high demand, making employment prospects for graduates in the computing and ICT industry superb. According to the Destinations of Leavers from Higher Education (DLHE) Survey, 89% of graduates from the School of Computer Science and Informatics were in employment or engaged in further study within six months of graduating.

As a student at the National Software Academy you will get many opportunities to meet and work with companies and build your industrial contacts.

You can use your BSC as a pathway to further study on our brand-new MSc in Software Engineering or to the workforce. Our  graduates have gone on to work for companies such as Admiral and DevOps. Others have chosen further study or research at Cardiff or other top universities.

Cardiff University’s Careers and Employability Service is available to all students. Our School also has a dedicated Careers Officer and a Placement Officer that will be able to assist you with any careers advice.

Jobs

  • Software Engineer
  • Web Developer
  • Systems Development Officer
  • Business Analyst

Placements

There is no year in industry option offered with this course.

However, you will be encouraged to seek summer placements during your first and second years of study. We have a wide range of companies that are engaging with the National Software Academy and many of these are interested in providing summer placements for the students on this course.

The University also advertises a range of summer placement opportunities, including the option to work or study abroad. The School’s Placement Officer will work closely with industrial partners and the Careers Service to inform students about placement opportunities. Workshops will be provided to give advice on finding and applying for a summer placement.

icon-academic

Next Undergraduate Open Day

Spring 2020

icon-international

International

icon-contact

Get in touch

icon-pen

How to apply