Tech Lead - Python Engineering
Pune, IndiaFull-TimeLeadSoftware Engineering
Responsibilities
- Technical Leadership: Lead and mentor backend engineers, ensuring best practices in distributed system design, coding, testing, and DevOps.
- Architecture & Design: Own the end-to-end design of scalable, secure, and self-healing distributed systems and APIs.
- Cloud-Native Engineering: Build and operate containerized applications using Python, Docker, Kubernetes, Helm, with GitOps-driven workflows via ArgoCD.
- Distributed Communication: Architect systems with robust service-to-service communication using REST, gRPC, pub/sub, and event-driven messaging (Kafka, RabbitMQ), integrated with service meshes (Istio/Linkerd).
- Scalability & Reliability: Design horizontally scalable, resilient, and fault-tolerant systems with automated recovery, health probes, and graceful degradation.
- Traffic Management & Rate Limiting: Implement API gateways, rate limiting, quotas, and load balancing to protect services and enforce SLAs.
- CI/CD & DevOps: Define and optimize CI/CD pipelines (Jenkins, GitHub Actions, Argo Workflows) with safe deployment strategies (blue-green, canary, rollbacks).
- Database Design & Performance: Design and optimize relational and NoSQL databases, handle sharding/replication, and improve performance with caching (Redis, Memcached).
- Observability: Implement monitoring, logging, and tracing (Prometheus, Grafana, OpenTelemetry, ELK/EFK) for end-to-end visibility.
- Code Quality & Reviews: Set engineering standards, conduct code/design reviews, and ensure delivery of modular, maintainable, production-ready code.
- Collaboration: Work cross-functionally with product managers, DevOps/SRE, and architects to align business needs with technical solutions.
- Problem Solving: Diagnose and resolve performance bottlenecks, scaling issues, and complex failures in distributed systems.
- Innovation: Research emerging backend, cloud-native, and distributed systems technologies; drive adoption of impactful solutions.
- Delivery Ownership: Own technical delivery, availability, and scalability outcomes.
- Knowledge Sharing: Promote design discussions, documentation, and continuous learning within the team.
About You
- Education: B.E./B.Tech in Computer Science/Engineering or equivalent experience.
- Experience: 8–11 years in backend engineering, with expertise in Python and distributed systems.
- Python Expertise: Strong background in building robust APIs and microservices with frameworks like FastAPI, Flask, or Django.
- Distributed Systems: Experience designing and operating distributed services, using service meshes, API gateways, and event-driven messaging (Kafka, RabbitMQ).
- Traffic Management: Hands-on experience implementing rate limiting, throttling, quotas, and load balancing.
- Kubernetes & Containers: Deep understanding of Kubernetes, Docker, Helm, and GitOps with ArgoCD.
- Scalability & Self-Healing: Proven ability to design systems that auto-scale, auto-recover, and degrade gracefully.
- Database Systems: Skilled in schema design, query optimization, replication, partitioning, and database performance tuning.
- System Design: Strong knowledge of distributed architecture patterns (leader election, consensus, CQRS, event sourcing).
- DevOps & CI/CD: Experience with Jenkins, GitHub Actions, GitLab CI, Argo, and observability stacks.
- Collaboration & Leadership: Strong communicator with experience leading teams, mentoring engineers, and partnering with product/DevOps.
- Bonus: Knowledge of Java or Go is an added advantage, especially for working across polyglot distributed systems.
- Mindset: Ownership-driven, proactive, and passionate about building scalable, resilient, and fair-use systems.
