We are seeking an experienced Senior Java Developer with 7+ years of software development experience to design, develop, enhance, and support enterprise applications and integrations. This role requires strong hands-on Java development experience with expertise in Spring Boot and Spring Batch, along with front-end development experience using Angular and React.js and working knowledge of Docker and Kubernetes.
The ideal candidate is a strong technical contributor who can work independently across both back-end and front-end technologies, collaborate with cross-functional teams, troubleshoot complex application issues, and deliver scalable, reliable solutions within an Agile development environment.
Design, develop, test, deploy, and support enterprise applications using Java and Spring Boot.
Develop and maintain batch-processing solutions using Spring Batch, including high-volume data processing and scheduled jobs.
Design and develop RESTful APIs, microservices, and enterprise application integrations.
Develop scalable, maintainable, and reusable application components following established development standards and design patterns.
Develop and enhance web-based user interfaces using Angular and React.js.
Integrate Angular and React applications with REST APIs and back-end services.
Troubleshoot and resolve complex application, integration, data, UI, and performance issues.
Participate in technical design discussions and provide recommendations on application architecture and implementation approaches.
Perform code reviews and ensure solutions follow development, security, performance, and coding standards.
Develop and maintain automated unit and integration tests.
Support containerized applications using Docker and assist with deployments and troubleshooting in Kubernetes environments.
Work closely with Business Analysts, QA, Product Owners, architects, and other development teams to translate business requirements into technical solutions.
Participate in Agile ceremonies, estimation, sprint planning, and delivery commitments.
Support production implementations, troubleshooting, and post-deployment activities.
Identify opportunities to improve application performance, reliability, maintainability, and development processes.
Provide technical guidance and mentorship to other developers as needed.
Must Haves:
7+ years of professional software development experience, with significant hands-on Java development experience.
Strong proficiency in Java and object-oriented design and development.
Strong hands-on experience with Spring Boot.
Experience developing and supporting batch-processing applications using Spring Batch.
Experience developing REST APIs, microservices, and enterprise application integrations.
Experience with Angular and modern front-end development concepts.
Experience with or working knowledge of React.js.
Experience integrating front-end applications with RESTful services and APIs.
Experience with relational databases, SQL, and data-access frameworks.
Understanding of application security, exception handling, logging, monitoring, and performance optimization.
Experience with source control and CI/CD practices.
Basic working knowledge of Docker, including building and working with containerized applications.
Basic working knowledge of Kubernetes, including application deployments, pods, configuration, and troubleshooting.
Strong troubleshooting, analytical, and problem-solving skills.
Ability to work independently while collaborating effectively across technical and business teams.
Strong written and verbal communication skills.
Pluses:
Experience developing applications using a microservices architecture.
Experience with modern versions of Angular and component-based UI development.
Experience with cloud or enterprise container platforms.
Experience with automated CI/CD pipelines and tools such as GitHub Actions or similar technologies.
Experience supporting high-volume enterprise or retail applications.
Familiarity with API management, messaging, and enterprise integration technologies