Join our innovative team and shape the future of software development.
As a Director of Software Engineering at JPMorgan Chase within the Commercial & Investment Banking you will deliver a wide range of solutions that enable JPMorgan’s Operations team to digitize their daily work slate, as well as provide our external clients with digital platforms to complete their post trade actions with JPMorgan. You will be responsible for highly inspired and inquisitive technologists who are already developing and deploying applications to the highest standards.
This is a hands on role with a clear expectation that you will spend a portion of your time in active software development.
Job Responsibilities:
Delivers best in class technology solutions on modern tech stack adhering to the firm’s processes, controls, and data hygiene standards.Collaborates with technology and business partners across levels to enable teams deliver robust solutions at scale and speed.Leads migration and transformation initiatives Engages in the planning, architecture, design, and development of solutions that satisfy business requirementsDelivers using agile methodology with CI/CD and automated testing and deployment capabilities using devopsDevelops people on technical, domain and leadership capabilities with active coaching. Ability to work proficiently and effectively in an Agile / Scrum feature team environmentDrives execution capabilities and efficiencies across the organizationInteracts with senior leadership in India, UK and US to develop strategy for the application platformUtilizes excellent organizational skills, proven analytical, planning, problem solving and decision-making skillsFosters diversity & inclusion Creates a customer obsessed centric environment for team and contributorsRequired qualifications, capabilities and skills:
Formal training or certification on large scale technology program concepts and 10+ years applied experience. In addition, 5+ years of experience leading technologists to manage, anticipate and solve complex technical items within your domain of expertiseProfessional experience working in an agile, dynamic and customer facing environmentAt least 8 years of recent hands-on professional experience (actively coding) working as a back-end software engineerExtensive experience with using a JVM language (Java/Scala/Kotlin, preferably Java 8+)Understanding of distributed systems and cloud technologies (AWS, GCP, Azure, etc.). Understanding of AOP and dependency injection frameworks (Spring/SpringBoot)Strong understanding of design patterns, technical standards, enterprise architecture, microservices architecture, domain modelling and interface definitions, service communication methods, data modelling.Strong understanding of transactional semantics, race conditions, memory models, networking, operating systems, databases, data structures and algorithmsUnderstanding of RESTful APIs and web technologies. Understanding of relational and no-SQL databasesExperience in the all stages of software development lifecycle (requirements, design, architecture, development, testing, deployment, release and support)Experience in automating deployment, releases and testing in continuous integration, continuous delivery pipelinesA solid approach to writing unit level tests using mocking frameworks, as well as automating integration and end-to-end testsPreferred qualifications, capabilities and skills:
Understanding of security frameworks (Spring Security, SSL, TLS, HTTPS, etc.)Understanding of event driven architectures (Kafka, Flink, etc.)Understanding of distributed tracing and monitoring (Zipkin, Prometheus, ELK stack, Open Telemetry, Micrometer metrics, etc.)Understanding of containers (Docker, Kubernetes, etc.)