Senior Full-Stack Developer (React/TypeScript + Python/FastAPI) for Multi-Tenant SaaS Platform

Posted yesterday

Worldwide

Summary

We are hiring a senior full-stack developer to architect and build a production-grade, multi-tenant SaaS web application end to end. The core of the product is a data management platform: users onboard, manage records and documents through a dashboard, collaborate within workspaces, and get reporting/analytics views. The application also includes a lightweight AI assistant feature (LLM-powered Q&A; over the user's data), but this is a supporting feature, not the core of the build. We need someone who is strong on application architecture, API design, data modeling, and frontend engineering first. Frontend scope • React 18+ with TypeScript (strict mode), built with Vite or Next.js (App Router) — propose and justify your choice • Component architecture with a shared design system (shadcn/ui, Radix, or MUI) and Tailwind CSS • Client/server state separation: TanStack Query for server state, Zustand or Context for local UI state • Auth flows: signup, login, email verification, password reset, session refresh with httpOnly cookies • Complex data-grid views: server-side pagination, sorting, filtering, column config, CSV export • Form-heavy workflows with React Hook Form + Zod schema validation shared with the backend • File upload UX with progress, drag-and-drop, and resumable/chunked uploads for large files • Role-aware routing and UI gating (owner / admin / member permissions) • Accessibility (WCAG AA basics) and Core Web Vitals budgets (LCP 2.5s on dashboard routes) Backend scope • Python 3.11+ with FastAPI, fully typed (Pydantic v2), async SQLAlchemy 2.0 • PostgreSQL with a proper multi-tenant data model (row-level tenancy with tenant_id scoping; discuss trade-offs vs schema-per-tenant) • Alembic migrations, seed scripts, and a documented ERD • AuthN/AuthZ: JWT access + rotating refresh tokens, RBAC middleware, tenant isolation enforced at the query layer • RESTful API with OpenAPI docs, consistent error envelope, cursor-based pagination, idempotency keys on mutating endpoints • Background jobs (Celery + Redis, or ARQ/Dramatiq) for emails, exports, and document processing • S3-compatible object storage for file handling with presigned upload/download URLs• Webhooks (outbound) with signing and retry/backoff • Rate limiting, request validation, and audit logging on sensitive actions AI assistant feature (secondary scope) A contained feature, not a research project: a chat panel where users ask questions about their own uploaded documents and records. • Ingestion job: text extraction, chunking, embeddings stored in pgvector (same Postgres instance) • Retrieval + prompt assembly, calling a hosted LLM API (OpenAI or AWS Bedrock/Claude) — no model training or fine-tuning • Streaming responses to the UI via SSE, with basic source citations • Per-tenant token usage tracking and a monthly cap DevOps & quality expectations • Dockerized services with docker-compose for local dev; deploy to AWS (ECS Fargate or EC2) or a comparable platform • CI/CD via GitHub Actions: lint (ruff/eslint), typecheck (mypy/tsc), tests, build, deploy • Testing: pytest with API/integration tests on critical paths; Vitest/React Testing Library on core components; one Playwright happy-path E2E • Structured logging (JSON), error tracking (Sentry), and basic metrics/health endpoints • Environment config via env vars with a documented .env.example; secrets never committed Requirements • 5+ years full-stack experience; at least 2 production SaaS applications built end to end (links required) • Deep React + TypeScript experience — you can explain your state management and rendering-performance decisions • Strong Python API experience (FastAPI or Django/DRF) with async patterns and PostgreSQL data modeling • Comfortable owning architecture decisions and documenting them (short ADRs) • Some hands-on experience integrating an LLM API is enough for the AI feature — we are not hiring for ML research • Clear async written communication; weekly demo of working software Deliverables: deployed application, private GitHub repo (clean commit history, README, setup docs), ERD + short architecture doc, API docs (OpenAPI), CI/CD pipeline, and a recorded handover walkthrough. To apply: start your proposal with the word "GROUNDED". Include links to 1–2 SaaS apps you built, state your proposed stack choices (Vite vs Next.js, job queue, deployment target) with one line of reasoning each, and a milestone breakdown

  • More than 30 hrs/week
    Hourly
  • 6+ months
    Duration
  • Expert
    Experience Level
  • Remote Job
  • Ongoing project
    Project Type

Contract-to-hire opportunity

This lets talent know that this job could become full time.
Learn more
Skills and Expertise
Mandatory skills
Web Application
Website Redesign
Activity on this job
  • Proposals:50+
  • Last viewed by client:yesterday
  • Interviewing:
    3
  • Invites sent:
    4
  • Unanswered invites:
    0
About the client
Member since Mar 15, 2024
  • United Kingdom
    Manchester12:10 AM
  • $26K total spent
    34 hires, 2 active
  • 55 hours

Explore similar jobs on Upwork

Multiplayer Card gameHourly‐ Posted 3 weeks ago
Native App Development
AngularJS
TypeScript
Node.js
JavaScript
React
MongoDB
MySQL
Amazon Web Services
Redis
Socket.io
Web Design
ExpressJS
NodeJS Framework
Game Development
RESTful API
Bullhorn CRM Data ImportHourly‐ Posted 4 weeks ago
Laravel
Node.js
PHP
WordPress
API Integration
Vue.js
CodeIgniter
API Development
Bullhorn
WordPress Development
OpenCart
LangChain
Generative AI
AI Agent Development
Python

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers 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

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo