Software Engineer based in Johannesburg, South Africa, with a BSc in Computer Science & Informatics (Distinction) from the University of Johannesburg.
I build tools for developers, by a developer — and I design them to work together, not in isolation. My flagship work is a connected three-service platform where each piece has a clear architectural boundary, but none of them exist alone:
- DevVerify parses a developer's CV and GitHub activity into a verified profile. It ships as its own product, but it's also built to be called — an onboarding engine other platforms can consume.
- DevMatch is proof that DevVerify's API contract works in practice: on signup, it calls DevVerify directly and pre-fills a developer's profile instead of making them type it in.
- RepoRecommender trains a clustering model offline against ~900 open-source repos, then serves lightweight, request-time predictions — the same "separate the expensive part from the served part" thinking applied to ML instead of onboarding.
All three are live, deployed, and designed as one system a developer could actually plug into — not three unrelated portfolio pieces.
I document how I think through this kind of system design in public: System Design from First Principles and Computer Science from First Principles.
Languages
Backend
Frontend
Database
DevOps
Machine Learning
|
Automated developer portfolio engine that analyzes CVs and GitHub repositories to generate verified developer profiles. |
Developer matching platform powered by DevVerify, built for automated candidate onboarding. |
|
Machine learning recommendation engine trained on 900+ open-source repositories to surface relevant projects for developers. |
Pet services platform with booking, matching, geolocation, and training resources. |
Each repository documents notes, diagrams, and working implementations as I go.