Qualifications BS or MS degree in computer science, computer engineering, or other technical discipline or equivalent 3-4 years of work experience 7+ years experience working in Java and able to demonstrate good Java knowledge Able to demonstrate good web fundamentals and HTTP protocol knowledge Good attitude, communication, willingness to learn and collaborate 5+ yrs development experience in developing Java applications in an enterprise setting. Experience working with Java 11 and above is a plus 5+ yrs experience developing java applications in frameworks such as Spring, Spring Boot, Drop wizard is a plus 2-3+ yrs recent experience working in Javascript on Node stack is a plus 3+ years Experience with Test Driven Development (TDD) / Behavior Driven Development (BDD) practices, unit testing, functional testing, system integration testing, regression testing, GUI testing, web service testing, and browser compatibility testing, including frameworks such as Selenium, WebDriverIO, Cucumber, JUnit, Mockito Experience with continuous integration and continuous delivery environment 3-4 yrs working in an Agile or SAFe development environment Solid Understanding of distributed systems Proven experience building scalable web application using Java
Responsibilities include, but not limited to: Serving as a core member of an agile team that drives user story analysis and elaboration, designs and develops responsive web applications using the best engineering practices
Performing hands-on software development, typically spending most of time actually writing code and unit tests, doing proof of concepts, conducting code reviews, and testing in ongoing sprints Performing ongoing refactoring of code, and delivering continuous improvement Developing deep understanding of integrations with other systems and platforms within the supported domains Manage your own time, and work well both independently and as part of a team. Work closely with product managers, back-end and other front-end engineers to implement versatile solutions to tricky web development problems Work with Product Owners to define requirements for new features and plan increments of work. Drive automation and ensure automated test scripts are completed for new features in partnership with QA Engineers. Perform all technical aspects of software development for assigned applications, including developing prototypes, writing new code and creating APIs. Design and build integration components and interfaces in collaboration with Senior Engineers, Architects and Infrastructure Engineers as necessary.