As a Software Engineer II at ICE Mortgage Technology, you will play a key role in contributing to multiple shared services within the technology organization. Your primary focus will be on analyzing, designing, developing, and unit testing software applications with high quality and on schedule, including critical Web services for internal and external applications. You will work with state-of-the-art technologies and best practices to deliver high-quality implementations. Collaboration with various teams both within and outside the development team will be essential to achieve high-quality and predictable results. **Key Responsibilities:**
Build scalable services and applications optimized for the best customer experience, considering scale, performance, security, and availability. - Design, architect, and write software components independently. - Handle activities related to builds and deployments. - Create design documentation for new software development and subsequent versions. - Identify opportunities for application improvement and optimization. - Diagnose complex developmental and operational problems, recommending upgrades and improvements at a component level. - Collaborate with global stakeholders and business partners for product delivery. - Follow company software development processes and standards. - Collaborate effectively with team members. - Provide necessary support and assistance for production outages. **Qualifications Required:**
Bachelor's or master's degree in computer science, Engineering, or a related field. - 3+ years of software product development experience. - Solid experience in object-oriented design and development with Java languages. - Strong knowledge of high-scale, multi-tenant Web service development, including REST/JSON and Microservice patterns. - Experience with Spring Boot and similar application frameworks. - Proficiency in database concepts and databases, preferably PostgreSQL or Global Aurora. - Experience in large-scale, multi-tenant microservice deployments utilizing REST/JSON. - Ability to deliver high-quality code on schedule, communicate effectively with various teams, and follow agile methodologies. - Familiarity with UI development frameworks like ReactJS is preferred. - Exposure to public cloud platforms like AWS, GCP, or Azure, with a preference for AWS. - Understanding of security concerns for web-based applications. - Proficiency in development environments, IDEs, web & application servers, GIT, Continuous Integration, unit-testing tools, Kafka, AWS SQS, containerization, and container orchestration tools like Docker, ECS, and Kubernetes. - Familiarity with defect management tools, Agile methodology, and Continuous Integration tools like Jenkins or Hudson. - Desirable technical knowledge in Kubernetes, Docker, and a passion for problem-solving. ICE Mortgage Technology is a leading cloud-based platform provider for the mortgage finance industry, enabling lenders to originate more loans, reduce origination costs, and ensure compliance, quality, and efficiency. Join our team of motivated and results-oriented individuals to contribute to the next level of mortgage software solutions development. As a Software Engineer II at ICE Mortgage Technology, you will play a key role in contributing to multiple shared services within the technology organization. Your primary focus will be on analyzing, designing, developing, and unit testing software applications with high quality and on schedule, including critical Web services for internal and external applications. You will work with state-of-the-art technologies and best practices to deliver high-quality implementations. Collaboration with various teams both within and outside the development team will be essential to achieve high-quality and predictable results. **Key Responsibilities:**
Build scalable services and applications optimized for the best customer experience, considering scale, performance, security, and availability. - Design, architect, and write software components independently. - Handle activities related to builds and deployments. - Create design documentation for new software development and subsequent versions. - Identify opportunities for application improvement and optimization. - Diagnose complex developmental and operational problems, recommending upgrades and improvements at a component level. - Collaborate with global stakeholders and business partners for product delivery. - Follow company software development processes and standards. - Collaborate effectively with team members. - Provide necessary support and assistance for production outages. **Qualifications Required:**
Bachelor's or master's degree in computer science, Engineering, or a related field. - 3+ years of software product development experience. - Solid experience in object-oriented design and development with Java languages. - Strong knowledge of high-scale, multi-tenant Web service development, including R