Available for new projects

Full-stack developer building thoughtful software.

A software developer based in South Africa, building applications across web and desktop since 2015. My primary stack is C# and .NET, but I pick up whatever a project actually needs.

Role Full-Stack Engineer Stack .NET · Blazor · C# Location South Africa Status Open to work
01

About

I've been developing software since 2015, starting with desktop applications and steadily moving into the web, where I now spend most of my time.

These days I work full-stack: building rich, interactive frontends with Blazor and connecting them to robust APIs and services on .NET. I care about clean code, solid architecture, and writing software that's pleasant for the next person to maintain, even if that person is future-me.

Outside of code I design logos and brand assets. It's a habit from the early days that still informs how I think about user interfaces. If a button looks off, I'll notice.

02

Stack

Frontend

  • Blazor primary
  • Razor Components
  • HTML, CSS, JavaScript
  • Bootstrap, Tailwind
  • Responsive Design

Backend

  • C# / .NET primary
  • ASP.NET Core
  • Entity Framework Core
  • REST APIs
  • Authentication & Identity

Data & Tools

  • SQL Server, SQLite
  • Git & GitHub
  • Visual Studio, VS Code
  • Azure (basics)
  • Postman

Design & Other

  • Logo & brand design
  • Adobe Photoshop / Illustrator
  • Photo editing
  • Print & layout (pamphlets)
03

Selected Work

01

2048

A from-scratch 2048 clone in vanilla JavaScript, with no frameworks and no build step. Exercises board-state logic, animation timing, and a clean split between game logic and rendering.

Game JavaScript Vanilla JS
02

Minesweeper

A classic Minesweeper, also built dependency-free in vanilla JavaScript. Covers recursive flood-fill reveal, game-state management, and multiple difficulty levels.

Game JavaScript Vanilla JS
03

Car Maintenance Tracker

A WPF desktop app for logging service history across multiple vehicles, with cost and mileage charts per vehicle. Built with MVVM and data-binding throughout, backed by EF Core and SQLite.

Desktop WPF .NET SQLite
04

Blazor Expense Tracker

An expense tracker built the way production Blazor apps actually work. It uses a standalone WebAssembly client calling a separate ASP.NET Core Web API, backed by EF Core and SQLite, with category budgets and spending charts.

Web App Blazor .NET EF Core

Looking for downloadables? See downloads →

04

Education

2013

Diploma in Information Technology (Programming)

Foundational programming, software design, databases & systems analysis.

Varsity College
05

Contact

Have a project in mind? Let's talk.

Whether you need a web app built, a logo refreshed, or a developer to join your team, drop a message and I'll get back to you within a business day.

Social
Facebook · Instagram
·

Downloads

A small app I've built. Free to download, and feedback is always welcome.

Car Maintenance Tracker app

Car Maintenance Tracker

A desktop app for logging service history across multiple vehicles, with cost and mileage charts per vehicle.

Windows .NET Free v1.0

More apps coming. ← back home