Charlie Selmes

Software Engineer | AI & Automation

My GitHub My CV

About Me

I'm a Software Engineer based in Cambridge, focused on AI systems, automation tooling and practical web/software projects.

I'm listening to :

RIGHT NOW

Current Age :

Projects

RAG LLM on SAP Documentation

Python | Embeddings | Semantic Search

BRE's SAP documentation is a massive collection of pdfs which, when an employee needs to find specific information, can be very painful to search through. To make this easier,I built a retrieval-augmented generation (RAG) pipeline that lets you ask a question in plain English and get an answer grounded in the real docs.

Project screenshot 1

How it works: I split the documentation into chunks, turn each chunk into an embedding, and store them in a vector index. At query time the question is embedded too, the most semantically similar chunks are pulled back, and those get handed to the LLM as context — so answers stay accurate and traceable instead of hallucinated.

Project screenshot 2

It cut the time I spent digging through manuals down to seconds. Next I want to add a reranking step and a proper evaluation set to measure answer quality. (Expand on this later.)

Automated Video Clipping Platform

Python | Automation | Video Processing

Long streamer VODs are full of good moments buried in hours of footage. This platform automatically finds those moments and turns them into short-form clips ready to post.

Project screenshot 1

How it works: scripts scan the source video, score candidate moments, then crop, reformat and caption the best ones into vertical short-form clips — the whole pipeline runs without me ever opening an editor.

Project screenshot 2

It turns an afternoon of manual editing into a few minutes of processing. I'd like to sharpen the moment-detection so it picks highlights even more reliably. (Expand on this later.)

Chess AI

C# | Game Logic | AI

A playable chess engine I built from scratch to understand how game-playing AI actually works under the hood.

Project screenshot 1

How it works: it generates all legal moves for a position, scores each resulting board with an evaluation function (material, position, king safety), and searches a few moves ahead to choose the strongest line.

Project screenshot 2

It plays a solid game against a casual player. Next up are an opening book and a deeper, faster search so it can look further ahead. (Expand on this later.)

Technical Skills

  • Python

  • C# / C++

  • Java / Rust

  • JavaScript

  • SQL

  • AI / ML

  • RAG

  • Flask

  • Node.js

  • Selenium

  • Docker

  • Git

Contact Me

Send me a message