Data Science (with a year in industry) MSci
A*AA at A level, Mathematics; graduates earn a median £40,000 three years on.
Mathematics · 97% of entrants came with A levels · 94% stay on after year 1 · York course page, Discover Uni
What do you need to get in?
Typical offer — the grades most applicants are asked for. Contextual offer: AAB, for applicants from under-represented backgrounds.
York course page, read 19 September 2026 · Discover Uni entry profile
- 1Mathematics
- 2Mathematics
UCAS tariff points — a points scale for grades: A* = 56, A = 48, so A*A*A = 160. Entrants’ totals include extra subjects.
Other qualifications5
| Qualification | Typical offer | Required subjects |
|---|---|---|
| Access | We accept the Access to Higher Education Diploma. The syllabus must contain a siWe accept the Access to Higher Education Diploma. The syllabus must contain a significant portion of Mathematics that is considered equivalent to A level standard. Applications will be considered on a | — |
| BTEC | DDDDDD plus grade A in A level Mathematics (or equivalent qualification) We consider a range of BTEC qualifications equivalent to 3 A Levels, or in combination with A Levels or other qualifications. For | Mathematics Distinction, Distinction in 2 BTEC Level 3 National Extended Certificates plus A in A Level Mathematics |
| IB | 37 points37 points overall, including grade 6 in Higher Level Mathematics (either Analysis and Approaches or Applications and Interpretations). | 6 in Higher Level Mathematics |
| Scottish Highers | ABBB | — |
| Advanced Highers | A in Mathematics plus | — |
What do you study?
Compulsory modules this year: mathematics & statistics 47% · digital & ict skills 36% · engineering & manufacturing 8% · law & public administration 3%.
Module — one course unit, usually a term or a year long; “core” means everyone takes it. One UK credit is about ten hours of study; a full year is 120 credits.
York course page · optional modules vary by year
- Software 1: Foundations of Programming for Computer Science
What you learn (12)
- describe core concepts of procedural programming
- write small procedural programs to meet specified requirements
- relate program syntax to its semantics and analyse execution outcomes
- implement custom data structures to represent process states
- translate pseudocode algorithms into working code
- develop programs incrementally using tests to verify each stage
- store data using built-in collection types
- read and write data from CSV and JSON files
- use a software development environment to write and manage code
- identify and fix bugs in code using a debugging tool
- organise code according to software engineering principles
- document the design and implementation of code
- Software 2: Object Oriented Data Structures and Algorithms
What you learn (18)
- assemble data and methods into classes applying encapsulation
- integrate standard library code into own programs
- write code that satisfies given interface specifications
- test code to verify it meets interface requirements
- debug programs by identifying and fixing faults
- structure program code according to software engineering standards
- produce documentation explaining code design and implementation
- generate documentation automatically using programming tools
- analyse problems to design algorithms for simple tasks
- explain how algorithms and programs operate
- implement small programs based on algorithmic designs
- calculate worst-case running time using asymptotic analysis
- categorise sorting and searching algorithms by efficiency
- compare abstract data structures such as lists and graphs
- select appropriate data structures for design problems
- apply greedy and dynamic programming design paradigms
- justify choice of algorithmic paradigm for a problem
- explain the concept and benefit of approximation algorithms
- DATA: Introduction to Data Science
What you learn (12)
- distinguish between data types produced in science, engineering and design contexts
- apply strategies to ensure the quality of collected data
- retrieve data from diverse sources and file formats
- apply inferential statistical methods to test hypotheses about data
- analyse relationships and features within data sets using statistical procedures
- select suitable visualisations to present data findings
- use visual techniques to explore patterns within data sets
- use relational and non-relational databases to store data
- construct queries to retrieve data from different database systems
- identify ethical issues relating to data provenance and individual privacy
- evaluate the societal impact of data analytics practices
- apply principles from a professional data protection code of ethics
- Introduction to Probability and Statistics
What you learn (7)
- represent simple random experiments using probability models
- compute standard probability values using core formulae
- analyse relationships between independent and correlated random variables
- apply basic statistical techniques to data
- interpret results obtained from statistical techniques
- perform introductory data analysis using statistical software
- run simple simulations using a statistical computing package
- Foundations and Calculus
What you learn (8)
- prove elementary results concerning sets and their properties
- prove elementary results concerning functions and their properties
- apply differentiation techniques to solve calculus problems
- apply integration techniques to solve calculus problems
- perform calculations with vectors and complex numbers to solve problems
- prove rigorous statements about the behaviour of limits
- solve problems relating limits to derivatives and integrals
- use a computer algebra system to solve module-related mathematical problems
- Multivariable Calculus and Matrices
What you learn (9)
- solve second-order differential equations using standard techniques
- construct a Fourier series expansion of a function
- construct a Taylor series expansion of a function
- differentiate functions of several variables
- integrate functions of several variables
- perform algebraic operations on matrices
- apply matrix methods to solve systems of linear equations
- use computer algebra software to solve multivariable calculus problems
- use computer algebra software to solve matrix algebra problems
Year 2 · 6 core · 120 credits ≈ 1,200 hours
- Engineering 1: Software and Systems Engineering
What you learn (16)
- explain software engineering terminology and process models
- apply lifecycle and process models to support a project
- elicit user and system requirements from stakeholders
- document user and system requirements clearly
- design software architecture using object-oriented principles
- implement object-oriented software from a design
- estimate project risk to inform decision-making
- produce realistic project effort and time estimates
- use continuous integration tools in software development
- collaborate effectively within a team to complete a project
- apply software licensing models to project artefacts
- incorporate third-party software reuse into a project
- address cyber-security issues throughout the development lifecycle
- evaluate ethical considerations in software engineering practice
- write documentation for stages of the engineering lifecycle
- deliver presentations on project progress and outcomes
- Intelligent Systems: Machine Learning and Optimisation
What you learn (11)
- distinguish between strong, weak and general artificial intelligence
- describe the relationship between computation and artificial intelligence
- differentiate machine learning from the broader field of artificial intelligence
- calculate partial derivatives of multivariate functions
- apply linear regression to model relationships between variables
- apply logistic regression to classification problems
- explain the cause and effect of overfitting in machine learning models
- apply regularisation techniques to prevent overfitting
- train neural network weights using the backpropagation algorithm
- analyse ethical arguments concerning artificial intelligence applications
- evaluate privacy implications arising from machine learning systems
- Systems and Devices 2: Operating Systems, Security, and Networking
What you learn (13)
- write application code using OS-supported concurrency, communication and I/O features
- explain how hardware features extend basic OS structures introduced previously
- apply basic OS resource management mechanisms for time and memory allocation
- apply hardware and OS memory protection mechanisms including memory-mapped I/O
- apply OS file system mechanisms to enforce information security
- write concurrent programs at the process level
- explain how system hardware supports and implements process-level concurrency
- identify situations of deadlock, livelock and starvation in concurrent systems
- apply strategies to avoid deadlock, livelock and starvation
- explain the rationale behind the layered network model
- develop software that communicates with other systems using OS-level networking sockets
- describe how networked architectures integrate into an operating system
- develop simple networked applications using operating system networking knowledge
- Probability and Markov Chains
What you learn (12)
- calculate joint and conditional probability distributions
- compute expectations derived from joint and conditional distributions
- derive generating functions for standard probability distributions
- use generating functions to find expectation and variance
- apply the weak law of large numbers to analyse random variable sequences
- apply the central limit theorem to deduce asymptotic behaviour of estimators
- assess unbiasedness and consistency of a sequence of estimators
- estimate distribution parameters using maximum likelihood methods
- estimate distribution parameters using the method of moments
- evaluate the quality of parameter estimators
- calculate absorption probabilities in discrete Markov chains
- interpret the meaning of a stationary distribution in context
- Linear Algebra
What you learn (13)
- identify whether a given subset forms a linear subspace
- apply subspace properties to solve algebraic problems
- determine a basis for a given vector space
- calculate the dimension of a vector space from a basis
- recognise whether a given map is linear
- determine the kernel and image of a linear map
- apply the rank-nullity theorem to solve problems
- calculate eigenvalues of a linear map or matrix
- calculate eigenvectors corresponding to given eigenvalues
- define real and Hermitian inner products
- apply inner products to determine orthogonality of vectors
- derive consequences of orthogonality in vector spaces
- perform matrix factorisation using computer algebra software
- Statistical Inference and Linear Models
What you learn (11)
- calculate confidence intervals for population parameters
- perform hypothesis tests using frequentist methods
- interpret results of confidence intervals and hypothesis tests
- adapt statistical procedures to new scenarios using underlying theory
- derive new statistical tools from first principles
- describe methods for fitting linear regression models
- explain techniques for assessing linear model adequacy
- explain procedures used for selecting variables in regression models
- justify the rationale behind variable selection approaches
- apply statistical methodology to analyse real datasets
- communicate statistical findings in a written report
Year 4 · 3 core, 20 optional · 80 credits ≈ 800 hours
- Computer Science project or MMath group project
What you learn (15)
- apply advanced technical skills in a chosen specialist area building on theory
- design a computer systems engineering solution to a given problem
- implement a designed computer systems engineering solution
- evaluate the outcomes of an engineering project against its objectives
- apply established research methods to generate new knowledge
- interpret findings produced through recognised research techniques
- compare alternative approaches to a project problem
- justify the chosen approach at each project stage
- identify project tasks feasible within time and resource constraints
- structure a written project report clearly according to set criteria
- reference sources to a publishable academic standard
- critically evaluate the work undertaken and methods applied in the report
- explain legal, ethical, social and professional issues relevant to the project
- propose mitigation strategies for identified ethical or professional risks
- summarise the context, methods and results of a project for a general audience
- Governance of Data Science
What you learn (9)
- explain the objectives behind governing data science projects
- analyse the governance challenges arising in data science projects
- describe key governance frameworks relevant to data science practice
- critically analyse legislation and professional codes governing data science
- identify governance frameworks applicable to a given data science project
- interpret how specific governance frameworks apply to a project
- design a data science project that complies with relevant governance frameworks
- conduct data science work consistent with applicable governance requirements
- evaluate data science project design and delivery against governance standards
- Cloud Based Data Analysis
What you learn (8)
- explain core principles of cloud computing
- analyse benefits and challenges of adopting cloud computing
- critique the components and structure of a data ecosystem
- analyse the high-performance computing needs of big data processing
- build machine learning applications using cloud resources
- deploy big data analytics pipelines on cloud platforms
- evaluate and monitor the performance of deployed analytics pipelines
- design cloud-based advanced analytics services to meet organisational needs
20 optional modules
- Quantum Computation
What you learn (7)
- explain the potential advantages of quantum computation
- identify the limitations and constraints of quantum computation
- apply quantum gate operations to evolve quantum states
- calculate measurement outcomes for given quantum states
- design and analyse quantum computational circuits
- explain key quantum algorithms and their significance
- simulate quantum algorithms acting on quantum states
- Cryptography Theory and Practice or Cryptography
What you learn (8)
- explain core concepts of symmetric-key cryptography
- explain core concepts of public-key cryptography
- apply informal definitions of security properties to cryptographic constructions
- apply formal definitions of security properties to cryptographic constructions
- analyse the theoretical security of cryptographic constructions
- analyse the practical efficiency of cryptographic constructions
- assess whether a cryptographic algorithm meets specified security requirements
- assess whether a cryptographic protocol meets specified security requirements
- Deep Learning
What you learn (9)
- explain probability theory as a foundation for machine learning models
- describe manifold embedding techniques for dimensionality reduction
- apply kernel methods to transform data representations
- apply Bayesian regression methods to predict continuous outcomes
- apply Bayesian classification methods to categorise data
- apply Bayesian clustering methods to group unlabelled data
- identify key architectures used in deep learning
- apply gradient-based optimisation algorithms to train models
- compare variants of optimisation algorithms used in model training
- AI Search and Logic
What you learn (11)
- formulate a search problem using states, actions and a goal
- identify a suitable heuristic for a search problem
- translate a scenario into propositional logic statements
- apply logical inference to derive conclusions from encoded statements
- formulate a discrete optimisation problem as a constraint model
- solve a constraint model using a constraint programming tool
- justify the choice of search algorithm over alternatives
- select an adversarial search method suited to a given game
- design a heuristic to support adversarial search when required
- describe algorithms used in SAT, local search and constraint solvers
- apply solver algorithms to small worked examples
- Autonomous Robots
What you learn (7)
- describe levels of autonomy achievable in robotic systems
- discuss safety considerations in designing and deploying autonomous robots
- evaluate ethical implications of autonomous robotic system deployment
- explain methodologies used to engineer autonomous robotic systems
- describe how modern robotics middleware is applied in practice
- build an autonomous robotic system to solve a given task
- evaluate the strengths and weaknesses of a built robotic solution
- Engineering 2: Automated Software Engineering
What you learn (15)
- explain core concepts of modelling and metamodelling
- apply modelling practices to represent software systems
- build domain-specific models and metamodels for a given problem
- execute model management operations to coordinate models
- describe design principles underlying data-intensive software architectures
- evaluate architecture characteristics such as availability, scalability and security
- relate organisational characteristics to system architecture decisions
- structure data-intensive systems using independent microservices
- assess benefits and challenges of microservice-based architectures
- package system components as containers for reproducible deployment
- coordinate containers to operate together in a scalable system
- describe assurance practices for developing and deploying large systems
- identify testing and hardening techniques for data-intensive systems
- explain how model-driven engineering fits within broader system engineering processes
- relate model-driven engineering practices to organisational policies
- Qualitative Approaches to Investigating UX
What you learn (11)
- select an appropriate qualitative methodology for a research question
- justify the choice of a qualitative methodology
- identify the epistemological assumptions underlying qualitative methods
- explain how epistemological positions shape qualitative research choices
- explain the influence of the researcher's position on the research process
- evaluate research methods against standards of rigour and validity
- compare methods used across different qualitative studies
- present findings from a qualitative analysis appropriate to the chosen method
- discuss the implications of analysis results for the research question
- describe key principles of ethical conduct in research
- describe key principles of data governance in research
- Interaction Design and Evaluation
What you learn (12)
- justify adopting a user-centred approach in interaction design
- explain how well-designed technology can enhance everyday well-being
- explain how stakeholder requirements shape interactive system design
- identify diverse user needs including accessibility and cultural factors
- conduct conceptual design analysis of target users and tasks
- apply user-centred design methods to a realistic design problem
- build basic prototypes using varied interaction styles and technologies
- evaluate interactive systems for usability through expert inspection
- evaluate user experience through studies involving participants
- apply ethical principles when conducting research with human participants
- critique own interactive system design
- defend design and implementation decisions
- Natural Language Processing
What you learn (13)
- describe the process of splitting text into tokens
- explain how part-of-speech tagging assigns grammatical categories to words
- explain how parsing determines the syntactic structure of sentences
- build a text classification pipeline using NLP techniques
- build a named entity recognition system
- build a sentiment analysis system using NLP methods
- apply word embedding techniques to represent language meaning numerically
- apply n-gram models to estimate word sequence probabilities
- apply recurrent neural networks to model sequential language data
- evaluate NLP model outputs using standard performance metrics
- assess the limitations of NLP models using benchmark datasets
- describe how classical statistical methods contributed to large language model development
- describe how neural approaches underpin modern large language models
- Large Language Models
What you learn (9)
- critically assess chain-of-thought reasoning methods in modern models
- describe training, fine-tuning and alignment techniques used to develop language models
- evaluate explainability approaches and evaluation metrics for language models
- use modern software frameworks to implement language model applications
- discuss scalability challenges of deploying large-scale language models
- measure the energy consumption of training and deploying language models
- interpret environmental impact data to inform sustainable model development decisions
- identify ethical concerns relating to bias and fairness in language models
- address ethical issues of language model use across real-world scenarios
- Engineering LLM-Based Agents and Applications
What you learn (13)
- describe common architectural patterns for combining LLMs with planning and memory modules
- compare design patterns integrating retrieval and external tool use in LLM agents
- build an intelligent software agent using LLM components
- deploy a functioning agent system to a working environment
- design an autonomous workflow combining LLM reasoning with retrieval mechanisms
- construct multi-step action plans that link reasoning to execution
- implement a practical agent application such as a task assistant or planner
- integrate external APIs and services into an agent application
- evaluate agent performance using qualitative and quantitative measures
- analyse limitations of agent systems relating to reliability and latency
- identify safety and ethical risks arising in agent design
- propose mitigations for hallucination and over-reliance on automated agents
- explain how systems thinking supports evaluation of LLM performance in practice
- Time Series
What you learn (12)
- define key concepts underlying time series analysis
- apply stationarity concepts and transformations to real data
- fit arima and state space models to produce forecasts
- compute a correlogram and sample spectrum from data
- interpret correlogram and spectrum results
- derive mathematical properties of arima models
- select a suitable arima model for given data
- fit a chosen arima model using statistical software
- compute forecasts for various linear time series models
- fit state space models to time series data
- apply the kalman filter to estimate model states
- conduct spectral analysis of stationary time series
- Operations Research
What you learn (15)
- state key terminology used in linear programming
- describe fundamental results of linear programming theory
- describe the stages of the simplex algorithm
- apply the simplex method to solve a linear program
- state the fundamental theorem of linear programming
- prove the fundamental theorem of linear programming
- state the duality theorem of linear programming
- formulate transportation problems as mathematical models
- solve transportation problems using appropriate methods
- model and solve network optimisation problems
- describe key results from game theory
- apply game theory results to operations research problems
- translate real-world problems into mathematical formulations
- solve mathematical models using suitable operations research techniques
- interpret mathematical solutions in the context of original problems
- Advanced Regression and Multivariate Analysis
What you learn (8)
- describe models used for multivariate data analysis
- describe models used for multilevel data analysis
- describe nonparametric statistical models
- apply key techniques for analysing multivariate and multilevel data
- apply nonparametric estimation methods to data sets
- select appropriate statistical techniques for different data types
- use R software to analyse multivariate data sets
- use R software to analyse multilevel data sets
- Mathematical Finance in Discrete Time
What you learn (11)
- describe the concepts underlying Markowitz portfolio theory
- analyse portfolio risk and return using Markowitz theory
- apply Markowitz theory to construct an efficient portfolio
- describe the structure and assumptions of the Capital Asset Pricing Model
- analyse asset pricing relationships derived from the Capital Asset Pricing Model
- apply the Capital Asset Pricing Model to estimate expected returns
- describe basic methods of compounding interest
- analyse the effects of different compounding methods on growth
- apply compounding calculations to financial problems
- analyse pricing outcomes under no-arbitrage conditions
- apply arbitrage pricing theory to value financial instruments
- Numerical Analysis
What you learn (5)
- select a suitable numerical method for a given mathematical problem
- apply a numerical technique to approximate a solution
- analyse the error behaviour of a numerical method
- determine the stability region of a numerical method
- implement numerical methods using Python
- Mathematical Finance in Continuous Time
What you learn (2)
- explain the Black-Scholes formula for pricing options
- apply basic interest rate models to financial problems
- Statistical Data Science
What you learn (6)
- explain the theoretical basis of key statistical models and tools
- discuss the strengths and limitations of different statistical approaches
- apply statistical techniques to analyse real datasets using R software
- select suitable machine learning or statistical methods for a given problem
- conduct independent statistical analysis to answer a research question
- present statistical findings clearly using tables and graphs
- Decision Theory and Bayesian Statistics
What you learn (6)
- describe fundamental concepts underlying Bayesian inference
- explain how Bayesian reasoning differs from classical inference
- apply Bayesian methods to standard statistical inference models
- use numerical techniques to compute Bayesian estimates
- apply credibility theory to estimate insurance risk
- apply Bayesian decision theory using loss functions
- Survival Analysis and Generalised Linear Models
What you learn (10)
- explain how exponential families unify models for differently scaled variables
- apply maximum likelihood methods to estimate generalised linear models
- apply logistic regression to analyse binary outcome data
- apply Poisson regression to analyse count data
- produce descriptive statistics summarising survival study data
- create graphical summaries representing survival data from various study designs
- estimate survival model parameters from censored data
- apply hypothesis testing techniques to draw conclusions about survival data
- use R software to carry out generalised linear model analysis
- use R software to carry out survival data analysis
Year 5 · 3 core, 19 optional · 40 credits ≈ 400 hours
- Governance of Data Science
What you learn (9)
- explain the objectives behind governing data science projects
- analyse the governance challenges arising in data science projects
- describe key governance frameworks relevant to data science practice
- critically analyse legislation and professional codes governing data science
- identify governance frameworks applicable to a given data science project
- interpret how specific governance frameworks apply to a project
- design a data science project that complies with relevant governance frameworks
- conduct data science work consistent with applicable governance requirements
- evaluate data science project design and delivery against governance standards
- Cloud Based Data Analysis
What you learn (8)
- explain core principles of cloud computing
- analyse benefits and challenges of adopting cloud computing
- critique the components and structure of a data ecosystem
- analyse the high-performance computing needs of big data processing
- build machine learning applications using cloud resources
- deploy big data analytics pipelines on cloud platforms
- evaluate and monitor the performance of deployed analytics pipelines
- design cloud-based advanced analytics services to meet organisational needs
19 optional modules
- Natural Language Processing
What you learn (13)
- describe the process of splitting text into tokens
- explain how part-of-speech tagging assigns grammatical categories to words
- explain how parsing determines the syntactic structure of sentences
- build a text classification pipeline using NLP techniques
- build a named entity recognition system
- build a sentiment analysis system using NLP methods
- apply word embedding techniques to represent language meaning numerically
- apply n-gram models to estimate word sequence probabilities
- apply recurrent neural networks to model sequential language data
- evaluate NLP model outputs using standard performance metrics
- assess the limitations of NLP models using benchmark datasets
- describe how classical statistical methods contributed to large language model development
- describe how neural approaches underpin modern large language models
- Large Language Models
What you learn (9)
- critically assess chain-of-thought reasoning methods in modern models
- describe training, fine-tuning and alignment techniques used to develop language models
- evaluate explainability approaches and evaluation metrics for language models
- use modern software frameworks to implement language model applications
- discuss scalability challenges of deploying large-scale language models
- measure the energy consumption of training and deploying language models
- interpret environmental impact data to inform sustainable model development decisions
- identify ethical concerns relating to bias and fairness in language models
- address ethical issues of language model use across real-world scenarios
- Engineering LLM-Based Agents and Applications
What you learn (13)
- describe common architectural patterns for combining LLMs with planning and memory modules
- compare design patterns integrating retrieval and external tool use in LLM agents
- build an intelligent software agent using LLM components
- deploy a functioning agent system to a working environment
- design an autonomous workflow combining LLM reasoning with retrieval mechanisms
- construct multi-step action plans that link reasoning to execution
- implement a practical agent application such as a task assistant or planner
- integrate external APIs and services into an agent application
- evaluate agent performance using qualitative and quantitative measures
- analyse limitations of agent systems relating to reliability and latency
- identify safety and ethical risks arising in agent design
- propose mitigations for hallucination and over-reliance on automated agents
- explain how systems thinking supports evaluation of LLM performance in practice
- Quantum Computation
What you learn (9)
- explain the potential advantages of quantum computation over classical computation
- identify the practical and theoretical limitations of quantum computation
- apply quantum gate operations to evolve quantum states
- calculate the outcome of measurements performed on quantum states
- design and analyse quantum computational circuits
- explain key quantum algorithms and their significance
- simulate quantum algorithms on quantum states
- apply core concepts and techniques of quantum information science
- simulate quantum cryptography and quantum teleportation processes
- High-Integrity Systems Engineering
What you learn (9)
- explain key challenges in designing critical systems
- describe implementation issues affecting high-integrity systems
- apply fault-tree analysis to assess system safety
- apply failure analysis methods to validate system designs
- evaluate technical challenges in high-integrity engineering
- evaluate social implications of high-integrity engineering practice
- collaborate in group discussions generating failure scenarios
- analyse documented system failure case studies with peers
- formulate engineering principles for developing critical systems
- Interaction Design and Evaluation
What you learn (12)
- justify user-centred design for successful interactive systems
- explain how well-designed technology improves everyday well-being
- explain how stakeholder requirements shape interactive system design
- identify diverse user needs including accessibility for disabled users
- describe cross-cultural factors in interface globalisation and localisation
- analyse user characteristics and tasks to inform conceptual design
- build basic prototypes using varied interaction styles and technologies
- evaluate interactive technologies using usability and user experience criteria
- apply a/b testing methods to assess interactive systems
- apply ethical principles of consent and respect when involving participants
- critique the strengths and weaknesses of one's own interactive system
- justify design and implementation decisions made during development
- Qualitative Approaches to Investigating UX
What you learn (12)
- select an appropriate qualitative research methodology for a given study
- justify the choice of a qualitative methodology for a research question
- describe the epistemological assumptions underlying different qualitative methods
- acknowledge how epistemological stance shapes choice of qualitative method
- explain the researcher's influence on the research process
- evaluate how researcher positionality affects research outcomes
- compare study methods against established standards of rigour and validity
- critique the methodological choices used in qualitative studies
- report findings from a qualitative analysis using an appropriate format
- discuss the significance of analytic findings in relation to the research method
- identify ethical issues arising in qualitative research practice
- analyse data governance challenges within qualitative research
- Cryptography Theory and Practice
What you learn (9)
- explain core concepts of symmetric-key cryptography
- explain core concepts of public-key cryptography
- apply intuitive security notions to cryptographic constructions
- apply formal security definitions to cryptographic applications
- analyse the theoretical security of cryptographic constructions
- analyse the practical efficiency of cryptographic constructions
- assess whether cryptographic algorithms satisfy application security needs
- assess whether cryptographic protocols satisfy application security needs
- propose cryptographic tools suited to specific application security needs
- Deep Learning
What you learn (10)
- apply probabilistic concepts to solve machine learning problems
- describe manifold embedding techniques for dimensionality reduction
- describe kernel methods used in machine learning
- apply Bayesian methods to regression problems
- apply Bayesian methods to classification problems
- apply Bayesian methods to clustering problems
- identify the main architectures used in deep learning
- apply gradient descent and its variants to optimise models
- operate systems designed to process large-scale training datasets
- discuss challenges and solutions in handling large-scale datasets
- Autonomous Robots
What you learn (6)
- describe degrees of autonomy achievable by robotic systems
- evaluate safety and ethical implications of autonomous robotic systems
- explain methodological principles for engineering autonomous robots
- use modern robotics middleware in an application
- implement an autonomous robotic solution for a defined problem
- evaluate the strengths and weaknesses of an implemented robotic solution
- Engineering 2: Automated Software Engineering
What you learn (6)
- explain principles of modelling and metamodelling
- implement and orchestrate domain-specific models and metamodels
- explain design principles for data-intensive software systems
- structure data-intensive systems as independent microservices
- deploy data-intensive system components as orchestrated containers
- discuss assurance practices such as testing for large data systems
- AI Search and Logic
What you learn (13)
- formulate a search problem using states, actions and goal conditions
- identify a suitable heuristic for a given search problem
- translate a scenario into propositional logic statements
- perform logical inference on a propositional representation using a sat solver
- model a discrete optimisation problem using constraint programming
- solve a discrete optimisation problem with a constraint programming system
- justify the choice of a search algorithm over alternatives
- apply a chosen search algorithm to solve a problem
- select an adversarial game-tree search method for a given game
- design a heuristic to support adversarial search when needed
- apply an adversarial search method to solve a game
- describe common algorithms used in sat, local search and constraint solvers
- apply solver algorithms to small example problems
- Mathematical Methods of Finance
What you learn (8)
- apply probability theory concepts and tools to financial models
- describe discrete-time stochastic processes used in finance
- describe continuous-time stochastic processes used in finance
- identify properties of basic stochastic processes in finance
- apply Ito stochastic calculus to financial mathematical models
- use basic tools of stochastic calculus informally
- apply martingale theory to stochastic calculus problems
- relate martingale theory to quantitative finance applications
- Advanced Regression and Multivariate Analysis
What you learn (7)
- describe statistical models suited to multivariate or multilevel data
- describe nonparametric modelling approaches
- apply nonparametric estimation methods to data
- select appropriate analytical techniques for different data types
- use R software to analyse multivariate datasets
- use R software to analyse multilevel datasets
- conduct independent analysis of complex statistical problems
- Mathematical Finance in Discrete Time
What you learn (13)
- describe the assumptions and structure of Markowitz portfolio theory
- analyse the risk-return trade-off within mean-variance portfolio models
- apply Markowitz portfolio theory to construct efficient portfolios
- describe the components and assumptions of the Capital Asset Pricing Model
- analyse asset pricing relationships derived from the Capital Asset Pricing Model
- apply the Capital Asset Pricing Model to estimate expected asset returns
- describe fundamental methods of interest compounding
- analyse the effect of different compounding approaches on returns
- apply compounding techniques to calculate present and future values
- analyse no-arbitrage conditions in complete discrete-time market models
- apply arbitrage pricing theory to value financial instruments in discrete time
- describe the structure of the trinomial model as an example of an incomplete market
- analyse the limitations of pricing in incomplete market models
- Statistical Data Science
What you learn (7)
- explain theoretical foundations of statistical models and tools
- select suitable machine learning or statistical methods for a task
- conduct independent statistical analysis of a dataset to answer a research question
- present statistical analysis findings using tables and graphs
- research an advanced topic in statistical pattern recognition independently
- apply advanced pattern recognition knowledge to complex analyses
- evaluate theory and literature relating to module topics critically
- Survival Analysis and Generalised Linear Models
What you learn (10)
- explain how exponential family theory unifies models for differently scaled variables
- apply maximum likelihood methods to estimate generalised linear models
- fit logistic regression models to binary outcome data
- fit Poisson regression models to count outcome data
- produce descriptive statistics summarising survival study data
- create graphical summaries of survival experiment data
- estimate survival model parameters from censored data
- conduct hypothesis tests to compare survival outcomes
- use R software to analyse generalised linear models and survival data
- undertake independent study to tackle advanced generalised linear model problems
- Computational Finance with Python
What you learn (8)
- construct tree models approximating continuous-time stochastic processes
- apply tree approximations to solve financial problems
- implement finite difference schemes for differential equations in finance
- implement Monte Carlo simulation schemes for financial problems
- optimise simulation schemes for computational efficiency
- evaluate the suitability of computational techniques for financial problems
- judge the effectiveness of numerical methods in specific financial contexts
- use Python to implement numerical techniques for finance
- Decision Theory and Bayesian Statistics
What you learn (7)
- state fundamental concepts underlying Bayesian inference
- explain the reasoning behind core Bayesian inference ideas
- apply Bayesian methods to standard statistical inference models
- use numerical techniques to compute Bayesian inference results
- apply credibility theory techniques to estimate insurance risk
- apply Bayesian decision analysis using loss functions
- manage own learning process independently
“What you learn” restates each module’s published learning outcomes in our own words, as short skill statements in the same form as the GCSE and A level curriculum, with the help of an AI model; fields of knowledge follow the twelve fields of the knowledge sphere. The university’s module page, linked from each title, is the authoritative description.
Where does it lead?
Median — the middle earner: half earned more, half less. Pay is for graduates of this subject at this university who finished in 2016-18, not adjusted for inflation; based on 115 graduates.
Discover Uni dataset (HESA and Office for Students, CC BY 4.0, contains HESA data); earnings from the Longitudinal Education Outcomes data (Department for Education) · aggregation level 13, 23
Half of graduates earned between £32,000 and £53,500. Five years on, the median is £53,500. 90% were in work or further study 15 months after finishing; 88% of those in work were in professional or managerial jobs.
All outcome figures7
| Measure | Value | Based on |
|---|---|---|
| Continue after year 12% left | 94% | 190 |
| In work or study, 15 months on5% studying | 90% | 75 |
| Professional or managerial job | 88% | 60 |
| Pay 15 months on, median | £38,000 | 45 |
| Pay 3 years on, median | £40,000 | 115 |
| Pay 5 years on, median | £53,500 | 110 |
What does it cost?
Tuition fee loan — paid straight to the university; repayments start the April after you leave, at 9% of income above the threshold. UK fees are capped by government and rise with inflation; placement and study-abroad years are usually charged at a lower rate.
York fees page · source
About £50,250 in fees over 5 years, covered by a tuition fee loan you repay only when earning above the threshold. International students: £33,500 a year (2027/28).
What do students say?
NSS — a yearly survey of final-year students at every UK university; 64% of this course’s final year answered. Small groups can swing a lot year to year.
National Student Survey, via Discover Uni · 125 students answered
Highest: 95% agreed on question 21; lowest: 48% on question 14.
All questions26
| Question | Agree |
|---|---|
| Question 1 | 86% |
| Question 2 | 79% |
| Question 3 | 88% |
| Question 4 | 80% |
| Question 5 | 82% |
| Question 6 | 83% |
| Question 7 | 66% |
| Question 8 | 61% |
| Question 9 | 80% |
| Question 10 | 60% |
| Question 11 | 79% |
| Question 12 | 74% |
| Question 13 | 87% |
| Question 14 | 48% |
| Question 15 | 94% |
| Question 16 | 87% |
| Question 17 | 76% |
| Question 18 | 85% |
| Question 19 | 94% |
| Question 20 | 88% |
| Question 21 | 95% |
| Question 22 | 83% |
| Question 23 | 74% |
| Question 24 | 63% |
| Question 25 | 79% |
| Question 26 | 93% |
Question texts are published by the Office for Students; the dataset carries only the question numbers.
Modules, entry requirements and fees are facts read from University of York’s course page on 2026-09-19 and may change; the university’s page is authoritative. Descriptions are not reproduced. Outcome figures are from the Discover Uni dataset. University of York is a trade mark of the university; sch.today is independent of it.