As a member of our Software Engineering Group you will dive head-first into creating innovative solutions that advance businesses and careers. You’ll join an inspiring and curious team of technologists dedicated to improving the design, analytics, development, coding, testing and application programming that goes into creating high quality software and new products. You’ll be tasked with keeping the team and other key stakeholders up to speed on the progress of what’s being developed. Coming in with an understanding of the importance of end-to-end software development-such as Agile frameworks-is key. And best of all, you’ll be working with and sharing ideas, information and innovation with our global team of technologists from all over the world.
- Participate in end-to-end development lifecycle activities of the application, including design, coding, testing and deployment activities.
- Develop SOAP/REST based web services to expose core payment functionality to Chase consumers in a high-volume, high availability application of consumer and business banking. Utilize programming skills to adhere to coding standards, procedures and techniques, while contributing to the technical code base including any required documentation both inside code and in external design specifications.
- Participate in code reviews to ensure that all solutions are aligned to pre-defined architectural specifications, identify/troubleshoot application code-related issues, and review and provide feedback to any required final user documentation.
- Produce comprehensive tests for all developed code. Support and participate in system and integrated testing across sub-systems as the need arises.
- Deliver project milestones on time and within budget.
- Coordinate and collaborate with technical partners for joint application development efforts.
- Research and evaluate alternate solutions and provide recommendations for enhancing the application. Provide technical support for the application, including meeting service level and performance requirements; and diagnosing and evaluating inefficient processes/code.
- As part of the development effort, work with other development teams, testing, operations and architecture groups when changes in technology have cross-impacts across applications; work in concert with the other groups to discuss and address any cross-impacts to the applications.
- Bachelor's degree or equivalent in Computer Science, Engineering (any), or related field.
- 5 years of Java/J2EE application development experience or related experience.
- Knowledge and experience in Agile Methodology.
- Experience performing server-side Java programming in a WebSphere/Tomcat environment is required.
- Experience building SOAP/REST web services using Java is required.
- Demonstrated knowledge of OOP and SOA principles, and design patterns is required.
- Experience working with Spring IOC is required.
- Demonstrated knowledge of J2EE server technologies including XML, JMS, and JAX-WS is required.
- Demonstrated knowledge of Java concurrency and concurrency patterns is required.
- Experience building thread-safe code is required.
- PL/SQL development experience is required.
- Experience working with ORM tools such as iBatis or Hibernate is required.
- Experience working with TDD, code testability standards, and JUnit/Mockito is required.
- Experience working with open source frameworks, such as Apache, Google, or Netflix is required.
- Experience working on High-Volume, High-Availability Transactional applications is required.
- Experience with API and service testing
- Hands on with development and test automation tools/frameworks (e.g. BDD and Cucumber)