Freelance Platform & Full Stack Engineer, buylist.co.uk
Part-time, alongside full-time employment · Trading-card buyback and retail business
- Sole engineer for the platform end to end, infrastructure as well as application: Linux hosts, Caddy and gunicorn under supervisor, MariaDB and Redis, a separate UAT environment, and deployment through GitLab CI on a self-hosted runner. Live and load-bearing for three years, with no second pair of hands.
- The client resold the platform to a second card business as their operating software, which I then re-architected for multi-tenancy: one codebase and one pipeline, two independent shops, separate databases and branding. Within 18 months its automations had freed enough staff time from manual pricing and listing to support the shop's move into larger premises with a storefront and event space.
- Scheduled job pipeline handling overnight repricing, inventory recounts, marketplace order reconciliation every few minutes and Meilisearch reindexing over a 112,000-card catalogue, against a price-history table of 11.6M rows.
- Two-way CardMarket integration for pricing, order import and fulfilment, plus a bulk listing pipeline ingesting scanner output for thousands of cards: reprice, reconcile against stock and publish in one pass. Two-way Shopify sync with webhook callbacks, and a published Firefox extension injecting platform data into CardMarket's own pages for staff.
- Pickstream, the picking interface, built around how the warehouse physically works rather than around the database: tablets on stands mounted above the picking stations, driven by a finger-worn scroll wheel, so staff advance through a pick at speed without ever taking a hand off the stock or touching a screen. Designed from repeated visits to the client's floor, watching how pickers actually move.
- Wider warehouse operations tooling over a Flask and MariaDB backend of ~24,000 lines across 37 models: holding-cell allocation, label printing and per-set stock valuation, with role-based access, TOTP 2FA and an admin audit trail.
Python · Flask · SQLAlchemy · MariaDB · Meilisearch · SvelteKit · Tailwind · Docker · GitLab CI · Caddy · Linode