Experience Requirements
-
8+ years of overall experience building and operating backend APIs in production environments
-
Minimum 4 years of hands-on experience with FastAPI specifically (not just general Python API frameworks)
-
Demonstrated experience owning services end-to-end — design, development, deployment, and monitoring
-
Prior experience mentoring engineers or leading technical design discussions is a plus
Design and develop high-performance RESTful APIs using FastAPI with clean, validated schemas via Pydantic
Architect scalable backend systems, making sound trade-offs on performance, reliability, and maintainability
Implement multi-layer caching (Redis + in-memory L1 cache) to optimize latency and throughput
Build secure authentication/authorization flows using JWT and OAuth2
Integrate with external and internal services using async HTTP clients (HTTPX)
Design and consume message queues for asynchronous and event-driven processing
Implement standardized, consistent error handling following RFC 9457
Write efficient, optimized SQL queries and review database interaction patterns
Drive system design discussions and review architecture proposals across teams
Write unit/integration tests and uphold high code quality and observability standards
Required Skills (Mandatory)
FastAPI
4+ years of deep, hands-on production experience — routing, dependency injection, async endpoints, middleware, background tasks
Pydantic
Strong command of data validation, serialization, custom validators, and schema design (v1/v2)
Redis
Caching strategies, pub/sub, session/token storage, expiry and eviction policies
Core Skills (Working Knowledge Expected)
System Design — ability to architect scalable, fault-tolerant, high-throughput backend systems
Authentication & Authorization — OAuth2, RBAC, secure API access patterns
JWT — token issuance, validation, refresh flows, and security best practices
HTTPX — async HTTP client usage for reliable service-to-service communication
API Design — RESTful principles, versioning, rate limiting, backward compatibility
Message Queues — experience with Kafka, RabbitMQ, SQS, or Celery for async processing
L1 Cache Handling — in-memory/application-level caching alongside Redis (L2) for low-latency reads
Exception Handling (RFC 9457) — standardized "Problem Details for HTTP APIs" error responses
SQL — strong working knowledge of relational databases (PostgreSQL/MySQL), query optimization, and ORM usage (SQLAlchemy)