DescriptionBe an integral part of an agile team that's constantly pushing the envelope to enhance, build, and deliver top-notch technology products.
As a Lead Software Engineer at JPMorgan Chase within the Payments Processing group, you will play a pivotal role within the Commercial and Investment Bank's Payments Technology group. You will be 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 executing critical technology solutions across multiple technical domains, supporting the firm’s strategic business objectives.
Job responsibilities
- Execute creative software solutions, encompassing design, development, and technical troubleshooting. Leverage your ability to think beyond conventional approaches to build innovative solutions and deconstruct complex technical problems
- Regularly provides technical guidance and direction to support the business and its technical teams, contractors, and vendors
- Develop secure, high-quality production code, and conduct thorough reviews and debugging of code written by peers to ensure adherence to best practices and security standards
- Drives decisions that influence the product design, application functionality, and technical operations and processes
- Serves as a function-wide subject matter expert in one or more areas of focus
- Actively contributes to the engineering community as an advocate of firmwide frameworks, tools, and practices of the Software Development Life Cycle
- Influences peers and project decision-makers to consider the use and application of leading-edge technologies
- Adds to the team culture of diversity, equity, inclusion, and respect
- Lead evaluation sessions with external vendors, startups, and internal teams. Drive outcomes-oriented probing of architectural designs, technical credentials, and applicability for integration within existing systems and information architecture
- Identify opportunities to eliminate or automate the remediation of recurring issues, thereby enhancing the overall operational stability of software applications and systems
Required qualifications, capabilities, and skills
- Formal training or certification in software engineering concepts, with 5+ years of applied experience in software development
- Hands-on practical experience delivering system design, application development, testing, and operational stability
- Advanced skills in one or more programming languages, particularly Python, with a strong emphasis on writing clean, efficient, and maintainable code
- Advanced knowledge of software applications and technical processes with considerable in-depth knowledge in one or more technical disciplines (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
- Ability to tackle design and functionality problems independently with little to no oversight
- Experience with cloud-native solutions and platforms, particularly AWS, and proficiency in infrastructure as code using Terraform
- Experience in Computer Science, Computer Engineering, Mathematics, or a related technical field
- Familiarity with big data technologies such as Apache Spark and in-memory data grids like GemFire
Preferred qualifications, capabilities, and skills
- Proficiency in automation and continuous delivery methods, ensuring seamless integration and deployment processes
- Strong understanding of telemetry and observability patterns to monitor and improve system performance and reliability
- Comprehensive understanding of all aspects of the Software Development Life Cycle, with a focus on agile methodologies such as CI/CD, application resiliency, and security
- Demonstrated proficiency in software applications and technical processes within a specialized technical discipline (e.g., cloud computing, artificial intelligence, machine learning, mobile technologies)