Carl Beattie

Carl Beattie

Backend Engineer

London, UK

Hire me GitHub →

I'm Carl.

I build backend systems and tools that solve real business problems, not just write code that technically works.

Backend developer with a passion for digging into complex business problems and building clean, reliable solutions. I've had a love for building software since 13 and landed my first freelance project at 14.

Core stack: Node.js, TypeScript/JavaScript, PostgreSQL, Python, and Lua. I built neat-edifact, a TypeScript library for parsing UN/EDIFACT interchanges, currently used in a port management system handling real-world logistics and cargo data. I've worked across shipping & logistics, ecommerce, and law enforcement software.

Frontend isn't where I live. Internal dashboards, staff tools, technical interfaces, I'll build it. A polished consumer-facing frontend? That's not me, and I'd rather be honest about that than do it badly. My passion is the backend, the logic, and the systems that make everything work.

Harbour OS Shipping & Logistics

Full-stack port management system handling ship arrivals, container tracking, truck movements, and storage logistics. Built with AdonisJS, TypeScript, and PostgreSQL.

View on GitHub →
Guardian Law Enforcement

Community policing portal enabling crime reporting and communication with local law enforcement. Includes an ML model trained on report data and a full REST API.

View on GitHub →
Lemnky Education

Wiktionary parser and scraper built for a client to extract Latin word data and generate flashcards for language learning.

neat-edifact TypeScript

Zero-dependency TypeScript library for parsing UN/EDIFACT interchanges into fully typed objects. Currently used in a live port management system.

View on GitHub →
neat-edifact-schema TypeScript

Typed schema definitions for UN/EDIFACT message segments, built as a companion library to neat-edifact for structured message validation.

View on GitHub →
impostor.js JavaScript

Lightweight fake data generation library built during the faker.js drama as a stable, maintained alternative for generating test and seed data.

View on GitHub →
nvim-sonar-review Lua / Neovim

Neovim plugin for SonarQube — view issues and trigger scans without leaving the editor. Supports Telescope, async scanning, and configurable filters.

View on GitHub →
tmux-sessionizer Shell

Shell script for fuzzy-finding and jumping to tmux sessions or directories. Supports partial session name matching and custom directory sources.

View on GitHub →
tree-sitter-edge In Progress

Tree-sitter grammar for the Edge templating language. Started but not yet complete.

View on GitHub →