Technical Portfolio

Solutions architecture projects with a focus on business intelligence, data analytics, and applying technology to real-world problems.

Smaller Projects & Experiments

Open-source utilities and learning exercises on GitHub, each highlighting a specific technical area.

Game · Python
Tic-Tac-Toe

Command-line tic-tac-toe implementation — a small exercise in game-state modelling, win/draw detection, and turn-based input validation.

PythonCLIGame Logic
View on GitHub
Desktop App · Python
Watermark

Desktop app for adding text, logo, or tiled watermarks to images — with a live preview, drag-to-place positioning, and threaded batch processing.

PythonPyQt6Pillow
View on GitHub
Desktop App · Python
Typing Speed Test

Desktop typing-speed test with real-time WPM and accuracy tracking — correct and mistyped characters are highlighted live as you type, with a timer that auto-starts on first keystroke and a restart button to load a fresh passage.

PythonPyQt6GUI
View on GitHub
Game · Python
Breakout

Clone of the classic 80s arcade game, built with Python’s standard-library turtle module — paddle-angle ball steering, smallest-overlap brick collision to bounce off the correct face, and endless speed-increasing levels at a manual ~60 FPS render loop.

PythonTurtleGame Logic
View on GitHub
REST API · Python
Cafe & Coffee API

A Flask directory of laptop-friendly cafes — wifi, power sockets, seating and coffee prices — backed by SQLite via SQLAlchemy. Exposes a full CRUD JSON API (GET/POST/PATCH/DELETE) with proper HTTP status codes and a token-guarded delete, alongside random and location-search endpoints and a Bootstrap web front end with WTForms validation. Try the live demo below to browse the cafe directory and hit the API.

PythonFlaskSQLAlchemy
Live Demo View on GitHub
Web App · Python
Todo List

A multi-user task manager built with Flask — each account gets its own private, session-authenticated list. Todos carry due dates with overdue highlighting, priority levels and category tags, and can be filtered by status, text search or priority. Backed by SQLite via SQLAlchemy, with CSRF-protected WTForms and hashed passwords throughout.

PythonFlaskSQLAlchemy
View on GitHub
Web App · Python
dissText

A writing app that punishes hesitation — inspired by The Most Dangerous Writing App. Pick a time or word target and keep typing; stop for more than five seconds and your words fade out and are wiped. A Flask backend serves the page, but all the timing, fading and wiping run client-side in vanilla JavaScript, so the draft never touches the server and lost words are truly gone. Built as Day 89 of the 100 Days of Code Python bootcamp.

PythonFlaskJavaScript
Live Demo View on GitHub

Professional Experience

Over 30 years in enterprise software across presales, solutions architecture, consulting, and product strategy — taking emerging technologies to market for blue-chip clients including Deutsche Bank, Barclays, BP, BT, SocGen, Nationwide and Tesco.

  • Independent Technology & Product Consultant
    2017 – present

    Working with ISVs, VARs and VC advisory firms (incl. Guidepoint) on solution design, value engineering, and go-to-market strategy. Currently focused on the SAP Analytics Cloud, Datasphere and BDC ecosystem.

  • Silwood Technology Limited · Solutions Architect
    2023 – present

    Solution design for Safyr metadata-discovery tooling, surfacing SAP, Oracle and Salesforce application metadata for data integration and migration projects.

  • Optimal Datacentres · Co-Founder
    2013 – 2016

    Software and services helping Telco, FS and manufacturing clients consolidate virtual and physical infrastructure to meet legislative and efficiency targets.

  • Nlyte Software · EMEA Senior Solutions Consultant
    2012 – 2013

    DCIM solutions for SocGen, Nationwide, Experian and Amadeus.

  • Adaptive Computing · EMEA Presales Manager, Cloud
    2010 – 2012

    Led EMEA presales for the Adaptive Cloud Suite, partnering with HP and IBM and delivering for Barclays Capital and Deutsche Bank.

  • Enigmatec Corporation · Technical Director / EMEA Presales Manager
    2006 – 2010

    IT process automation. Notable engagement: BP — $850k licence consolidating 18 management tools and reducing fulfilment time from months to days.

  • BMC Software · Senior Presales Consultant, Change & Configuration Management
    2005 – 2006

    Most profitable EMEA team per head within the company (Q3 FY06).

  • Motive Communications · Senior Presales Consultant, Northern Europe
    2001 – 2004

    Lead sales engineer for Telewest (£1.5m+); £6m+ in licence revenue closed in 2002.

  • BusinessObjects UK (now SAP) · Presales Manager, Financial & Commercial
    1996 – 2001

    BI presales for BT, Barclays, CSFB, Tesco and Rolls Royce. Technical Account Manager for British Airways.

Technical Skills

Python PyQt6 Flask SQLAlchemy Pydantic SAP Analytics Cloud SAP Datasphere OData / REST APIs Business Intelligence Data Mining PyInstaller Jupyter Notebooks SQL

Interested in a technical project or advisory engagement?

Get in Touch