Lead Software Engineer
We have an opportunity to impact your career and provide an adventure where you can push the limits of what's possible. As a Lead Software Engineer at JPMorgan Chase within Consumer and Community Banking, you are an integral part of an agile team dedicated to enhancing, building, and delivering trusted, market-leading technology products in a secure, stable, and scalable manner. As a core technical contributor, you will be responsible for implementing critical technology solutions across multiple technical domains within various business functions, all in support of the firm's business objectives.
Job responsibilities
Deliver end-to-end solutions in the form of cloud-native microservices architecture applications leveraging the latest technologies and the best industry practices
Use domain modelling techniques to allow us to build best in class business products
Structure software so that it is easy to understand, test and evolve
Build solutions that avoid single points of failure, using scalable architectural patterns
Develop secure code so that our customers and ourselves are protected from malicious actors
Promptly investigate and fix issues and ensure they do not resurface in the future
Make sure our releases happen with zero downtime for our end-users and promptly
See that our data is written and read in a way that's optimized for our needs
Keep an eye on performance, making sure we use the right approach to identify and solve problems and ensure our systems are reliable and easy to operate
Keep us up to date by continuously updating our technologies and patterns
Support the products you've built through their entire lifecycle, including in production and during incident management
Required qualifications, capabilities and skills
Formal training or certification on software engineering concepts and 5+ years applied experience
Recent hands-on professional experience as a back-end software engineer
Experience in coding in a recent version of the Java programming language
Experience in designing and implementing effective tests (unit, component, integration, end-to-end, performance, etc.)
Experience with cloud technologies and distributed systems, RESTful APIs and web technologies
Knowledge of messaging frameworks
Seasoned with operating, supporting and the security of mission critical software applications
Understanding with different kinds of data stores (including relational data stores)
Hands-on experience designing and building enterprise-scale, high-volume data processing applications using SQL and NoSQL databases