Overview
We are seeking a skilled and motivated Lead Software Developer (Python) with 6–8 years of hands-on experience in designing, developing, and deploying Python-based microservices. The ideal candidate should have expertise working with cloud-native architectures using Docker and Kubernetes, and integrating services with Large Language Models (LLMs) via OpenAI APIs. You will lead the design, development, and deployment of scalable services while working in an agile/scrum environment.
Essential Duties and Responsibilities:
- Lead the design and implementation of Python microservices hosted on Kubernetes or Docker environments.
- Develop and maintain python micro-services where communication between microservices uses RabbitMQ
- Design and optimize database schemas; implement data access layers using PostgreSQL and MongoDB.
- Integrate LLM capabilities via OpenAI or similar APIs into microservices.
- Write unit, integration, and system tests; ensure code quality and maintainability.
- Track work progress and maintain up-to-date tasks on Azure Boards (or similar work item tracking systems).
- Manage source code repositories, branching strategies, pull requests, and reviews using Git-based tools (Azure Repos, GitHub, or similar).
- Build, configure, and maintain CI/CD pipelines using Azure Pipelines for automated testing and deployments.
- Participate in Agile ceremonies (sprint planning, stand-ups, retrospectives) and collaborate effectively with cross-functional teams.
- Mentor and guide junior developers on coding standards, best practices, and architecture decisions.
Required experience:
Programming Skills:
- Strong expertise in Python (3.x), with knowledge of best practices for building scalable services.
- Application of proven programming principles and patterns
- Prompt engineering skill to generate code using Cursor, Co-Pilot or similar tools.
Design Skills:
- Strong expertise in OOP with Python.
- Strong expertise in code design /modelling skills using UML or similar tools
Frameworks/Libraries:
- Experience with popular Python frameworks – SQL Alchemy, Alembic
- Experience with building custom python packages.
Containerization & Orchestration: Hands-on experience with Docker, Kubernetes (AKS or self-hosted).
Messaging Systems: Proven experience using RabbitMQ for asynchronous service communication.
Databases:
- Relational: PostgreSQL (schema design, performance tuning).
- NoSQL: MongoDB (data modelling, CRUD operations).
APIs & LLMs: Integration of microservices with LLMs or OpenAI APIs; handling authentication, request/response flows, and prompt engineering basics
In-depth Knowledge and Experience in the following areas:
- High level understanding of following tech stack
- Source control with Git (Azure Repos, GitHub).
- Building and deploying using Azure Pipelines or similar CI/CD tools.
- Familiarity with container registries (ACR, Docker Hub).
- Work item tracking and task management using Azure Boards (or Jira).
- Experience working in Agile/Scrum methodologies, including sprint ceremonies, story point estimation, and continuous delivery.
Additional skills:
- Excellent problem-solving and troubleshooting / debugging skills.
- Strong understanding of RESTful API design principles.
- Familiarity with observability tools (logging, metrics, tracing) is a plus.
- Excellent verbal and written communication skills.
- Ability to lead technical discussions and present solutions effectively.