Overview: Our client, a growing, innovative technology solutions company is seeking a Java Software Engineer to grow their team! This position is a 6 month contract to hire opportunity.
This is a 100% REMOTE role. This Java Software Engineer must be comfortable in a “Camera- On” work environment and thrive in a high collaborative team dynamic, eager to share their ideas!
Our client was built on the core belief that technology can transform the mortgage industry by streamlining processes, reducing costs, and improving the customer experience. The team includes seasoned mortgage industry professionals, data scientists, and technology experts who provide customizable solutions to our clients’ mortgage technology needs. They are committed to designing and delivering cutting-edge products and services that enable our clients to Level Up.
Job Summary:
The Software Engineer II is responsible for analyzing, designing, developing, modifying writing, editing and implementing software programming applications.
Essential Job Functions:
Develop and maintain Java-based applications using Java 11 and 17.
Design and implement microservices architecture using Spring Boot.
Work with MongoDB for data storage and management.
Develop and manage cloud-based applications using AWS services like Lambda, ECS, CodePipeline, and Amazon MQ.
Be comfortable writing infrastructure as code using Terraform.
Write clean, testable code and perform unit testing using JUnit.
Conduct code analysis and quality assurance using SonarQube.
Design and develop scalable and efficient microservices using Spring Boot.
Implement RESTful services and APIs as part of the microservices architecture.
Collaborate with the team to decompose existing monolithic applications into microservices.
Ensure continuous integration and continuous delivery (CI/CD) of microservices with tools like Jenkins, Git, and Docker.
Work with container orchestration technologies like ECS or Docker for deploying microservices.
Implement service discovery and load balancing in a microservices ecosystem.
Manage inter-service communication and fault tolerance using patterns like Circuit Breaker and API Gateway.
Maintain regular and punctual attendance
Develop and maintain high-quality web applications with the latest React features, including Hooks, Context API.
Implement dynamic routing with React Router.
Create reusable components and front-end libraries for future use.
Work with modern front-end development tools like Vite, ESLint, and npm/yarn.
Collaborate with backend developers and UI/UX designers to ensure the technical feasibility of UI/UX designs.
Stay current with emerging trends and updates in the React ecosystem.
Implement and maintain unit tests using testing frameworks like Jest and React Testing Library to ensure the reliability and robustness of React components.
Integrate and utilize code quality and scanning tools such as SonarQube or ESLint to maintain high standards of code quality.
Continuously evaluate and improve existing tests and testing practices to cover edge cases and prevent regressions.
Collaborate with the development team to integrate unit testing into CI/CD pipelines for automated testing and deployment.
Education and/or Experience:
Bachelor’s degree in computer science, Information Technology, or a related field.
Two (2) + years of experience in Java and Spring Boot, specifically in building enterprise applications.
Proficiency in Java.
Knowledge of containerizing applications with Docker.
Experience with MongoDB and Spring Data MongoDB library.
Proven track record in implementing microservices architecture and BPM integration.
Experience as a full-stack engineer in AWS cloud environments.
Proven ability to deploy and manage applications on AWS.
Experience in optimizing business rules and automated testing.