Fix Production Bugs in a React/Node/Postgres Restaurant Finance App — Ongoing Support Engineer
Worldwide
I manage a restaurant cost-control platform used by about 200 independent restaurant operators and growing to close their books every week. When a number is wrong on our Weekly P&L, an owner makes a bad call on food cost or labor — so bugs here move real money. We're hiring a support engineer to own our bug queue: reproduce, root-cause, fix, and harden. WHAT YOU'LL DO - Triage incoming customer reports — reproduce, classify, set severity, and write a clear diagnosis. - Find the root cause. Not "the button is misaligned" — why does the invoice land in the wrong table, and what else does that code path touch? - Ship a short-term fix that unblocks the affected customer this week. - Then build the durable fix: the schema change, validation layer, or regression test that kills the whole class of bug. We want both halves. A patch with no follow-up plan is half the job. REAL TICKETS FROM OUR BOARD - A POS sync overwrote historical P&L data. Connecting Toast rewrote sales and labor on an already-closed week across all three of a customer's locations. Needs a write-provenance fix so manual data wins. - Bi-weekly payroll splits inconsistently between the Weekly P&L and the Performance Dashboard — two code paths, two answers, one customer's labor cost percentage. - Misc COGS is excluded from the all-in total, so the cost percentage differs from screen to screen. - Invoice OCR fails silently on multi-page PDFs — no data, no error message. - About 10 mobile layout bugs in the Invoice Tracker: clipped inputs, unscrollable dropdowns, truncated values on iPhone. STACK - Frontend: TypeScript, React 18, Vite, TanStack Query v5, Tailwind + shadcn/ui, Wouter - Backend: Node + Express, Drizzle ORM, PostgreSQL (Supabase), Zod - Infra: EC2 + PM2, GitHub Actions CI/CD, Sentry + AppSignal - Integrations: Toast POS API, OpenAI/Anthropic for invoice OCR, Gmail OAuth, Resend - Testing: Vitest, unit and integration against a real Postgres - Tickets: ClickUp HOW WE WORK Our board is large — a few hundred tickets — but it's triaged and maintained, not a dumping ground. Everything carries a status, priority, and reproduction steps. We have a dedicated QA engineer who verifies fixes before they're announced to customers, CI/CD on every merge, and error tracking in place. You'll never be guessing at what "done" means. - Pull tickets from ClickUp, work on a branch, open a PR. - Every fix ships with a regression test. - One weekly sync; async the rest of the time. - Overlap with US Central hours helps but isn't required. WHO THIS IS FOR Required: - 5+ years of production TypeScript across the full stack - Strong SQL and relational modeling — many of these bugs are data problems wearing a UI costume - Real debugging discipline: reproduce, hypothesize, verify, then fix - You write the failing test before the fix - Clear written English — you'll write customer-facing diagnoses and internal root-cause write-ups Nice to have: - Financial or accounting software (fiscal calendars, period math, ledger integrity) - POS or payments API integrations - OCR / document-extraction pipelines Not a fit if you're looking for a greenfield build. This is reliability work on a live system with real customers and real money in play. PROCESS We start with one paid ticket of roughly 4-6 hours at your normal rate before any ongoing commitment — good for both of us. No unpaid tests, no spec work.
- Less than 30 hrs/weekHourly
- 3-6 monthsDuration
- ExpertExperience Level
- Remote Job
- Ongoing projectProject Type
Skills and Expertise
Activity on this job
- Proposals:50+
- Interviewing:0
- Invites sent:0
- Unanswered invites:0
About the client
- United StatesLos Angeles1:10 PM
- $132K total spent50 hires, 14 active
- 4,948 hours
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by