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 Senior Lead Software Engineer at JPMorgan Chase within the Consumer & Community Banking - Technology 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. Drive significant business impact through your capabilities and contributions, and apply deep technical expertise and problem-solving methodologies to tackle a diverse array of challenges that span multiple technologies and applications. This role also extensively involves working with public cloud technologies and will give you the opportunity to share your expertise in Terraform Infrastructure as code and other related public cloud technologies, like AWS.
Job responsibilities
- Designs and implements scalable cloud native software solutions using modern technology stacks to deliver highly available, performant, and resilient products.
- Mentors junior and mid-level engineers, providing guidance and support through code reviews and educational workshops.
- Develops secure and high-quality production code, and reviews and debugs code written by others.
- 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.
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years applied experience . In addition, 2 + years of experience leading technologists to manage and solve complex technical items within your domain of expertise
- Experience in Computer Science, Engineering, Mathematics, or a related field and expertise in technology disciplines
- Hands-on practical experience delivering system design, application development, testing, and operational stability
- 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.
- Advanced in one or more programming language(s) including Golang, Python, Java and Typescript
- Experience migrating complex applications to the public cloud (IaC developer, SRE and Acceleration roles)
- Proficient in all aspects of the Software Development Life Cycle
- Experience working in an agile environment employing software delivery practices such as CI & CD and Scrum
- Demonstrated knowledge of software design principles and patterns as wells as experience implementing solutions using various software architectures such as modular monoliths and micro-services
- Possess excellent problem solving, analytical and communication skills as well as demonstrated people leadership skills and experience leading software development projects.
Preferred qualifications, capabilities, and skills
- Experience in designing and maintaining Api/event driven architectures.
- Experience in building and maintaining cloud native software solutions including advanced knowledge of managing infrastructure as code
- Experience in Golang, React JS, Terraform and AWS.