Architect and Develop Java Applications : Design and implement scalable, robust Java application architectures using frameworks like Spring Boot and Hibernate, and patterns such as microservices or event-driven architecture.
Code Quality and Mentorship : Write clean, maintainable, and well-tested code. Conduct code reviews, debug complex issues, and guide junior and mid-level developers.
Database Management : Design and optimize database schemas, queries, stored procedures, and functions for relational (e.g., MySQL, PostgreSQL) and NoSQL (e.g., MongoDB, Cassandra) databases to meet application needs.
Performance Optimization : Identify and resolve performance bottlenecks, ensuring efficient resource utilization and optimal application performance.
Cloud and Containerization : Deploy and manage applications on cloud platforms (e.g., AWS, Azure, GCP) using containerization technologies like Docker and Kubernetes.
AI / LLM Integration : Develop and maintain scalable backend systems with Spring Boot, integrating AI / LLM services (e.g., OpenAI, Google Gemini, Azure OpenAI) for secure and efficient communication.
Collaboration : Partner with product managers, designers, and stakeholders to define requirements, design solutions, and deliver high-quality software.
System Architecture Contribution : Contribute to system architecture design, integrate data storage solutions, and evaluate emerging technologies for architectural enhancements.
Technical Problem Solving : Perform software analysis, programming, testing, and debugging to address complex application and database integration challenges.
Caching Strategies : Implement and manage caching solutions (e.g., Redis, Memcached, Ehcache) to enhance response times and reduce database load, selecting appropriate strategies based on requirements.
Skills and Experience :
Java Expertise : Strong proficiency in Java, including core concepts, advanced topics (e.g., multithreading, JVM internals), and design patterns.
Microservices Development : Proven experience designing and implementing scalable, secure microservices using Spring Boot.
Event-Driven Architecture : Hands-on experience with messaging systems like Kafka or RabbitMQ for asynchronous communication.
Database Proficiency : Deep knowledge of database technologies, including schema design, SQL optimization, and experience with relational and NoSQL databases.
API Development : Expertise in creating and maintaining RESTful APIs (and optionally GraphQL APIs), adhering to best practices in design, documentation, and implementation.
Monitoring and Troubleshooting : Experience with monitoring tools (e.g., Prometheus, Grafana) to track service health and resolve production issues.
Netflix OSS Ecosystem : Familiarity with Netflix OSS tools like Eureka (service discovery), Hystrix (fault tolerance), and Ribbon (client-side load balancing).
Qualifications :
6-8 years of software development experience with a focus on Java.
Proven track record as an engineer in large-scale enterprise systems.
Strong understanding of software design and programming principles.
Exceptional problem-solving skills and attention to detail.