Hi, I'm Felix!
I’m a software developer studying at the University of St Andrews in Scotland. I’m interested in many different areas of CS, especially algorithms and languages.
I'm currently working on a Master's in CS, focusing on an area of symbolic AI called Constraint Programming. I've previously interned at MathWorks, Savant Systems and TrackX Technology. For more details see my résumé!
I enjoy maintaining and contributing to open-source projects, both in my free time and as part of my degree:

My Skills
Symbolic AI
- Constraint programming
- Graph search/transformation algorithms
Software Engineering
- Git, Perforce
- Docker, Kubernetes
- Scrum / Agile
Programming Languages
- Rust, C, Haskell
- C#, Java
- Python, JS
Front-End Design/Development
- Angular, React
- Bootstrap, TailwindCSS
- Figma, Webflow, Jekyll
Back-End Development
- NodeJS, Express, Flask
- RESTful APIs
- nginx, SSL setup
Language Processing
- Reasoning about syntax
- Multi-stage compilation
- Theoretical basis (e.g. λ-calculus)

Featured Projects
Here are a few highlights from my journey as a developer. See more...
Conjure - The constraint programming ecosystem
AI
LANGUAGES
SWE
RESEARCH
RUST
FRONTEND
CS4201 P2 - A compiler from a custom functional language to Java
LANGUAGES
COURSEWORK
HASKELL
JAVA
CS4303 P3 - A mining game with agent AI & procedural content
AI
COURSEWORK
GAMES
JAVA
Arpeggio - A free Discord music bot
BACKEND
PERSONAL
PYTHON
Ropes - A 2D sticks-and-nodes physics simulation
PERSONAL
GAMES
PHYSICS