Hi, my name is

David Hearl

Full-Stack Developer & Engineer

I'm a full-stack developer with a background in mechanical and electrical engineering, now focused on crafting smart, reliable software. I like building tools that solve real problems — whether that’s for the web or my homelab.

About

I started out as an engineer — maintaining factory equipment, designing precision components, building testing systems, pioneering in-house 3D printing, and scanning cruise ships with lidar.

That hands-on experience gave me a love for systems, efficiency, and practical problem-solving. Now, I bring that mindset into full-stack development — designing Django apps, building tools, and automating workflows.

I run a self-hosted infrastructure stack at home (Proxmox, TrueNAS, UNRAID) and enjoy treating development like engineering: plan carefully, automate what you can, and build things that last.

Whether it’s a quick CLI script or a full dashboard, I focus on making things that are clean, useful, and genuinely solve problems.

Where I've Worked

Click to See More

Led 3D scanning operations across global shipbuilding projects, collecting and processing lidar data for interior fit-outs.

Developed a Django web app to manage hardware usage and survey timelines, and wrote a terminal-based Python tool using OCR and GUI automation to streamline processing tasks.

Mentored apprentices and led technical training sessions for new staff, building confidence in 3D scanning workflows, equipment handling, and data processing techniques.

Independently defined, documented, and maintained the full scanning system architecture — including hardware specifications, storage infrastructure, and global deployment strategy.

Developed a suite of internal tools using VB.NET and Python to automate design and manufacturing — including 3D modeling workflows and G-Code generation — reducing lead time from 12 weeks to just 3 days.

Replaced costly machined steel and fragile PLA parts with carbon fibre and nylon 3D-printed tooling — strong enough for production, soft enough for part handling. This shift cut costs by 97% and lead times by 93% across prototypes and jigs, enabling fast iteration and on-demand manufacturing.

Led the migration of engineering documentation from Lotus Notes to a modern PLM system (Saperion), coordinating with international teams across six sites (UK, USA, Mexico, Brazil, Poland and India). Maintained the CMA change control database and ensured consistency of production drawings across global operations.

Designed and built specialised testing rigs for rubber sealing components used in shock absorbers — including a friction test machine with environmental controls for pressure and sub-zero temperature testing. Supported product development through hands-on validation, fixture design, and iterative prototyping.

Supported senior engineers with 3D modelling and drawing creation using Autodesk Inventor — gaining hands-on experience with part libraries, assemblies, and production drafting.

Investigated strategic weight reduction in 3D printed components to improve strength-to-weight ratio and reduce material costs. With PLA priced at £0.25 per gram and average part weight around 320g, even small savings had significant impact. Some parts achieved weight reductions of over 40% while maintaining functional integrity.

Key contributor to a 4-person Six Sigma team focused on inefficiencies in washer production. Identified material waste due to undersized billets from suppliers and excessive scrap from CNC toolpaths. We even sourced a 1.1m vernier caliper to verify machining tolerances — improving yield and reducing material loss across multiple product lines.

Rotated across multiple engineering departments including the toolroom, maintenance, validation, high- and low-volume production, rubber chemistry, processing improvement, and product development. Gained exposure to a wide range of disciplines and worked alongside experts in their respective fields.

Developed hands-on skills in mechanical assembly, fault diagnosis, and workshop operations — learning the importance of preventative maintenance, precision tooling, and efficient engineering workflows.

Built foundational knowledge of electrical and mechanical systems that set the stage for a seamless move into CAD, where I began turning physical engineering concepts into digital models.


Took on this role while seeking a new opportunity in tech — providing flexibility alongside my ongoing development work.

Serve customers in a fast-paced off-licence environment, manage stock, maintain store standards, and support sales of wine and spirits with a professional, customer-first approach.

The position has sharpened my people skills, adaptability, and ability to stay calm and efficient during solo shifts and peak trading times.

Worked evening shifts as a delivery driver alongside full-time employment and study — combining a love of driving with a solid lesson in time management, customer service, and staying calm under pressure.

Managed fast-paced deliveries during peak hours, while developing an excellent understanding of pizza logistics.

Deployed Projects

Click a row to see more details

Name GitHub Link
predictions View

Predictions — A smarter reboot of the football prediction engine. The goal is to feed scraped stats directly into a database and generate match outcome predictions using trend analysis.

  • Scrapes and stores real-world match data
  • Suggests likely scores and winners using historical stats
  • Still early days, but the foundation is way stronger than before
scene-automation View

Survey Tracker — A custom internal tool for MJM Marine used to monitor scan processing progress across multiple ships.

  • Includes a dynamic calendar for scheduling upcoming surveys
  • Survey planning calculator with estimate forecasting
  • Modules for issue tracking, staff training, and priority management
finances View

Mortgage Calculator — A simple web tool designed to visualize loan repayment schedules.

  • Minimal input fields for loan amount, interest rate, and term
  • Automatically generates an amortization chart over time
  • Payment breakdown table showing monthly interest and principal
Sweet-Shop View

Final Portfolio Project — A full-featured eCommerce website developed as the final portfolio project for my bootcamp.

  • Supports product listings, user accounts, shopping cart, and secure checkout
  • Stripe integration for seamless payment processing
  • Full CRUD functionality for managing products, orders, and user profiles
  • Designed with scalability and maintainability in mind
flag-game View

Flag Game — A fast-paced JavaScript quiz where users guess the country from its flag. This was my second portfolio project and a big step up in DOM manipulation and event handling.

  • Built entirely with vanilla JavaScript, HTML & CSS
  • Responsive design and real-time score tracking
  • No frameworks, no Django — just good old-fashioned JS and a few learning curves
chiropractic-website View

Chiropractic Website — My very first website project, built for a local chiropractor whose original site struggled with responsiveness (especially on mobile). I used this as my first portfolio project to learn the basics of HTML, CSS, and JavaScript.

  • Fully responsive design with service listings, booking info, and a contact form
  • Hand-coded from scratch to improve layout, structure, and usability
  • While I’m proud of it, it’s definitely showing its age — a rebuild with Django and modern best practices is on my to-do list
my-portfolio View

My Portfolio — You're already here, so you might as well have a nosey around.

  • Built with custom HTML, CSS, and JavaScript — no templates, no shortcuts
  • Dynamic animations, responsive layouts, and a clean dark theme
  • Contains my work, background, and a few Easter eggs (depending how hard you look)

Ready to Deploy

Click a row to see more details

Name GitHub
investments

Investments — Built to help manage and visualise my personal investment portfolio. The site includes line and pie charts to track growth over time and identify which stocks need rebalancing to maintain portfolio targets.

  • Parses monthly CSV statements automatically from Trading 212
  • Highlights stocks under or over target allocation
  • Tracks changes in value across months with visual aids
quiz-site

Quiz Site — Every year I somehow get stuck making a Christmas quiz. This year I built a platform for it. Users join a group, choose the categories they want, and everyone answers questions in real time.

  • Live updating party mode with category selection
  • Lightweight front-end with server-side state tracking
  • No more PowerPoint quizzes for me, hopefully
say-it-again

Say It Again — A language learning app based on the idea that knowing the 1000 most common words in a language gets you far. Users are quizzed in either direction with a level system that increases difficulty.

  • Supports multiple languages with dynamic word sets
  • Tracks user progress and word accuracy over time
  • The theory? Ambitious. The app? Surprisingly usable
golf_statistics

Golf Statistics — A quick tool to visualise my golf swing stats using CSVs exported from my range sessions. It shows distance consistency and club averages with scatter and line plots.

  • Charts average, min, and max for each club
  • Scatter plots track consistency and outliers
  • Data-driven? Yes. Better golfer? Sadly, no.
connect-four

Connect Four — My third portfolio project, and the first time I really embraced object-oriented programming in Python. A simple terminal-based version of the classic game.

  • Fully playable 2-player game in terminal
  • Uses classes and methods to keep the code clean
  • Great intro to game logic and OOP structure

On the Back Burner

Click a row to see more details

Name GitHub
server-configurations

Server Configurations — Designed to map out my entire homelab, including rack layouts, drive inventories, and filesystem contents. Currently just a skeleton, but it’s my top priority as I transition to a Proxmox cluster and move non-essential data off iCloud.

  • Intended to manage drive metadata and physical rack planning
  • Eventually will help flag redundant and low-priority data
  • Core to keeping my growing setup actually organised
football-predictions

Football Predictions — The original proof-of-concept to show that football can be predictable through data. It taught me how to scrape, but it hit limitations in structure and storage — which led to the creation of the updated Predictions project.

  • Scraped stats to analyse matchups
  • Highlighted the need for better data architecture
  • Still proud of what it taught me about automation
chiropractic-website-2

Chiropractic Website 2 — A reboot of my very first site using Materialize CSS for a cleaner design. While it looks better, I’ve since learned a lot more about frontend frameworks and accessibility. It’s been bumped down the list, but still on the radar.

  • My first time using Materialize framework
  • Responsive design with a modern layout
  • A solid upgrade — but not the final version
canasta

Canasta — A digital version of a family-favourite card game. I hit some roadblocks (and the UI was, let’s say, "challenging"), but I recently figured out how to fix it and plan to circle back. Side quest: I’d love to build a robot dealer for the real game.

  • Turn-based multiplayer logic
  • Paused due to complexity and ugly design (being honest)
  • Now that I’ve solved the hard bits — it’ll get finished
Inventor_Add_In

Inventor Add-In — My first ever coding project. What started as an Excel-driven CAD tweak ended up becoming a full VB.NET add-in for Autodesk Inventor. It's riddled with rookie mistakes, but I’ll never delete it. Big nostalgia points.

  • Built with VB6 and upgraded to VB.NET
  • Automated CAD model parameter changes
  • Messy? Absolutely. But it started everything
enimga-machine

Enigma Machine — Inspired by my obsession with WWII history, this web-based cipher simulator replicates the iconic Enigma Machine. The logic is solid, but I hit a wall on the frontend. It’s parked for now, but still one of my favourite ideas.

  • Models rotor logic and encryption flow
  • Frontend needs love, backend works great
  • Plan to finish once other projects settle down
polynomial_calculator

Enigma Machine — This one came from a fascination with cryptography and WWII. I had a go at recreating the iconic cipher machine in the browser, but honestly, the frontend looks rough and the backend doesn’t exist yet. It’s more of a placeholder for a cool idea I want to come back to once I’ve got more time (and energy).

  • Started as a challenge to build something historically inspired
  • Frontend is clunky and unfinished — backend hasn’t been started
  • Definitely a “someday” project I want to get right

Workout Guru (name TBD) — I’ve lost over 13kg and needed a better way to track progress than random Notes entries. This is a Django project to log workouts, view stats, and get exercise suggestions. It’s next on the list, and I’m excited to get it moving.

  • Track lifts, reps, and routines in a clean UI
  • Tailored suggestions based on history
  • Designed to help me stay consistent

Property Finances — As we’ve started buying and renovating properties, spreadsheets just aren’t cutting it. This Django app will help track expenses, rental income, and project ROI. Not started yet, but it's going to save us a ton of admin.

  • Multi-property financial tracking
  • Integrated breakdown of repairs and income
  • A real use-case for Django in property management

Education

Code Institute

2021–2022

  • Diploma in Software Development Nov 2022

Tyne Metropolitan College

2015–2019

  • HNC Mechanical Engineering July 2019
  • BTEC in Electrical Engineering (D*D*) July 2017
  • Functional Skills in ICT Level 2 Feb 2016
  • PEO Certification Jan 2016

King's School Tynemouth

2002–2015

  • GCSEs: 4x B [Maths, Science (Double), DT], 3x C [English, Geography, Business] Aug 2015

Skills & Tools

Web Development

  • Django
  • Python
  • HTML5
  • CSS3
  • JavaScript
  • Bootstrap
  • PostgreSQL / SQLite
  • Git & GitHub

Infrastructure & DevOps

  • Proxmox VE
  • Linux (Debian/Ubuntu)
  • Self-hosting
  • Docker
  • Monitoring & Backups
  • RAID & Virtualization

Engineering & Design

  • AutoCAD
  • Inventor
  • 3D Modelling
  • Laser Scanning
  • Manufacturing

Currently Improving

Get in Touch