Work / Techjar · 2024

Appetite

A London-first social app for saving, mapping and sharing places to eat. Past 10,000 downloads with 2,000+ people opening it daily.

Role
Software Engineer — backend, geospatial, mobile
Timeline
2023 — 2025
Platform
iOS & Android
Outcome
10,000+ downloads · 2,000+ daily active users
Appetite — Every restaurant you meant to try, on one map with your friends

The problem

Recommendations arrive as screenshots, saved Instagram posts and messages you never find again. Appetite’s bet was that the list is worthless without the map, and the map is worthless without your friends on it.

Clustering a city, serverlessly

The core technical problem is drawing thousands of markers on a phone map without melting the device or the bill. I built the clustering server-side: OpenSearch does geohash aggregation over a DynamoDB-backed index, so the app asks for a bounding box and a zoom level and gets back a small, already-grouped payload.

Every hop is serverless — Lambda behind API Gateway, defined in CloudFormation so environments are reproducible rather than hand-assembled. EventBridge and SQS carry the work that does not need to block a user, and CloudWatch is where I found out what was actually slow.

Social features that survive concurrency

Likes, comments and collaboration requests look trivial until two people tap the same button in the same instant and the counter drifts. These paths are written to be idempotent and race-safe, because a social feature that silently loses writes is worse than not shipping it.

Group chat runs on Redis and PostgreSQL, handling high-volume real-time messaging alongside a chatbot in the same surface.

Language into structure

Mistral produces the vector embeddings behind discovery, and LangChain turns free-text into strict JSON reliably enough to be a dependency rather than a demo. Content uploaded to S3 triggers AWS Rekognition automatically for categorisation, so moderation and tagging happen before a human ever looks.

What it came to

10k+
Downloads
2k+
Daily active users
Server-side
Geospatial clustering, any zoom level
  • Flutter
  • TypeScript
  • AWS Lambda
  • DynamoDB
  • OpenSearch
  • CloudFormation
  • Cognito
  • SQS

Open to senior engineering roles

Tell me what you are building.

Full-time roles, contract work, or a system that needs someone to own it. I read everything and reply within a few hours.

Start a conversation Download CV