jp ferreira

// software engineer · london incoming

Engineer who ships, manager who listens, builder who turns ideas into products.

Full-stack engineer with 5+ years' experience building production systems in TypeScript, React, Node, and Ruby on Rails, with growing depth in Python and Django. Before software, eighteen years of construction project management taught me what owning outcomes, not just tasks, actually looks like.

Currently Melbourne · Relocating to London October 2026 · Right to Work in the UK (Settled Status)

// about

The work, and the way I work.

I came into software engineering after eighteen years managing construction and infrastructure projects across Southern Africa and the UK. That earlier career taught me how to own things end-to-end - stakeholders, budgets, deadlines, the awkward conversations, the moments where the plan meets reality. I carry all of that into engineering work.

Today I'm a full-stack engineer with 5+ years of production experience. I'm strongest in TypeScript, React, Next.js, Node, and Ruby on Rails, and I'm currently building two SaaS products in Python and Django - Invitify (events and RSVPs) and ClauseQ (AI-powered contract deadline management). I work fluently with AI coding tools, and I've designed governance systems around them in production - the kind of work where the goal is AI assists, humans decide.

Beyond the code, I care about the team. I'm the person who organises the lunches, the after-work drinks, the dinners that turn colleagues into friends. I think culture is something engineers build together, not something HR hands out, and I bring positivity and presence to it every day.

JP
Based in
Melbourne, AU
Moving to
London, UK
Arriving
October 2026
Status
EU Settled
Loves
Turning coffee into code, sports, dogs
// selected work

Things I've built.

A few of the projects I'm most proud of. Full list on the projects page.

Invitify

Shipping July 2026

Modern event-invitation and RSVP platform with a pay-per-event model - built for weddings, birthdays, networking events, and small fundraisers. Template-based pages with single-link sharing (no guest accounts), RSVP and plus-one tracking, dietary collection, automated reminders. Built end-to-end as a solo founder.

Next.jsTypeScriptPythonDjangoDRFPostgreSQLStripeCeleryRedispytest
Invitify

ClauseQ

Shipping September 2026

AI-powered SaaS that prevents missed contract deadlines through automated parsing, scheduling, and notifications. Document parsing with human-in-the-loop validation, multi-tenant workspaces, background job processing, and Stripe billing. Designed for teams who can't afford a missed renewal.

Next.jsTypeScriptPythonDjangoDRFPostgreSQLStripeAnthropic ClaudeOpenAICeleryRedis
ClauseQ

AI governance at Domain

Production

Designed and led the rollout of AI-assisted PR review workflows and engineering guardrails. The principle was simple: AI assists, humans decide. The system lifted PR review consistency across the team while keeping human accountability central. Separately, led the UX and backend data-mapping work that lifted NPS from 7% to 60%.

ReactReduxTypeScriptRuby on RailsNode.jsPrismaPostgreSQLAWSAnthropic Claude
AI governance at Domain
// stack

What I work with.

Languages & runtimes

What I reach for first.

TypeScriptJavaScriptPythonRubySQLNode.js

Backend & APIs

How I structure data flow and business logic.

DjangoRuby on RailsDRF

Frameworks & frontend

How I shape things people use.

ReactNext.jsVueElmTailwind

Infra, data & tooling

Where things actually run.

PostgresAWSDockerVercelFly.ioHerokuGitHub ActionsCircleCISentryStripeOpenAIAnthropic ClaudeRSpecpytestCypress
// writing

Notes on AI, engineering, and the work.

Occasional writing on AI-native engineering, governance, the strange new shape of the role, and lessons from a career that started in construction.

// say hello

Let's build something
in London.

I'm actively looking for senior full-stack or AI engineering roles, starting October 2026. If you're hiring - or just want to chat about the work - get in touch.

Location
Melbourne → London
Available
October 2026
Status
Open to roles