Senior Staff Engineer, Python

Nagarro
Summary
Join Nagarro, a Digital Product Engineering company, as a seasoned software engineer with 10+ years of experience. You will leverage your expertise in Python, Node.js, and various frameworks to design, develop, and maintain scalable and efficient software solutions. Responsibilities include writing high-quality code, providing technical guidance, and collaborating with cross-functional teams. You will work with microservices architecture, cloud platforms (Azure/AWS), and containerization technologies (Docker, Kubernetes). The ideal candidate possesses strong analytical and problem-solving skills, excellent communication abilities, and a commitment to staying current with technological advancements. This role offers the opportunity to contribute to innovative projects and work within a dynamic and non-hierarchical environment.
Requirements
- Total experience: 10+ years
- Strong experience with Python and its frameworks (Django, Flask, FastAPI)
- Experience with Node.js
- Strong understanding of Object-Oriented Programming (OOP) and Functional Programming
- Expertise in design patterns and distributed architecture
- Proven experience in designing, deploying, implementing, and maintaining software solutions
- Good experience in Microservices architecture and building scalable, distributed applications
- Ability to provide technical guidance and mentorship to the team
- Experience working with at least one cloud platform (Azure / AWS)
- Strong knowledge of infrastructure solutions like Docker and Kubernetes (K8s)
- Experience with unit testing frameworks like pytest
- Familiarity with CI/CD setup and tools for efficient deployment processes
- Strong analytical and problem-solving skills
- Excellent communication and collaboration abilities to work effectively within cross-functional teams
- Bachelorโs or masterโs degree in computer science, Information Technology, or a related field
Responsibilities
- Write and review high-quality, maintainable code
- Understand client business use cases and technical requirements, translating them into elegant and scalable technical designs
- Design, deploy, implement, and maintain scalable and efficient software solutions
- Provide technical guidance and mentorship to the team, ensuring adherence to best practices and high-quality code standards
- Develop backend solutions using Python and frameworks like Django, Flask, FastAPI
- Design and develop Microservices-based architectures for scalable and distributed applications
- Utilize cloud platforms such as Azure or AWS to implement cloud-based architectures
- Leverage infrastructure tools like Docker and Kubernetes (K8s) to build and maintain robust deployment environments
- Set up and maintain CI/CD pipelines for seamless integration and deployment
- Stay informed about the latest technology trends and incorporate them into software development practices
- Collaborate with cross-functional teams to deliver innovative and reliable solutions
- Analyze and solve complex technical problems efficiently, ensuring stability and performance of applications