DavidShortland

Software Developer

Currently building systems for global electric motorsport events at Smedley Group. I'm most useful when the domain is unfamiliar and the problem isn't obvious yet. I'd rather spend a week understanding what to build than a month building the wrong thing.

RoleSoftware Developer @ Smedley Group
DomainMotorsport
EducationBSc CS · 86% avg
C# .NET TypeScript Angular React Python AWS Docker MongoDB NATS
Scroll

// Experience

recording

Software Developer

Smedley Group Advanced Technology·Upper Heyford
Oct 2023 – Present 2 yrs 8 mo

Global electric karting events company with operations in the UK and US. I'm part of a small engineering team reporting to the Head of Advanced Technology. Small enough that every project means owning the problem end-to-end: understanding the domain, building the system, deploying it, and keeping it running.

Project Stints

Driver Performance System

live
Eliminated hours of manual analysis per event

Replaced a manual, spreadsheet-driven process for analysing race performance. Built with the senior software architect. The system generates driver KPIs from raw timing data so coaches can act on them between sessions, not days later.

ASP.NET React MongoDB AWS

Live Telemetry Platform

live
Real-time visibility into kart health across events

Real-time system that streams kart telemetry during live events. Built with a cross-disciplinary team: senior software architect, mechanical engineer, simulation/modelling engineer, and PM. Engineers see vehicle health and performance as it happens instead of waiting for post-session data. Recently transitioned day-to-day development to a junior developer I helped onboard.

.NET Python Angular Docker NATS InfluxDB

Event Management Dashboard

live
Event setup reduced from hours to under 5 minutes

Internal tool for configuring karting events across global locations. Replaced a fragmented manual process that took hours with a single consistent workflow that takes under five minutes.

Angular ASP.NET AWS CDK

Kart Programming Tool

completed
ECU programming accessible to non-technical staff

Wrapped complex CANOpen protocols in a tool that lets mechanics program kart ECUs without needing to understand the protocol underneath.

Python Excel VBA CANOpen

Data Analyst Intern

Sports4Cast·Remote
Mar 2023 – Oct 2023 8 mo

Developed a predictive model for World Rally Championship (WRC) results. Ranked each participant in a WRC event by considering a comprehensive array of factors including driver, co-driver, vehicles, tyre choice, and terrain to generate forecasts of event results.

Project Stints

WRC Predictive Model

completed
Predictive ranking model for live WRC events

Built a predictive ranking model for WRC events, weighing driver and co-driver history, vehicle performance, tyre selection, and terrain characteristics to forecast finishing positions.

Python Data Analysis Machine Learning

// Education

BSc Computer Science

University of East Anglia·86% average
Sep 2024 – Jun 2026
Modules
Advanced Programming 91%
Advanced Web Dev 89%
Programming 2 89%
Foundations of Data Science 90%
Data Structures & Algorithms 83%
Projects

Mathematics Interpreter

completed
Advanced Programming

Team project. A full interpreter for mathematical expressions: lexer, recursive descent parser, AST, and evaluator, with support for six number types, symbolic differentiation, definite integration, and root finding. Built in F# with a WPF GUI for interactive graph plotting.

F# .NET 8 WPF OxyPlot Read writeup

Health Tracker

completed
Software Engineering

Team project. Full-stack health platform with exercise, meal, and metric tracking, group challenges, and goal monitoring. Event-driven architecture with separate Lambda functions for email notifications and a scheduled daily job checking overdue goals.

Angular Express MongoDB AWS Lambda SNS SES CDK Read writeup

WeatherWise

completed
Advanced Web Dev

Personalised weather platform that goes beyond raw data, generating contextual, actionable recommendations based on temperature, UV, wind, and visibility. Google OAuth, saved locations with comparison, and a Zustand-managed client cache.

Next.js 15 React 19 PostgreSQL Drizzle NextAuth Zustand Read writeup

A Levels

Pitsford School·Maths A*, Further Maths A*, Physics A*, Chemistry A
Sep 2019 – Jul 2021

// Technologies

active

Languages & Frameworks

C# ASP.NET TypeScript Angular React Python

Cloud & Infrastructure

AWS Lambda API Gateway CDK Docker CI/CD VPC EC2 SQS/SNS NATS

Databases

MongoDB InfluxDB PostgreSQL

Testing & Practices

xUnit Behaviour-focused Testing Git CI/CD Pipelines

// Latest Transmissions

live

// Comms

open

Interested in working together, or just want to talk shop about software engineering, interesting domains, or how teams should actually build things?