DescriptionChase is seeking exceptional software developers to join our Digital development team, renowned for creating innovative, market-disrupting experiences and services. Ranked among the top 5 finance apps by both Apple and Google, we strive for continuous improvement and value clear, well-documented, and maintainable code.
As a Lead Software Engineer at JPMorgan Chase within the Digital Development team, you will contribute to the creation of innovative and industry-leading experiences and services. You will be tasked with writing clear, well-documented, and maintainable code, as well as executing software solutions and producing secure, high-quality production code. Additionally, you will be an active participant in our software engineering communities of practice. Our team values diversity, equity, inclusion, and respect, fostering a positive and inclusive culture.
Job responsibilities:
- 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
- Gathers, analyzes, synthesizes, and develops visualizations and reporting from large, diverse data sets in service of continuous improvement of software applications and systems
- 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
- Adds to 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
- Combined software/application development experience in Java and Android
- Experience working with API integration Past experience in RxJava, LiveData, and Restful API integration is expected
- Experience in Unit testing libraries like Mockito Experience with distributed systems, caching, and persistence solutions
- Proficient in coding in one or more language, understanding of build systems such as Gradle, Jenkins
- Solid understanding of agile methodologies such as CI/CD, Applicant Resiliency, and Security
- Demonstrated knowledge of software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
Preferred qualifications, capabilities, and skills:
- Strong understanding of java and android ecosystem
- Excellent understanding of all mobile UI fundamentals, from layout to animations. Strong experience with Data Structures and Multi-Threading
- Understanding of architectural patterns such as MVP and MVVM Understanding of application design patterns – Gang of Four patterns Experience in Kotlin is a bonus
- Created an application that is available on google play store (bonus but not a must) Proficiency with Linux, Mac OS X, GNU tools, and scripting languages is a bonus