Year 13 · Aspiring Software Engineering/Artificial Intelligence Degree ApprenticePreston, UK

Kashan Ali

Software Engineering · AI · Quantitative Systems

I build software systems and quantitative models that combine programming, mathematics and statistics.

Exploring complex problems through software engineering, simulation, data and mathematical modelling.

0+

Industry experiences

Insight & work experience programmes

0

Major technical projects

Built from the ground up

0+

Research observations

Hourly weather & air quality

A*A*A

A Level Grades

Academics

Scroll to explore
01

GitHub

A snapshot of my public development activity and the technologies I work with.

Repositories
Followers
Contributions
Profile@KashanALi-Tech

Contribution activity

last 12 months
Contribution data unavailable

Languages

public repos
No language data
01

Projects

Systems I built to answer a question. Each one has a full case study covering the architecture, the maths, what broke, and what I would do differently.

Mathematics
2026 - PresentActive

F1 Probabilistic Strategy Optimiser

A probabilistic race-strategy engine that simulates thousands of possible F1 races to understand which decisions remain strong when the race does not go to plan.

  • Monte Carlo simulation
  • Probability modelling
  • Discrete strategy search
PythonNumPypandasMonte Carlo SimulationProbabilityStatistical Modelling+3
Read case study
Systems
2026Complete

Distributed Job Scheduler

A distributed job scheduling system I built to understand what happens when queues, concurrent workers, retries and failures collide.

  • Priority queue with ageing
  • Exponential backoff
  • Failure recovery
PythonFastAPIReactSQLiteDockerConcurrency+2
Read case study
Software
2025 - PresentActive

DeadSteel

A real-time strategy game built from scratch in C# and MonoGame, with resource management, combat systems and an AI opponent.

C#MonoGameObject-Oriented ProgrammingGame AIAlgorithmsGame Development
Read case study
Data
2026Complete

Weather & Air Quality Research

An independent research project analysing 14,000+ hourly observations to investigate how weather conditions relate to air quality.

PythonpandasNumPyMatplotlib+3
Read case study
02

Experience

Insight programmes, work experience and research placements across engineering, software, data and finance. Expand an entry to see what it involved and what I took from it.

03

Research

Independent statistical work, written up the way a report should be, including the parts that did not hold up.

Independent research2025

Correlation Between Weather Conditions and Air Quality

A statistical investigation into whether measurable weather conditions explain variation in urban air quality, using more than 14,000 hourly observations.

PythonpandasPearson CorrelationLinear RegressionData VisualisationData Cleaning
14,000+Hourly observations
Pearson correlationPrimary method
Linear regressionModel
PythonLanguage

Research question

Do measurable weather conditions temperature, wind speed, humidity, pressure explain a meaningful part of the hour-to-hour variation in air quality readings?

Dataset

More than 14,000 hourly observations combining weather measurements with air quality readings.

The raw data required substantial preparation before any analysis was possible: missing readings, duplicated timestamps and outliers caused by sensor faults all had to be identified and handled under a documented rule rather than removed quietly.

Methodology

  1. Load and align the weather and air quality series on a common hourly index.
  2. Clean - handle missing values, remove duplicated hours, flag physically implausible readings.
  3. Explore - plot each variable over time and against each pollutant measure before testing anything.
  4. Correlate - compute Pearson's r between each weather variable and each pollutant measure.
  5. Model - fit linear regressions for the strongest relationships.
  6. Check - inspect residuals to test whether a linear model was actually appropriate.

Analysis

Correlation was used to identify which relationships were worth modelling, and regression to quantify them. Residuals were inspected in every case rather than assumed to be well behaved — a coefficient reported without checking the assumptions behind it does not mean very much.

Because the data is a time series, apparent correlations can arise from shared seasonal or daily cycles rather than a direct relationship, so those cycles were considered explicitly when interpreting results.

04

Certifications

Courses and certifications I have worked through. Each one lists what I actually took from it rather than the syllabus, because the badge is not the point.

05

Communities & Programmes

Communities, mentorship programmes and academic initiatives I have been involved with outside the classroom.

05

Skills

Grouped by what they are for, not scored out of ten. Hover or focus a skill to see where I actually used it.

Languages

  • Python
  • C#
  • JavaScript / TypeScript
  • SQL

Backend

  • FastAPI
  • REST APIs
  • SQLite

Frontend

  • React
  • Vite
  • Tailwind CSS

Engineering

  • Docker
  • Git
  • GitHub
  • Concurrency
  • Distributed Systems

Data & Mathematics

  • NumPy
  • pandas
  • Statistics
  • Monte Carlo Simulation
  • Regression
  • Optimisation
  • Probability
06

About

How I got here, what I am working towards, and how I tend to approach a problem.

I'm a Year 13 student in Preston studying Maths, Computer Science and Statistics, and I spend most of my spare time building things that sit somewhere between software engineering and applied mathematics.

Most of what I know came from projects rather than lessons. I got interested in concurrency by writing a job scheduler that kept losing work when a worker died, and I got interested in probability because I wanted to know whether a Formula 1 team's pit stop call was actually the right one or just the one that happened to work.

Formula 1 is where a lot of that curiosity started - it's a sport where the interesting decisions are made under uncertainty with incomplete information, which turns out to be a good description of most engineering problems too.

I'm applying for Software Engineering and AI/ML degree apprenticeships so I can keep learning while working on systems that people actually depend on. Outside of that I play football and badminton.

I learn best by building. When I encounter something I don't understand, I try to turn it into a project, experiment or system I can test.
That means most of what is on this site started as a question rather than a plan. The write-ups include the parts that went wrong, because those are usually where the learning happened.

Education

  • Cardinal Newman College

    A LevelsSeptember 2025 - Present

    Subjects
    Mathematics (A*)Computer Science (A*)Statistics (A)
    Activities
    • Student Ambassador
    • Ritangle Mathematics Competition
    • MEI Maths into Data & AI
  • Walton-le-Dale High School

    GCSEs & Level 2 Engineering

    Subjects
    Mathematics (7)English Language (5)Combined Science (7-6)Engineering (Level 2 Distinction)English Literature (5)Geography (6)Business (6)Computer Science (6)Urdu (9)
    Activities
    • 100% Attendance Award (x5)
    • Student of the Form (2024, 2025)
    • Progress Leader Trophy
    • Engineering Subject Award
    • Business Subject Award