Senior Software Engineer - Java
Job Summary:
We are seeking a highly skilled and experienced Senior Software Engineer with a strong background in Java development to join our dynamic team. The ideal candidate will have at least 7 years of hands-on experience in designing, developing, and maintaining scalable and secure enterprise applications. Candidates should have a passion for problem-solving, innovation, and leveraging AI-powered tools for productivity enhancements.
Who You Are:
You are passionate about technology and thrive on solving complex problems. Optimizing the JVM for performance or reducing API latency excites you. You enjoy discussing design patterns, algorithms, and the best approaches to engineering challenges. A great day for you involves tackling a tough system bug or exploring a new feature enhancement. You foster a collaborative mindset, valuing and celebrating well-crafted solutions—whether they originate from you or a colleague.
Key Responsibilities:
- Design, develop, and maintain robust Java-based applications.
- Work with SQL and NoSQL database design, optimization, and management.
- Architect, develop, and maintain scalable Java applications, with a focus on microservices and RESTful API design.
- Collaborate with cross-functional teams to understand business requirements and deliver high-quality solutions.
- Write clean, efficient, and well-documented code following best practices and coding standards.
- Troubleshoot, debug, and resolve application performance issues.
- Contribute to system architecture decisions and technical roadmaps.
- Stay up-to-date with emerging trends in Java development, API Gateways, cloud technologies, and Gen AI tools.
- Participate in code reviews and mentor junior developers.
- Support production environments and customer support teams with triage and resolution of production incidents.
Required Qualifications:
- Bachelor’s degree in Computer Science, Software Engineering, or equivalent work experience.
- 7+ years of hands-on experience in Java.
- Passion for engineering and designing high-quality code based on design patterns that result in efficient, maintainable code.
- Solid understanding of RESTful APIs, microservices, and cloud-native application development.
- Strong debugging and troubleshooting skills.
Nice-to-Have Skills:
- Expertise in Spring, Spring Boot.
- Experience writing and optimizing complex SQL queries.
- Experience with NoSQL data systems.
- Familiarity with API Gateways for managing and securing APIs.
- Proficiency in AWS services such as EC2, S3, Lambda, RDS, or similar cloud based services (Azure, GCP).
- Experience with containerization tools like Docker/Kubernetes.
- Hands-on experience with AI-powered coding tools for improved development efficiency.