Python Microservices Developer
Job Description
Design, implement, and optimize generative AI models using frameworks like TensorFlow, PyTorch, or JAX, including architectures like Generative Adversarial Networks (GANs), Variational Autoencoders (VAEs), and Large Language Models (LLMs).
Design and deploy efficient, self-contained microservices using Python 3.x and modern web frameworks (FastAPI, Flask, or Django).
Build and maintain RESTful APIs and GraphQL endpoints for seamless communication between services and front-end applications.
Work with both relational (PostgreSQL, MySQL) and NoSQL (MongoDB, Redis) databases. Implement database-per-service patterns and ensure data consistency.
Implement message queues and event-driven architecture using Kafka, RabbitMQ, or Celery.
Containerize microservices using Docker and orchestrate them utilizing Kubernetes.
Write comprehensive unit and integration tests.
Configure logging and monitoring tools (Prometheus, Grafana, ELK stack) to track service health.
Select appropriate datasets and data representation methods.
Extend existing machine learning libraries and frameworks.
Train systems and retrain as necessary.
Skills Required
- Overall 5 years of experience.
- 3 years of professional software engineering experience, with a heavy focus on Python-based microservices architecture.
- 2 years of hands-on experience with asynchronous Python frameworks like FastAPI or aiohttp.
- Strong proficiency in SQL/NoSQL integration, including ORMs like SQLAlchemy.
- Familiarity with cloud environments (AWS, Azure, or GCP) and infrastructure-as-code principles.
- Solid understanding of distributed system design patterns (e.g., CQRS, Event Sourcing, Circuit Breakers).
- Experience with Chat, IVR, Banking (a plus).
- Google Cloud (GCP) knowledge.