As a Lead Software Engineer at JPMorgan Chase within the Corporate and Investment Banking's Engineering & Architecture team, you will play a crucial role in an agile team, contributing to the design and delivery of trusted, market-leading technology products for over 18,000 technologists. Your responsibilities will include defining and implementing technical solutions with the goal of enhancing the developer experience for a highly technical audience, thereby boosting their efficiency and effectiveness.
Job responsibilities
- Defines and builds distributed, microservices based software solutions to enable provisioning of public cloud infrastructure to support self-service, on-demand cloud development environments.
- Design and implement solutions that are scalable, highly available and secure and with a focus on day 2 operations.
- Executes software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems
- Creates secure and high-quality production code and maintains algorithms that run synchronously with appropriate systems
- Produces architecture and design artifacts for complex applications while being accountable for ensuring design constraints are met by software code development
- Proactively identifies hidden problems and patterns in data and uses these insights to drive improvements to coding hygiene and system architecture
- Contributes to software engineering communities of practice and events that explore new and emerging technologies
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering* concepts and significant applied experience
- Hands-on practical experience in Python software engineering.
- Experience coaching/mentoring junior developers
- Overall knowledge of the Software Development Life Cycle
- Hands-on practical experience in system design, application development, testing, and operational stability
- Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
- Solid understanding of agile methodologies such as CI/CD, Application Resiliency, and Security
Preferred qualifications, capabilities, and skills
- Proficient in Linux environments with Shell scripts
- Experience with databases (SQL/NoSQL), messaging (Kafka/RabbitMQ etc.), caching (Redis etc.)
- Familiarity with authentication concepts (Kerberos/OAuth)
- Familiarity with automation tools (Ansible/Rundeck/Puppet)
- Hands-on experience with public cloud platforms (AWS), infrastructure provisioning (Terraform) and containerization (Docker, Podman, Kubernetes, etc)