Job description:
Status: 01 Open Position | Experience Requirement: 3 - 5 Years| CTC: 10-12 LPA
What Tiffexx is
We deliver home-style tiffin meals on a daily subscription. A customer subscribes to a plan say, weekday lunch. Every morning the system turns active subscriptions into that day's orders, assigns each order to a delivery rider, moves it through its lifecycle, and settles payment, all before the lunch window closes.
Riders work from a phone, in traffic, in basements and stairwells, on a connection that drops constantly. That last detail is the whole job.
What you would own
- The delivery rider app go online, claim the next order, move it through pickup and delivery, share live location. Built first, because operations run on it.
- The customer app browse plans, subscribe, pause and skip days, change address, pay, track today's delivery.
- The vendor app — kitchen-side order visibility and status updates.
- A shared React Native codebase and component library across all three, so we build once and reuse rather than maintaining three unrelated apps.
You will also touch the web side — the ops dashboard and customer web flows are React, and we would rather you were comfortable there than hand off at the boundary. That is why this is a full-stack role and not a pure mobile one.
The hard part — please read this properly
Building the screens is not the difficult bit. Keeping the app correct on a bad connection is. These are the problems you would actually spend your time on:
- A rider taps “Delivered”, the network dies before the response comes back, and they tap again. Nothing may happen twice.
- Two riders tap “Claim” on the same order in the same second. Exactly one gets it, and the other gets a clean, honest answer.
- A rider marks an order delivered while completely offline. Meanwhile the office reassigned it. On reconnect, that conflict has to be detected and resolved — never silently overwritten.
- The app is killed in the background mid-delivery. Location sharing and queued actions have to survive it.
- A customer's payment succeeds but the confirmation never reaches their phone. The app must not lie to them in either direction.
If you have solved problems like these — offline queues, idempotency keys and safe retries, conflict resolution on sync, background execution limits, push delivery you cannot rely on, performance on cheap Android devices — tell us specifically which app and which problem. That is what we are hiring for, and it is what the interview is about.
Technologies
Mobile (required)
React Native, Expo, React Navigation, offline storage and sync
Mobile services
Push notifications (FCM), background location, deep links, app store release process
Web
React.js, Next.js, TypeScript, TailwindCSS
Backend (working knowledge)
Node.js, Express.js — enough to build an endpoint and debug one, not to own the engine
Databases
PostgreSQL or MySQL, MongoDB, Redis
Payments
Razorpay, Stripe or similar — the app side of a payment flow that must never double-charge
Real-time
WebSockets / Socket.io, or polling done sensibly
Tooling
Git, CI/CD,
EAS or equivalent build pipelines
React Native is a hard requirement. We are not able to consider Flutter for this role — the codebase is React Native and the rebuild starts now. Beyond that we care far more about how you reason about correctness than about whether you have used every item on this list.
Who we are looking for
- You have shipped a React Native app that real people used — on a store, or to real field users. Be ready to name it and say exactly which parts were yours.
- You have hit real-world mobile problems: bad networks, offline states, background limits, slow devices, unreliable push. You have opinions about them.
- You are comfortable across the stack — you can build the screen, call the API, and read the backend code when something is wrong.
- You can explain a technical risk in plain words. Our founder is non-technical and you will talk to him often.
- Roughly 2–6 years of experience. We are genuinely adaptable: we have interviewed excellent engineers at 2.5 years and passed on weaker ones at five. Depth beats tenure.
Bonus, not required: delivery, logistics, q-commerce, ride-hailing or any business where a person on a motorbike is part of your system.
This role is probably not for you if
- Your React Native experience is a line on your skills list rather than an app you built and shipped.
- You have built only happy-path apps and have never had to think about what happens when the request does not come back.
- You want to stay strictly on the front end and hand off at the API boundary.
- You are used to shipping a high volume of small projects. This is one product, built deeply, over a long time.
Work Location: In person
📌 Full Stack .Net Developer (Noida)
🏢 Brythm
📍 Noida