Full Job Description
Job Summary
We are seeking an experienced Senior Java Software Engineer with a strong background in software development and a passion for delivering high-quality, scalable software solutions. The role will focus on designing, developing, and deploying distributed enterprise applications while contributing to new features and improving existing applications. The ideal candidate will have advanced Java expertise along with experience in microservices, AWS, Kubernetes, Kafka, NoSQL databases, and AI/ML implementation.
Key Responsibilities
• Design, develop, and deploy multi-tier, distributed web applications in an enterprise environment.
• Create and maintain RESTful APIs and collaborate with development teams to ensure effective system integration.
• Develop and maintain Java-based microservices using Spring, Spring Data, Spring JPA, and Spring Web Services.
• Work with NoSQL databases, including Cassandra, to effectively manage and model data.
• Develop and optimize low-latency service APIs and data aggregation pipelines.
• Utilize Java, JPA, and Hibernate frameworks to build scalable applications.
• Implement best practices for Test Driven Development (TDD) and Continuous Integration (CI).
• Design and implement solutions for complex technical problems and production issues.
• Debug applications efficiently and develop scalable solutions to address technical challenges.
• Utilize AWS services to deploy, maintain, and support reliable and scalable applications.
• Work with AWS services including S3 and EC2 as part of cloud-based application development and deployment.
• Develop and maintain CI/CD processes using GitHub and related tools.
• Collaborate with engineering teams to deliver new features and improve existing applications.
• Contribute to application reliability, scalability, performance, and maintainability.
Required Qualifications
• 10+ years of experience as a Java Software Engineer.
• Bachelor's or Master's degree in Computer Science, Engineering, or a related field.
• Advanced Java development experience, including Java 11.
• Strong programming and object-oriented development skills.
• Experience developing REST-based web services and RESTful APIs.
• Strong experience with Java microservices.
• Experience with Redis.
• Experience with Apache Kafka and event-driven architectures.
• Experience with Spring, including Spring Data, Spring JPA, and Spring Web Services.
• Experience with AWS, including AWS S3 and AWS EC2.
• Experience with CI/CD and GitHub.
• Experience with Docker and Kubernetes.
• Experience with NoSQL databases, including Cassandra.
• Experience with HTML, CSS, and JavaScript.
• Experience implementing AI/ML solutions.
• Strong understanding of distributed systems and enterprise application development.
• Experience developing low-latency and scalable applications.
• Strong debugging, problem-solving, and technical design skills.
• Experience with Test Driven Development and Continuous Integration.
• Candidate must be local to Austin, TX or Sunnyvale, CA.
• Ability to participate in a mandatory onsite interview at the client location in Austin, TX or Sunnyvale, CA.