seifashraf.tech

Full-stack engineer · backend-focused · Cairo

Full-stack apps on backends that don't wake you up at 3 a.m.

I'm Seif. I build the whole thing: the data model, the API, the interface people actually use, and the deploy that keeps it running. Eleven production apps and sites so far, for teams in Saudi Arabia, Egypt, and France.

Tell me about your project Download CVor
Cairo time––:––_
last pushcps 4 days ago
reply timewithin 24 hours
statusopen to projects and roles

What I build, roughly

HTTPSfetchSQLenqueuewebhooksconsumewritesend · uploadYour usersweb · mobile · AR/EN/FRNext.jsSSR · RTL · SEO pagesNext.jsReactTailwind CSSAPINestJS · Node · ZodNestJSNode.jsZodPostgreSQLDrizzle · migrationsPostgreSQLDrizzleRedis + BullMQjobs · retries · cronRedisBullMQStripe · S3 · Resendcalls out, webhooks inStripeAmazon S3ResendWorkersBullMQ consumers

swipe the diagram →

The shape of most systems I ship. Solid dots are requests, coloured dots are responses and webhooks. Hover a box, or send a request.

Selected work · 11 live sites

Live, in production, right now.

These are the real sites, loaded inside this page. Switch device, flip language, poke around.

lov.build8.dev
Lov homepage

01 / 11

Lov

Speech-therapy assessment platform, France

lov.build8.dev

French speech-therapy platform: a NestJS API on PostgreSQL with Drizzle, BullMQ job queues on Redis, Stripe billing, S3 storage, and a Next.js web app sharing Zod contracts in a Turborepo monorepo with Docker infra.

NestJSNestJSPostgreSQLPostgreSQL + DrizzleRedisBullMQ + RedisStripeStripeNext.jsNext.jsTurborepoTurborepo

Backend systems

Private APIs I designed and ran. No public URL, so here's what they do. Hover one.

  • CRMPro

    Multi-tenant B2B CRM platform

    NestJSNestJSPostgreSQLPostgreSQLRedisRedisBullMQBullMQ
    • Shared-database multi-tenant NestJS API with separate tenant and admin planes, RBAC, and plan-gated quotas.
    • BullMQ import/export workers with atomic claim and reclaim; 90 API specs, bulk up to 500 leads.
    NEST · POSTGRES · REDIS · BULLMQ
  • Voclio

    Voice-to-task productivity API

    Node.jsNode.jsRedisRedisBullMQBullMQ
    • Dual-process Express API and BullMQ workers for voice → speech-to-text → LLM extraction, with a sync fallback.
    • Google Calendar OAuth with AES-256-GCM token encryption and timezone-aware due dates.
    NODE · REDIS · BULLMQ
  • Field Capture

    Field ops and workforce payroll

    StripeStripeAmazon S3Amazon S3DockerDocker
    • Multi-role portals with Stripe Connect transfers, payout-period dedupe, and S3 uploads up to 500 MB.
    • GitHub Actions deploys to AWS EC2 with Prisma migrate, PM2, and Caddy TLS.
    STRIPE · AWS · DOCKER
  • Rabet

    Pay-per-lead marketplace

    NestJSNestJSPostgreSQLPostgreSQL
    • Client, provider, and admin APIs with unlock-gated contact privacy and an immutable wallet ledger.
    • Transactional provider onboarding and JWT refresh sessions with logout-all revocation.
    NEST · POSTGRES

Working notes

How I think about the work.

Opinions I've paid for. If you disagree with one, that's a good first conversation.

PostgreSQLDrizzle

Postgres until it hurts.

It rarely hurts. Most products never need anything else; they need indexes, a migration habit, and someone who reads the query plan.

proof · Lov, CRMPro, Rabet all run on one Postgres with Drizzle or Prisma migrations.

Contact

Tell me what you're building.

A project, a role, or a question about something above. I read every message myself and reply within 24 hours.

Or skip the form

contact@seifashraf.tech
CV (PDF)
This is about
What kind of thing
Budget (USD)
Timeline
How did you find me? (optional)

No newsletter, no spam. Just a reply.

Let's talk