Job Description
Description
You’re ready to gain the skills and experience needed to grow within your role and advance your career — and we have the perfect software engineering opportunity for you.
As a Software Engineer II at JPMorganChase within the Consumer & Community Banking, you are part of an agile team that works to enhance, design, and deliver the software components of the firm’s state-of-the-art technology products in a secure, stable, and scalable way. As an emerging member of a software engineering team, you execute software solutions through the design, development, and technical troubleshooting of multiple components within a technical product, application, or system, while gaining the skills and experience needed to grow within your role.
Job responsibilities
• Executes standard software solution, design, development, and technical troubleshooting.
• Design, build, and maintain Android features using Kotlin/Java, delivering high-quality user experiences across devices and OS versions.
• Writes secure and high-quality code using the syntax of at least one programming language with limited guidance
• Leverages enterprise-authorized AI coding assist tools within the work environment to improve code quality, delivery speed, and productivity (e.g., code generation/refactoring, unit test creation, documentation), while validating outputs through peer review, automated testing, and secure coding standards.
• Drive CI/CD improvements for Android builds (lint/static analysis, test automation, signing/release workflows) and use JP Morgan Chase-approved AI-assisted tools (e.g., Claude AI where approved) to accelerate refactoring, test generation, and documentation with rigorous validation
• Designs, develops, codes, and troubleshoots with consideration of upstream and downstream systems and technical implications
• Applies knowledge of tools within the Software Development Life Cycle toolchain, including enterprise-authorized AI-assisted development and automation capabilities, to improve the value realized by automation
• Applies technical troubleshooting to breakdown solutions and solve technical problems of basic complexity
• Gathers, analyzes, and draws conclusions from large, diverse data sets to identify problems and contribute to decision-making in service of secure, stable application development
• Build and maintain automated tests (unit, instrumentation, UI) and improve app stability (crash reduction, ANR/performance tuning).
• Learns and applies system processes, methodologies, and skills for the development of secure, stable code and systems.
• Integrate with backend services (REST/GraphQL), implement secure authentication flows, and ensure safe handling of network communications.
• Writes secure and high-quality code using Kotlin, Java, MVVM, MVI, Dagger, RxJava, and Coroutines Required qualifications, capabilities, and skills
• Formal training or certification on software engineering concepts and 2+ years applied experience
• Strong Hands-on practical Android development experience with Android SDK, kotlin, Gradle, JetPack ViewModel/Lifecycle/Navigation, JetPack Compose, Hilt, Dagger, Retrofit, RxJava, Coroutines, Flows.
• Experience building UI using JetPack Compose and/or XML, UI components with Accessibility support , response layout practices and dynamic font support.
• Hands-on experience using enterprise-authorized AI-assisted software development tools within the work environment (e.g., for coding, testing, troubleshooting, or documentation) with demonstrated ability to critically evaluate and validate AI-generated outputs.
• Understanding of responsible AI use in engineering workflows, including data sensitivity considerations, secure handling of inputs/outputs, and adherence to resiliency and security expectations.
• Experience with mobile testing practices and frameworks (unit + instrumentation/UI tests) and troubleshooting complex issues.
• Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
• Experience across the whole Software Development Life Cycle.
• Experience in Unit testing libraries like Mockito, JUnit, Gherkin scripts for UI Test Automation Preferred qualifications, capabilities, and skills
• Experience with modularization, shared libraries, and scaling Android codebases across teams.
• Experience with Java and Android eco system and all mobile UI fundamentals from layout to animations
• Exposure to agile methodologies , CI/CD Pipeline, Application Resiliency, and Security.
• Understanding of SOLID principles and architectural patterns such as MVP, MVI and MVVM.
• Experience with Git source control management
• Experience consuming and integrating RESTful web services in mobile applications
• Strong communication skills, with the ability to clarify application requirements with business partners in addition to technical documentation