Key Responsibilities: System Scaling Performance Optimization: Design and implement solutions to scale microservices to handle thousands of requests per second.
Optimize system performance by identifying and mitigating bottlenecks in API calls, database queries, and inter-service communication (e.g., MQTT, REST/HTTP2).
Fine-tune Kubernetes deployments for resource optimization, autoscaling, and load balancing.
Database Management Optimization: SQL Databases: Optimize performance by tuning SQL queries, creating and managing indexes, partitioning data, and optimizing schema design.
Redis: Manage and optimize Redis for high-performance caching and in-memory data storage, implementing strategies like data eviction, sharding, and replication.
Implement database replication, sharding, and failover strategies to ensure high availability and scalability.
Work on performance tuning of read/write operations and improve database query performance by reducing latency and eliminating bottlenecks.
Set up monitoring and alerting on database performance metrics to ensure stability and proactively address potential issues (e.g., slow queries, high memory usage).
Architecture Review Improvement:
Conduct architecture assessments for microservices and recommend optimizations.
Identify areas for improvement in horizontal scaling, fault tolerance, and service resiliency.
Monitoring Observability: Set up and enhance performance monitoring tools (e.g., Prometheus, Grafana) for real-time metrics tracking.
Build and improve logging and tracing systems to diagnose performance issues across microservices.
Capacity Planning Load Testing: Develop and execute strategies for capacity planning and forecasting for future load requirements.
Design and implement comprehensive load tests using tools standard tools.
- Required Skills Qualifications:
- Microservices Architecture:
Strong experience in optimizing microservices-based applications.
Familiarity with API gateways, service discovery, and inter-service communication patterns.
- Kubernetes Containerization:
Deep expertise in Kubernetes (Helm, kubectl, operators, etc.), containerization (Docker), and managing large-scale Kubernetes clusters.
Knowledge of Kubernetes autoscaling strategies (HPA, VPA) and load balancing mechanisms.
Hands-on experience with SQL databases (MySQL, PostgreSQL), and in-memory data stores (Redis).
Strong knowledge of indexing, query optimization, caching strategies, and replication for performance improvement.
Experience with container orchestration on private environments.
Familiarity with autoscaling, and distributed systems.
Experience with messaging protocols like MQTT, AMQP, and real-time communication protocols.
- Performance Monitoring Observability:
Proficiency with observability tools like Prometheus, Grafana, Jaeger, or Zipkin for monitoring and tracing.
Experience with ELK stack or similar logging tools.
- Load Testing Benchmarking:
Experience in load testing, stress testing, and benchmarking systems using tools such as JMeter, Locust etc
Database Administration, Microservices Architecture, SQL, Redis, Load Testing, Docker, Kubernetes, Performance Monitoring, Messaging protocols, container orchestration
- Required Qualification/Education
Bachelor of Engineering - Bachelor of Technology (B.E./B.Tech.)
Job Types: Full-time, Permanent
Pay: 2,208,
- 46 - 2,953,339.39 per year
Application Question(s): - Hands-on experience with SQL databases (MySQL, PostgreSQL), and in-memory data stores (Redis)
Experience in load testing, stress testing, and benchmarking systems using tools such as JMeter, Locust
Experience:
- Microservices Architecture: 8 years (Preferred)
Kubernetes and Docker: 8 years (Preferred)- container orchestration : 7 years (Preferred)
messaging protocols like MQTT, AMQP: 7 years (Preferred)
Work Location: In person