Skip to main content
TuncerTechnologies

How we work

A clear process, a senior team and engineering habits that keep products fast, secure and easy to change.

// Merchant app: refresh the order list the moment an order changesconst channel = supabase.channel(`orders:${storeId}`)  .on('postgres_changes', { event: '*', table: 'orders' }, () =>    queryClient.invalidateQueries({ queryKey: ['orders', storeId] })  )  .subscribe()// Notify the rider assigned to the orderawait notify(rider.id, { title: 'New delivery job', priority: true })
Illustrative code in the style of our stack

Our process

Six steps from idea to launch, and beyond

Select a step to see what happens and what you receive.

Step 1 of 6

Discover

We start by understanding the business: who the users are, what success looks like and what has to be true on launch day. You get a written scope you can hold us to.

What you receive

  • Goals and success measures
  • User roles and key journeys
  • Written scope and milestones

Engineering practices

Habits that keep products healthy

The same practices run through every project we take on, from a company website to a multi-app marketplace.

Code review on every change

All work happens in Git. Changes are proposed as pull requests and reviewed before they are merged.

Separate environments

Development and production run on separate projects, so new work is proven before it touches live users.

Security in the data layer

Row-level security and role-based access are enforced in the database, not only in the app.

Secrets kept out of code

Keys and credentials live in managed environment settings, never in the repository.

Monitoring after release

Crash and error reporting with Sentry, so problems surface quickly and fixes ship fast.

Fast and accessible

Optimised images, lazy loading and accessible markup, checked on phones as well as desktops.

Technology

A modern, proven stack

Tools we use in production today. We choose what fits your product, not what is fashionable.

Mobile

  • React Native
  • Expo
  • TypeScript
  • TanStack Query
  • Zustand
  • React Native Maps

Web

  • React
  • Next.js
  • Vite
  • Tailwind CSS
  • Material UI
  • Framer Motion

Backend and data

  • Supabase
  • PostgreSQL
  • Laravel
  • Node.js
  • Prisma
  • Edge functions

Cloud and delivery

  • Vercel
  • Laravel Cloud
  • GitHub
  • App Store Connect
  • Google Play Console

Integrations

  • Firebase
  • Sentry
  • Stripe
  • GCash and Maya (PayMongo)
  • Charts and reporting

Working with us

What you can expect

Good software comes from good collaboration. Here is how we keep you in the loop from day one.

Start a conversation

One point of contact

A named lead who knows your project and answers your questions.

Working software, early

You try real builds during the project, not only at the end.

Decisions in writing

Scope, priorities and changes are written down and agreed.

Your accounts, your product

Store listings, domains and cloud projects can be set up under your own company accounts.

Have a product in mind? Let’s build it together.

Tell us what you want to build. We will reply with next steps, a suggested approach and a timeline.