Lead Software Engineer - Java, AWS
JPMorganChase
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 Payments - Kinexys team, 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
- Lead an engineering team to deliver assigned scope, or operate as a senior individual contributor depending on program needs.
- Own end-to-end solution design and implementation for microservices and APIs using Java and Spring Boot.
- Produce clear High-Level Design (HLD) and Low-Level Design (LLD) documents; ensure traceability from requirements to implementation.
- Guide and mentor junior engineers: code reviews, technical coaching, best practices.
- Collaborate with product, architecture, and operations to plan releases, manage dependencies, and de-risk delivery.
- Contribute to cloud-ready architecture and deployment patterns; partner on AWS/Azure implementations where applicable.
- Drive continuous improvement in process, tooling, and platform capabilities; address production issues with a focus on resiliency.
- Executes creative software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems
- Develops secure high-quality production code, and reviews and debugs code written by others
-
Identifies opportunities to eliminate or automate remediation of recurring issues to improve overall operational stability of software applications and systems
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years applied experience
- Expert proficiency in Java and Spring Boot: Building RESTful services, microservices, and API-first designs, dependency injection, configuration management, modular design, Performance tuning, concurrency, memory management
- Strong experience designing complex distributed systems and documenting HLD/LLD.
- Hands-on experience with automated testing (unit, integration, contract) and CI/CD pipelines.
- Solid understanding of data stores (relational and/or NoSQL), schema design, transactions, and query optimization. Databases like :Postgres , MySql , Oracle , MongoDB
- Demonstrated proficiency in software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
- In-depth knowledge of the financial services industry and their IT systems
-
Practical cloud native experience
- Banking/payments domain knowledge (e.g., authorization, clearing/settlement, transaction processing, reconciliation, ISO 20022 standards , Different payment channels like Swift/pain/MX).
- Knowledge in Blockchain/Ethereum solidity programming language is good to have.
- Cloud knowledge on AWS or Azure (compute, storage, networking, IAM/security); familiarity with containerization (Docker) and orchestration (Kubernetes) is a plus.
- Kotlin experience or knowledge; ability to read/write Kotlin and understand Java interoperability.
- Experience with messaging/event streaming (e.g., Kafka), caching, and resiliency patterns (circuit breakers, retries, timeouts).
Carry out critical tech solutions across multiple technical areas as an integral part of an agile team