Technical Lead – Backend Systems
Posted Updated
Description
We are seeking a highly experienced and hands-on Technical Lead – Backend Systems with 10+ years of backend engineering experience to own backend architecture and system design while actively contributing to development. The ideal candidate will design, build, and evolve distributed backend systems with a strong focus on scalability, resilience, performance, and long-term maintainability. This role requires strong architectural expertise, deep technical execution capability, and proven leadership in driving complex technical decisions.
Key Responsibilities
- 10+ years of backend or software engineering experience.
- Minimum 3+ years of production experience with FastAPI.
- Design end-to-end backend systems with a focus on scalability, resilience, and maintainability.
- Define service boundaries, data ownership, and communication patterns across systems.
- Select and implement appropriate architecture patterns such as modular monoliths, microservices, event-driven systems, layered and hexagonal architectures.
- Drive trade-off decisions balancing performance, cost, and system complexity.
- Prepare architecture diagrams, ADRs, data flow diagrams, and detailed technical design documentation.
- Design and develop high-performance backend services using Python and FastAPI.
- Build and maintain RESTful APIs and asynchronous services.
- Handle concurrency, background processing, and IO-intensive workloads efficiently.
- Enforce clean code principles, SOLID practices, and high testability standards.
- Lead code reviews focusing on correctness, performance, and long-term system design.
- Design and optimize relational database schemas in PostgreSQL or MySQL including indexing, query optimization, transactions, and isolation levels.
- Design data models for NoSQL systems such as MongoDB, DynamoDB, or Redis.
- Select appropriate data storage solutions based on access patterns and consistency requirements.
- Manage database migrations, versioning strategies, and backward compatibility.
- Architect distributed systems capable of handling partial failures, retries, timeouts, idempotency, and horizontal scaling.
- Work with message brokers such as Kafka, RabbitMQ, or SQS for asynchronous communication.
- Work within cloud environments such as AWS, Azure, or GCP.
- Containerize services using Docker and manage deployments through CI/CD pipelines.
- Collaborate with DevOps and SRE teams on observability, logging, and monitoring strategies.
- Act as the technical owner of backend systems and mentor senior and mid-level engineers.
- Collaborate with product and business stakeholders to translate requirements into scalable technical solutions.
Nice to Have
- Experience migrating monolith applications to microservices or evaluating migration strategies.
- Exposure to event-driven or streaming architectures.
- Experience with API gateways, rate limiting mechanisms, OAuth2, and JWT authentication systems.
- Prior experience as Senior Backend Developer, Technical Lead, or Solution Architect.
