Coding proficiency guidance for Master’s applicants

4 minute read
""

Coding has become a vital skill across business, finance and analytics — enabling professionals to turn data into insight and theory into practice. At Imperial Business School, we value this capability as part of the admissions process for our Master’s, including our MSc Financial Technology and MSc Business Analytics programmes.

To help you reflect on your own abilities and prepare for study, we’ve added a self-assessment section to the application. This section invites you to describe your experience with different coding languages and tools, giving the admissions team a clearer picture of your background and potential to build on these skills during the programme. This guide explains how we define Beginner, Intermediate and Advanced levels across the key languages and tools most relevant to our programmes: Python, R, C++, Java, VBA and SQL.

Why coding matters

Whether your interest lies in financial modelling, data science, or large-scale systems, coding is central to turning theory into practice. A solid understanding of programming will help you to analyse data effectively, build models and solve applied problems in both business and finance.

We do not expect all applicants to be at the same level across all languages. What matters most is that you are transparent about your skills and willing to continue developing them during the programme.

Coding platforms and proficiency levels

Python

Python is widely used across data science and financial technology, thanks to its flexibility and extensive library ecosystem.

  • Beginner: You can write simple scripts, use basic data types (lists, dictionaries) and perform operations in Jupyter Notebooks.
  • Intermediate: You are comfortable with libraries such as NumPy, Pandas and Matplotlib; can clean and analyse datasets; and understand functions and classes.
  • Advanced: You can design and implement larger projects, optimise code performance and work with advanced libraries for machine learning or analytics.

R

R is highly valued for statistical modelling, econometrics and data analysis.

  • Beginner: You can import data, perform basic descriptive statistics and create simple plots.
  • Intermediate: You are comfortable using packages such as tidyverse or ggplot2, can perform regression analysis and run hypothesis testing.
  • Advanced: You can develop custom functions, conduct time series analysis, or work with advanced statistical/machine learning models.

C++

C++ is widely used in quantitative finance and high-performance computing, particularly where speed and efficiency are critical.

  • Beginner: You can write simple programs, use loops and conditionals and compile code successfully.
  • Intermediate: You understand object-oriented programming, can work with libraries and manage data structures efficiently.
  • Advanced: You can build optimised applications for numerical analysis, trading systems, or performance-critical tasks.

Java

Java is often used in large-scale business and financial systems, especially in back-end development and risk management platforms.

  • Beginner: You can write and run basic programs, use variables, loops and simple functions.
  • Intermediate: You are confident with object-oriented programming, exception handling and collections frameworks.
  • Advanced: You can design complex applications, manage concurrency and implement scalable systems.

VBA (Visual basic for applications)

VBA is widely used to automate tasks in Excel, build financial models and streamline reporting.

  • Beginner: You can record and edit macros, perform repetitive tasks and work with basic Excel functions.
  • Intermediate: You can write VBA scripts with variables, loops and conditional logic; create custom functions; and automate processes across workbooks.
  • Advanced: You can design full-scale applications within Excel, integrate VBA with external databases, and optimise performance for large-scale data handling.

SQL (Structured query language)

SQL is essential for working with databases, retrieving data and handling large datasets efficiently.

  • Beginner: You can write simple queries to select and filter data from a single table.
  • Intermediate: You can join multiple tables, use aggregate functions and write subqueries.
  • Advanced: You can design and optimise database structures, create stored procedures and work with complex queries for large-scale datasets.

How we assess your coding proficiency

When reviewing applications, we recognise that not all applicants will have the same strengths across programming languages. Applicants are encouraged to outline their current skills honestly and highlight areas where they have the most experience.

We consider a broad range of programming languages relevant to our programmes. Each language brings valuable skills  whether in statistical analysis, data handling, automation, or building scalable systems.

Final thoughts

Many applicants will be stronger in one language than another — for example, advanced in R but a beginner in C++. This is completely normal and part of what we want to understand.

As part of the application, there is also an ‘additional notes’ section where you can expand on your coding experience in more detail. The scoring tool will analyse this information as part of your overall coding score, so we strongly recommend using this space to give context or highlight projects you’ve worked on.

Above all, remember that your coding skills will continue to develop during the programme. What matters most is your ability to apply code to solve problems — and your motivation to keep building on your current skillset.