Senior Python Developer – Job Description
Job Summary
We are looking for a highly experienced Senior Python Developer with 13+ years of software development experience to design, develop, and maintain scalable, high-performance applications. The ideal candidate should have strong expertise in Python, backend development, API design, databases, cloud technologies, and modern software engineering practices.
The candidate will work closely with architects, business analysts, DevOps engineers, QA teams, and other stakeholders to deliver robust enterprise-level solutions.
Key Responsibilities
- Design, develop, test, and maintain scalable Python applications and backend services.
- Develop clean, reusable, maintainable, and efficient Python code.
- Build and integrate RESTful APIs and microservices.
- Participate in application architecture, technical design, and solution development.
- Analyze business and technical requirements and translate them into scalable solutions.
- Develop high-performance applications capable of handling large-scale data and transactions.
- Work with relational and NoSQL databases and optimize queries and database performance.
- Implement authentication, authorization, security, logging, and error-handling mechanisms.
- Perform code reviews and establish coding standards and best practices.
- Troubleshoot complex production issues and perform root-cause analysis.
- Collaborate with DevOps teams on CI/CD, automation, deployment, and cloud infrastructure.
- Develop unit, integration, and automated tests to ensure application quality.
- Mentor junior and mid-level developers and provide technical leadership.
- Participate in Agile/Scrum ceremonies, sprint planning, and technical discussions.
- Prepare technical documentation and contribute to architectural and design decisions.
Required Technical Skills
Python
- 8+ years of hands-on experience with Python development, with 13+ years of overall software development experience.
- Strong knowledge of Python 3.x, object-oriented programming, data structures, algorithms, and design patterns.
- Experience with Python frameworks such as Django, Flask, and/or FastAPI.
- Strong understanding of Python packaging, virtual environments, dependency management, and performance optimization.
- Experience with asynchronous programming using AsyncIO is preferred.
API & Backend Development
- Strong experience developing RESTful APIs and microservices.
- Experience with API authentication and authorization such as OAuth2, JWT, and RBAC.
- Knowledge of API gateways, service-to-service communication, and distributed systems.
- Experience with JSON, XML, HTTP/HTTPS, and API integration.
Databases
- Strong experience with relational databases such as:
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Experience with NoSQL databases such as MongoDB, DynamoDB, or Redis.
- Strong SQL skills, query optimization, indexing, and database design.
Cloud & DevOps
- Experience working with at least one major cloud platform:
- AWS
- Azure
- Google Cloud Platform
- Experience with Docker and Kubernetes.
- Strong understanding of CI/CD pipelines using tools such as Jenkins, GitLab CI, GitHub Actions, or Azure DevOps.
- Experience with Git-based source control and branching strategies.
- Knowledge of infrastructure automation using Terraform or similar tools is a plus.
Testing & Quality
- Experience with PyTest, unittest, or equivalent Python testing frameworks.
- Experience developing unit, integration, and API tests.
- Familiarity with test automation and code-quality tools.
- Strong understanding of debugging, profiling, and performance testing.
Additional Skills
- Strong understanding of microservices architecture, distributed systems, and event-driven architecture.
- Experience with messaging technologies such as Kafka, RabbitMQ, or AWS SQS/SNS.
- Knowledge of Linux/Unix environments and shell scripting.
- Experience with monitoring and logging tools.
- Knowledge of Agile/Scrum methodologies.
- Strong analytical and problem-solving skills.
- Excellent communication and stakeholder-management abilities.
Education
- Bachelor''s or Master''s degree in Computer Science, Information Technology, Engineering, or a related field.
- Equivalent professional experience may be considered.
Preferred Qualifications
- Experience leading technical teams or serving as a Tech Lead/Senior Developer.
- Experience in enterprise-scale application development.
- Strong experience with cloud-native application development.
- Exposure to AI/ML integration, data engineering, or GenAI applications is a plus.
- Experience working in large-scale Agile environments.
Ideal Candidate Profile
- 13+ years of overall IT/software development experience
- Strong hands-on Python development experience
- Excellent backend/API and microservices expertise
- Strong database and SQL knowledge
- Cloud and DevOps experience
- Ability to independently own complex technical modules
- Strong leadership, mentoring, communication, and problem-solving skills