Lead Software Engineer - Back End Java or Python
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 the Consumer and Community Banking, you are an integral part of an agile team that works to enhance, build, and deliver trusted market-leading technology products in a secure, stable, and scalable way. As a core technical contributor, you are responsible for conducting critical technology solutions across multiple technical areas within various business functions 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.
- See that our data is written and read in a way that's optimized for our needs.
- Keep us up to date by continuously updating our technologies and patterns.
- Drives team adoption of enterprise-authorized AI-assisted engineering practices within the work environment to improve code quality, delivery speed, and operational outcomes (e.g., AI-assisted code review/refactoring, test strategy acceleration, incident/root-cause analysis support), while establishing consistent validation standards (secure coding, peer review, automated testing) and promoting reuse of effective patterns across the team.
Applies knowledge of tools within the Software Development Life Cycle toolchain, including enterprise-authorized AI-assisted development and automation capabilities, to improve the value realized by automation.
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.
- Hands-on experience designing and building enterprise-scale, high-volume data processing applications using SQL and NoSQL databases.
- Demonstrated experience leading effective use of approved AI-assisted software development tools (e.g., for coding, code review, test acceleration, troubleshooting) with the ability to set team expectations for validating AI outputs for correctness, performance, and security.
- Strong understanding of responsible AI use in engineering workflows, including data sensitivity considerations, secure handling of inputs/outputs, and adherence to resiliency and security expectations; experience coaching engineers on safe, compliant adoption within delivery practices.
- Understanding with different kinds of data stores (including relational data stores)
- Seasoned with operating, supporting and the security of mission critical software applications.