We are actively seeking a highly skilled and motivated software engineer to join our Engineering team with a focus on streamlining DevOps and automation. As a Lead Software Engineer at JPMorgan Chase 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.
Working within the Limits Management team of Markets technology, the team is responsible for providing a robust multi-asset risk and control management platform that supports FICC and Equities trading activities. Through code and cloud infrastructure, you will configure, maintain, monitor, and optimize applications and their associated infrastructure to independently decompose and iteratively improve on existing solutions. You are a significant contributor to your team by sharing your knowledge of end-to-end operations, availability, reliability, and scalability of your application or platform.
Job responsibilities
Writes high-quality, maintainable, and well-tested software to develop reliable and repeatable solutions to complex problemsCollaborates with product development teams to design, implement, and manage CI/CD pipelines to support reliable, scalable, and efficient software deliveryPartners with product development teams to capture and define meaningful service level indicators (SLIs) and service level objectives (SLOs)Develops and maintains monitoring, alerting, and tracing systems that provide comprehensive visibility into system health and performanceParticipates in design reviews to evaluate and strengthen architectural resilience, fault tolerance, and scalabilityUpholds incident response management best practices, champions blameless postmortems, and continuous improvementsDebugs, tracks, and resolves complex technical issues to maintain system integrity and performanceChampions and drives the adoption of reliability, resiliency and software engineering best practices, leading by example
Required qualifications, capabilities and skills
Formal training or certification on software engineering concepts and 5+ years applied experienceExperience building production-grade software in at least one programming language such as Java, Python, or GoExperience in writing unit tests and integration tests using tools such as JUnit, Mockito, or PyTestExperience working with relational and NoSQL databasesProficient knowledge of distributed systems, and reliability patterns for achieving redundancy, fault tolerance, and graceful degradationProficient knowledge of networking concepts, including TCP/IP, routing, firewalls, and DNSProficient knowledge of Unix/Linux, including performance tuning, process and memory management, and filesystem operationsFamiliarity with DevOps practices and tools for continuous integration and continuous deployment (CI/CD), such as Github Actions, Docker, Kubernetes, GIT, branching strategies and SemVerExperience analyzing, troubleshooting, and supporting large-scale systems
Preferred qualifications, capabilities, and skills
Proficient knowledge of Java with a strong understanding of the Java programming language, including object-oriented programming concepts, and the JVMFamiliarity with observability and monitoring tools such as Prometheus, Grafana, or OpenTelemtryFamiliarity with cloud technologies such as AWS or GCP, including deployment, management, and optimization of cloud-based applicationsExperience working in the financial/fintech industry