Responsibilities
- API Layer: Build and maintain REST API endpoints using FastAPI — recruiter pipeline actions, candidate management, job configuration, and third-party integration webhooks.
- Data Modelling: Design and implement PostgreSQL data models — schema design, indexing, query optimisation via EXPLAIN ANALYZE, and Alembic migration management for new features.
- Multi-Tenancy: Build and maintain multi-tenant data access patterns — every query correctly scoped by tenant_id, no cross-tenant data leakage, new features inherit the isolation model from day one.
- Async Workers: Implement async worker tasks using AWS SQS and Celery — task design, retry logic, idempotency, and dead-letter queue handling for pipeline automation flows.
- Integrations: Build and extend third-party integrations — Lever ATS webhooks, SendGrid outbound and inbound parse, IMAP polling for the job-watch inbox, and AWS S3 for document storage.
- Testing: Write comprehensive test coverage — unit tests, integration tests, and async/webhook handler tests as a standard part of your workflow.
- Code Reviews: Participate in architecture discussions, code reviews, and technical documentation — raising quality concerns clearly and constructively.
- On-call: Contribute to on-call rotation — diagnose and resolve production incidents, write runbooks, and conduct post-mortems.
Requirements
- Python
- FastAPI
- asyncio
- SQLAlchemy
- Pydantic
- PostgreSQL
- Database Schema Design
- Database Indexing
- EXPLAIN ANALYZE
- Alembic
- Multi-tenant Architecture
- AWS SQS
- Celery
- Message Queue Systems
- REST API Integration
- OAuth
- Webhooks
- pytest
- Async Testing Patterns
- Systems Design
Preferred Skills
- React
- pgvector
- Vector Databases
- AWS Bedrock
- LLM Integration
- Multi-tenant SaaS Architecture
- New Skil
Qualifications
- 4 years of Python backend engineering experience in production environments
- Production-grade service development experience (not scripts)
- Experience with async programming using asyncio
- Strong database design and optimization skills
- Experience with async task systems (SQS, Celery, or RabbitMQ)
- Experience building third-party API integrations
- Strong testing discipline with comprehensive test coverage
- Systems thinking approach to software design
- Understanding of failure modes, edge cases, and observability