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 JPMorganChase within the Commercial & Investment Bank, 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

  • Designs and develops robust, high-performance, latency-sensitive code; incorporates security requirements; and reviews code written by team members using software engineering best practices.
  • Writes secure, high-quality code and automated tests.
  • Works closely with Product Owners, Solutions Analysts, Technical Architects, and Senior Engineers to define the best technical design and development approach.
  • Translates business requirements into technical solutions, recommends alternative technical and business approaches, and leads engineering efforts to meet ambitious timelines with optimal solutions.
  • Helps refine the technical aspects of epics in collaboration with Solutions Analysts.
  • Produces architecture and design artifacts for complex applications while ensuring design constraints are met by code.
  • Drives architectural reviews, code reviews, and business demos.
  • Assesses compliance, risks, and vulnerabilities to ensure all systems and baselines are operationally sound, performant at scale, and exceed customer expectations.
  • 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.
  • Contributes to the ongoing development of the team, including recruitment, paired programming, peer review, and mentoring.

Required qualifications, capabilities, and skills

  • Formal training or certification on software engineering concepts and 5+ years applied experience
  • Excellent understanding of Java 17+ fundamentals and frameworks such as Spring Boot
  • Strong knowledge of object-oriented programming paradigms, multithreading, messaging technologies, and computer networks
  • Experience with low-latency programming techniques and technologies such as Inter-Process Communication (IPC), memory-mapped files, and ring buffers
  • Experience with gRPC and Google Protocol Buffers
  • Experience working on distributed systems, including detailed knowledge of distributed-systems design patterns
  • Detailed knowledge of relational databases (e.g., PostgreSQL, CockroachDB) including resiliency, recoverability, scalability, and security
  • Experience with distributed messaging technologies such as Kafka
  • 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
  • Experience with diagramming tools (PlantUML, Lucid, Draw.io, Visio) and technical writing; passion for technical innovation, staying current with emerging technologies, understanding the SDLC and agile methodologies, and demonstrated coaching/mentoring experience
Preferred qualifications, capabilities, and skills
  • Hands-on experience with another statically compiled language such as Golang, Rust, or C++.
  • Experience with Apache Ignite, GridGain, Hazelcast, or Redis.
  • Experience with infrastructure as code software such as Terraform.
  • Awareness of key architectural patterns/approaches, algorithms, data structures, cryptography, security protocols (e.g., TLS and OAuth/OIDC), secure system design and Threat Modelling.
Similar jobs