Skip to main content
2026

Amin Wafi

AI & Machine Learning Engineer

I build and ship AI systems. Computer vision, on-device LLMs, developer tools. One rule across all of it: the user's data stays on the user's machine.

View work Get in touch Resume
Athens, Greece · Open to relocation
01

About

I build AI systems: computer vision, on-device LLMs, developer security tools. One principle runs through all of it: the user's data stays on their machine.

My dissertation argues GDPR and frontier-scale LLM training on web-scraped data don't structurally coexist. I write about AI systems, privacy law, and security.

58
shell-pilot tests
0.924
mAP50, X-ray CV
28K
Dissertation words
2026
BSc, University of Derby
PythonPyTorchComputer VisionLLMsDockerC / systemsFormal methodsGDPR / AI governance
Available · June 2026
Athens, Greece · Open to relocate
02

Featured Projects

01 Developer Tools

shell-pilot

A zsh/bash hook that intercepts every command before it runs. Blocks 14 classes of dangerous commands, corrects typos, and explains failures. Nothing leaves the machine.

58 Tests passing
14 Danger rules
v0.1.0 Version
PythonSQLiteClickRichClaude Haiku APITOML
02 Developer Tools

screenshield

Real-time screen guardian: OCR at 2+ FPS, 12 secret types, Shannon-entropy filtering, meeting-aware escalation. Zero cloud. Zero frames written to disk.

20 Tests
12 Secret types
0 Cloud calls
PythonTesseractOpenCVmssTyperRichpsutil
03 Developer Tools

redact

Dual-engine PII redaction CLI: spaCy NER + Claude run in parallel, spans merged, compare mode shows where each engine fails.

2 Engines
PythonspaCyAnthropic APITyper
04 Computer Vision

Airport X-ray Prohibited-Item Detection

YOLOv8m detector for 5 knife classes in occluded X-ray baggage, mAP50 of 0.924, ablated against YOLOv8s and exported to ONNX + Docker.

0.924 mAP50
1,776 Test images
5 Classes
PythonPyTorchYOLOv8ONNXDockerOpenCV
02.5
Research · Dissertation 2026

The Structural Limits of GDPR Compliance in Frontier LLM Training

28K words
3 literatures
OpenAI annulment predicted

The argument: GDPR and frontier-scale LLM training on web-scraped personal data are . Connects ML memorisation research (Carlini et al.), EU law, and Charter fundamental rights.structurally incompatible

I tested current governance responses against a standard derived from CJEU Charter case law, and predicted the Court of Rome would annul the Italian Garante's €15M fine against OpenAI. It did, six weeks after submission.

Proposed remedy: a data-trusts model under GDPR Art. 80(2), with three technical pieces: cryptographic dataset provenance, a training-data registry, and a memorisation-audit interface.

Read the dissertation

Frameworks tested

01 EDPB Opinion 28/2024
02 CNIL 2025 Guidelines
03 EU AI Act Art. 53
04 GDPR Art. 80(2)
05 Charter Fundamental Rights
03

Skills

01

Languages

Python C C++ SQL Bash
02

AI / ML

PyTorch Hugging Face YOLOv8 ONNX OpenCV scikit-learn RAG Fine-tuning LLM APIs spaCy
03

Web & Backend

Flask SQLAlchemy PostgreSQL REST APIs SQLite Jinja2
04

Data

Pandas NumPy Matplotlib LAPACK
05

Infra & Tooling

Docker Linux Git CI/CD GitHub Actions POSIX IPC Make
06

AI Governance

GDPR EU AI Act EDPB PII handling Deployment ethics
07

Formal Methods

CSP-M FDR4 model checking Trace refinement Concurrency verification
04

More Work

01

mirror-game

AI/ML Coming Soon

A real-time AI debate arena: argue against Claude Sonnet 4.6, live-scored across 3 rounds, with a Three.js WebGL stage and Supabase spectator mode.

  • · Claude Sonnet 4.6 debate endpoint with streaming responses and graceful mock fallback
  • · State machine across 6 screens: home → setup → debate → result → spectator-setup → spectator-debate
  • · React Three Fiber WebGL scene morphs between 3 modes (home, debate, result) with winner reveal animation
  • · Supabase real-time backend: transcript storage, live spectator updates, vote tallying
  • · Framer Motion screen transitions; Tailwind CSS v4; TypeScript strict throughout
Next.js 15React 19TypeScriptThree.jsSupabaseAnthropic APITailwind v4
02

mocap-sandbox

AI/ML Coursework

Real-time skeletal pose tracking from webcam using MediaPipe PoseLandmarker with OpenCV skeleton overlay.

  • · MediaPipe PoseLandmarker (pose.task model, VIDEO mode, num_poses=1)
  • · Real-time OpenCV skeleton overlay with frame-indexed timestamp
  • · Graceful exit handling; runs on Python 3.13
PythonMediaPipeOpenCVNumPy
03

ElegantDine

Web

Flask restaurant-management app with reservations, order status workflow, and RBAC. Deployed on Render with PostgreSQL.

  • · Role-based auth (Flask-Login)
  • · Order status state machine
  • · PostgreSQL/SQLite auto-fallback
  • · Deployed on Render
PythonFlaskSQLAlchemyPostgreSQL
04

Pandemic Resilience System

Web Coursework

Multi-role Flask platform with encryption at rest, FHIR vaccination records, and purchase-limit enforcement.

  • · Encryption at rest for sensitive identifiers
  • · Werkzeug password hashing + RBAC
  • · FHIR-JSON vaccination records
  • · Full audit logging
PythonFlaskSQLAlchemyCryptographyBootstrap
05

Security Management Reports

Security Coursework

Consultant-style authentication review (6 password managers, FIDO2, PCI-DSS) and the 2025 M&S ransomware post-mortem mapped to ISO 27001.

  • · Evaluated 6 password managers + 2 MFA bypass techniques
  • · Reconstructed Scattered Spider attack chain
  • · Mapped failures to ISO 27001 / NIST
  • · Costed remediation programme
PCI-DSSISO 27001NISTFIDO2UK GDPR
06

Systems Programming

Systems Coursework

POSIX shared memory + semaphores in C, a Linux loadable kernel module, and LAPACK benchmarking across 4 environments with Docker.

  • · POSIX shared memory + named semaphores with clean teardown
  • · Loadable Linux kernel module
  • · LAPACK solver verified to machine epsilon
  • · Reproducible across 4 environments
CBashPOSIX IPCLinux kernelLAPACKDocker
07

Formal Verification (CSP-M / FDR)

Formal Methods Coursework

CSP-M models in FDR proving a banking security breach and Dekker's algorithm failing safety vs liveness under compiler optimisation.

  • · Trace refinement proving a breach testing could not catch
  • · Mutual exclusion, deadlock, divergence checks
  • · Safety failure (Opt A) vs liveness failure (Opt B)
CSP-MFDR4ConcurrencyFormal methods
05

Contact

Open channel

Finishing my degree in 2026 and looking for AI and software roles. Open to relocation anywhere. If you're building something interesting, I want to hear about it.

Send an email