Job Description
We are seeking a Senior Python Backend Developer with 5+ years of experience to design, develop, and optimize backend services for high-performance web applications. The role requires expertise in Python frameworks, NoSQL databases, and Linux-based environments, with experience in modern backend architectures, caching, and cloud deployments.
Key Responsibilities
- Backend Development:
- Design, develop, and maintain RESTful and asynchronous APIs using FastAPI, Flask, Django, or similar frameworks.
- Write clean, efficient, and scalable Python code for high-performance applications.
- Develop microservices-based architectures and integrate third-party APIs.
- Database & Caching:
- Design and optimize MongoDB (or similar NoSQL databases) schemas, queries, indexing, aggregation pipelines, and replication strategies.
- Utilize Redis (or similar in-memory data stores) for caching, rate limiting, session management, and real-time data processing.
- Security & Authentication:
- Implement authentication and authorization mechanisms (JWT, OAuth2, OpenID Connect).
- Ensure API security best practices, including data encryption and access control.
- Cloud & DevOps:
- Deploy and maintain backend services in Linux/Ubuntu environments.
- Containerize applications with Docker and orchestrate using Kubernetes.
- Collaborate on CI/CD pipelines and automated deployments.
- Experience with AWS, GCP, or Azure cloud platforms is a plus.
- Collaboration & Integration:
- Work closely with frontend developers (Angular, React, or Vue.js) to ensure seamless API integration.
- Participate in code reviews, technical discussions, and documentation.
- Performance & Optimization:
- Monitor and optimize API performance, caching, and scalability strategies.
- Debug and troubleshoot backend issues, ensuring reliability and efficiency.
Required Skills & Experience
- 5+ years of Python backend development experience.
- Expertise in FastAPI, Flask, Django, or Tornado.
- Strong experience with MongoDB or equivalent NoSQL databases.
- Experience with Redis or similar in-memory data stores.
- Strong understanding of RESTful API design, WebSockets, and asynchronous programming.
- Experience working in Linux/Ubuntu environments, including shell scripting.
- Familiarity with Docker, Kubernetes, and CI/CD pipelines.
- Knowledge of cloud platforms: AWS, GCP, or Azure.
- Basic understanding of frontend frameworks (Angular, React, Vue.js) for API integration.
- Strong problem-solving, debugging, and performance optimization skills.
- Excellent communication and collaboration skills in agile development teams.
Nice-to-Have
- Experience with microservices at scale.
- Hands-on experience with event-driven architectures or message brokers.
- Familiarity with unit testing and automated testing frameworks.