Job Description
Do you have the ability to put together unique cutting-edge customer facing solutions that increase business value and customer engagement by leveraging sound design principles and that are data driven? Do you have a unique combination of deep technical knowledge, business acumen and strong interpersonal skills to help influence and drive results across a diverse organization.
American Express is embarking on an exciting digital transformation driven by an energetic team of high performers. This group is nimble and creative with the power to shape our Technology and Product roadmap. If you have the talent and desire to deliver innovative products and services at a rapid pace, serving our customers seamlessly across the globe through various channels, join our team!
We are looking for a great software developer who understands the fundamentals of web and is good in Java. Your primary focus will be on working with the architects and engineers in the organization to uplift web applications to use latest backend server technologies on platforms such as Spring Boot, Drop Wizard, Vertx in developing web applications impacting millions of customers.
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
- 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
- Bring a culture of innovation, ideas, and continuous improvement
- Challenging status quo, demonstrate risk taking, and implement creative ideas
- 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
- Embrace emerging standards while promoting best practices and consistent framework usage.
- 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 API's.
- Design and build integration components and interfaces in collaboration with Senior Engineers, Architects and Infrastructure Engineers as necessary.
- Demonstrate a passion for continuous learning and willingness to adopt new technologies.