Ross Kelso
Edinburgh, Scotland
ross@rosskelso.com
Experienced software developer with 5+ years experience in full-stack development, data engineering, and AI.
Skilled in rapid build out of efficient data analysis/visualisation systems in c#, python, and javascript.
Driven to explore emerging technologies and frameworks.
First class degree in Computer science with a background in industrial software, machine learning, and computer vision.
Technical Skills
Languages & Frameworks: c#, python, javascript, typescript, .net, angular, react, sql, rust
Technologies: elasticsearch, git, azure, aws, docker, kubernetes, tensorflow, nodejs, windows, linux, ci/cd
Concepts: Machine Learning, Data Engineering, Cloud Architecture, Computer Vision
Work Experience
Cintra HR & Payroll (since June 2025)
Creating HR & payroll management software.
c# typescript angular
- Through rigourous automated testing, identified and fixed longstanding architectural issues with existing validation middleware resulting in validation accuracy and data consistency.
- Applied source generation to ensure type safe and performant interoperability between new and legacy systems.
- Delivered new pensions functionality ahead of schedule while working in a cross-functional team.
- Communicated technical and domain problems clearly and effectively.
- Designed and implmented methodology for assessing API throughput at scale. Applied gathered information to increase maxmimum possible throughput by 5 times.
Intelligent Plant - Software Developer (2021-2025), Intern (University Holidays 2017-2021)
Creating data storage, analysis and visualisation solutions for the energy industry.
Lead developer for the Industrial App Store API Python Client python pandas django tensforflow
- Designed and implemented a Python SDK to simplify access to the Industrial App Store API for data science environments.
- Developed comprehensive documentation and example use cases for ease of adoption by other developers.
Lead developer for Sequence of Events Explorer c# javascript html css elasticsearch ci
- Developed the application from inception to maturity, including design, development, deployment, and maintenance resulting in it being adopted by multiple major industrial clients.
- Enhanced user experience by developing an intuitive, and powerful frontend for advanced data queries.
- Improved code quality and maintainability by managing developers through rigorous code reviews and enforcing best practices.
Developer for Alarm Analysis and Intelligent Plant Historian c# elasticsearch
- Developed and maintained a backend for performing complex data aggregations.
- Worked with clients directly to facilitate on-site installations.
- Upgraded the historian across several major versions of Elastic Search. This more than doubled the size of a query that can be performed in 1s and increased the size of a query that can be performed in 5s by 10 times.
Developer for Gestalt (PnID & Trend) c# sql javascript
- Lead the project to decouple the Gestalt web app from our data API, resulting in smoother deployments for Gestalt and our API.
- Designed and implemented a database model to replace an existing file system dependency paving the way for migration to App Services and zero downtime.
Lead developer for Power BI Industrial Connector c# power query m react
- Developed a high-performance data connector to enable seamless industrial data access in Power BI.
- Optimized data retrieval and transformation processes to improve query efficiency and responsiveness.
Education
University of St Andrews - Computer Science MSci First Class (2016-2021)
Deans' List, for academic excellence 2017/18, 2018/19, 2019/20
Masters Thesis
Synthetic GPS Traces for Privacy Protection
python tensorflow pandas numpy
- Using Markov Models and generative AI to synthesize realistic GPS traces.
- Evaluated model accuracy and effectiveness in preserving statistical properties of real-world movement data.
Senior Honours Project
Computer Vision in Cue Sports
opencv python
- Designed an algorithmic computer vision system to analyze pool table positions without the need for markers.
- Implemented perspective transformation and object detection techniques for accurate ball position detection.
Junior Honours Project
Group software engineering project to create an encrypted wireless network of embedded devices
c nodejs python git
- Applied low-level networking principles to develop a secure, distributed communication protocol.
- Implemented encryption mechanisms for secure data transmission.
- Worked in an Agile environment, utilizing SCRUM methodologies for iterative development and collaboration.
Other Modules
- Algorithms and data structures
java
- Artificial intelligence and machine learning
python java
- Information Visualisation
python
- Operating systems
c
- Advanced programming projects
haskell python
Personal Interests
Game Design
rust bevy godot
Competed in the GMTK Game Jam 2025 using godot.
Implmented a Tetris clone in rust using SDL2 including a simple software synthesizer to play the classic music.
Implemented in Flappy Bird clone in rust using bevy game engine.
dowehavemilk.com
c nodejs
- Created a (now-defunct) website that tracks whether shared items in my flat have ran out.
- The status could be updated from the website or from an ESP-32 on the fridge.
micro-telemetry
c python
- Created a network of micro-controllers that recorded temperature data around my flat to an Intelligent Plant Historian
Commodore 64 Assembly Programming
- Wrote a variety of assembly programs for the commodore 64 to experiment with low-level computing using a simpler architecture.
Starfinder/D&D
Game Master (2024-present)
- Leadership and Organization:
Coordinated and led a group of players through a immersive and engaging story, ensuring a cohesive and enjoyable experience for all participants.
- Creative Problem-Solving:
Designed and implemented challenging scenarios, puzzles, and encounters that required players to think critically and strategically to overcome.
- Adaptability and Improvisation:
Improvised and responded to unexpected events, player choices, or rule interpretations, using creative problem-solving and diplomacy to resolve conflicts and maintain a positive game environment.
Pool Society
Vice-president, Social Rep, Publicity and Fundraising Rep (2017-2021)
- Managed day-to-day operations, including equipment maintenance, weekly sessions and recruiting new members.
- Promoted the society through social media channels and organized fundraisers, including live streams of semesterly Finals Day events.
- Represented the university at several pool competitions, including 5 BUCS tournaments.