← All work

Co-founder & lead engineer Stilez · April 2026 – now

DUIBL

Stilez is an iOS app that rates your outfit with AI. I co-founded DUIBL and built Stilez, from the architecture to the App Store launch. Most of my time goes into the AI pipeline: making it cheaper, quicker and more consistent.

Role
Co-founder & lead engineer
Timeline
April 2026 – present
Source
Closed source Proprietary product code.
Stack
React Native, TypeScript, Postgres, pgvector, Deno (serverless), LLM pipelines, payments
Links
−67%image-generation spend
68%of production requests served from cache, in under a second
2×sustainable rating throughput
−30%cost per rating

What it is

Stilez takes a photo of an outfit and gives it an AI rating and feedback. People expect an answer in a couple of seconds, each rating has to be cheap enough to give away a lot of them, and two similar outfits should get similar scores.

I handle all of it: the React Native/TypeScript client, the Postgres backend, thirteen serverless Deno functions, the AI pipelines, payments, security and compliance, through App Store review and launch.

Breaking the rate limit

The first ceiling we hit was an output-token rate limit on the model provider: past a certain load, ratings started failing. Instead of making people wait in a queue, I split the pipeline across two models. Each part of a rating goes to whichever model does it well for the least money, and a failed call gets rerouted to the other one.

That doubled how many ratings we can sustain and cut the cost of each by about 30%.

Cutting image-generation spend

Image generation was the other big cost. Many requests are near-duplicates, so I built a pgvector similarity cache with three tiers: exact match first, then embedding match, and only then generate.

The cache now serves 68% of production requests in under a second and cut image-generation spend by two-thirds.

Keeping scores honest

Model providers update their models under you, and an LLM's idea of a "7/10" can drift with them. We keep a set of outfits that users have scored and check the model against it, so ratings stay calibrated when a provider ships an update.

We also release in short cycles to outside beta testers and change the app based on what they tell us.