Job Description
We have an opportunity to impact your career and provide an adventure where you can push the limits of what's possible.
As a Lead Software Engineer at JPMorgan Chase within the Asset and Wealth management, 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. As a core technical contributor, you are responsible for conducting critical technology solutions across multiple technical areas within various business functions in support of the firm’s business objectives.
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
- Strong architecture, analysis, design, coding, and code review skills. Advanced knowledge of API, cloud platforms and infrastructure architecture disciplines
- Proficiency in developing Android applications using Kotlin, leveraging the Android SDK and associated libraries with a strong understanding of their ecosystems and frameworks. Experience with Jetpack Compose or traditional Android Views for building user interfaces.
- Familiar with design principles - experience in MVVM. Comprehend requirements and convert drawings and wireframes into code.
- Experience with Coroutines, Flows , Retrofit, OkHttp, or Volley for handling network operations. Proficiency in using Room, SQLite, or Realm for local data storage and management.
- Experience with offline storage, threading, and performance tuning. Familiarity with RESTful APIs and XML is required to link the app to backend services.
- Experience across the whole Software Development Life Cycle. Overall understanding of agile methodologies such as CI/CD, Applicant Resiliency, and Security
- Emerging knowledge of software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
- Strong knowledge and hands-on experience in Key technologies Java (Spring Boot, or equivalent framework), Spring Boot, Kubernetes and Oracle DB.
- Ability to tackle design and functionality problems independently with little to no oversight. Proficiency in automation and continuous delivery method.
- Experience with code security, code scan. Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages.Strong Application development background with Design Thinking.
Preferred qualifications, capabilities, and skills- Experience with Kotlin and modern Android development practices.
- Understanding of security frameworks / standards
- Strong attention to detail and a passion for delivering high-quality user experiences.
- Strong problem-solving skills and a proactive attitude
- Ability to manage the team of developers.