Senior Development Engineer - 3Maino.ai • Mysore, IN
No longer accepting applications
Senior Development Engineer - 3
Maino.ai • Mysore, IN
3 days ago
Job description
Core Responsibilities
Designing and developing the overall architecture of Java applications, including choosing appropriate technologies, frameworks (like Spring Boot, Hibernate, etc.), and architectural patterns (microservices, event-driven architecture, etc.).
Write high-quality, maintainable, and well-tested code. Participate in code reviews, troubleshoot issues, and mentor junior and mid-level team members.
Design, implement, and optimize database schemas, queries, stored procedures, and functions to support application requirements. This includes working with relational databases (e.g., MySQL, PostgreSQL) and potentially NoSQL databases (e.g., MongoDB, Cassandra)
Identifying and resolving performance bottlenecks, optimizing application performance, and ensuring efficient resource utilization.
Working with cloud platforms (like AWS, Azure, or GCP) and containerization technologies (like Docker and Kubernetes) for deployment and management of applications.
Design, develop, and maintain scalable backend systems using Java (Spring Boot) and integrate AI / LLM services. Ensure secure, efficient, and scalable communication between LLM APIs (OpenAI, Google Gemini, Azure OpenAI, etc.) and internal systems.
Work closely with product managers, designers, other developers, and stakeholders to define requirements, design solutions, and ensure successful delivery of software solutions.
Contribute to defining system architecture, integrating data storage solutions, and exploring new technologies and alternatives for architectural review.
Conduct software analysis, programming, testing, and debugging to resolve complex technical issues related to both application logic and database integration.
Implementing and managing caching strategies to improve response times and reduce database load. Choosing appropriate caching strategies (e.g., in-memory caching, distributed caching) based on application requirements. Integrating and managing caching solutions like Redis, Memcached, or Ehcache.
Skills and Experience
A strong foundation in Java programming, including core concepts, advanced topics (like multithreading and JVM internals), and design patterns is essential.
Designing and implementing microservices using Spring Boot and related technologies, ensuring they are scalable, robust, and secure.
Utilizing messaging systems like Kafka or RabbitMQ to implement event-driven architectures, enabling asynchronous communication between services.
In-depth knowledge of database technologies, including schema design, SQL optimization, and experience with specific database systems.
Create and maintain RESTful APIs, and potentially GraphQL APIs, for seamless integration with web and mobile front-end applications. Ensure adherence to best practices in API design, documentation, and implementation.
Implement monitoring solutions (e.g., Prometheus, Grafana) to track service health and performance, and troubleshoot issues in production environments.
Leverage and contribute to the Netflix Open Source Software (OSS) ecosystem, including components like Eureka for service discovery, Hystrix for fault tolerance, and Ribbon for client-side load balancing.
Qualification
6-8 years of experience in software development with a strong focus on Java.
Proven experience as an engineer in large-scale enterprise systems.
Excellent understanding of software design and programming principles.
Strong problem-solving skills and attention to detail.