JPMorgan Chase & Co.
Software Engineer II – Java AWS Kafka
Job 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 JPMorgan Chase within the Consumer and 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 solutions, design, development, and technical troubleshooting
- Writes secure and high-quality code using the syntax of at least one programming language with limited guidance
- 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 to improve the value realized by automation
- Applies technical troubleshooting to break down 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
- Learns and applies system processes, methodologies, and skills for the development of secure, stable code and systems
- Adds to team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 2+ years applied experience
- 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
- Demonstrable ability to code in one or more languages
- Experience across the whole Software Development Life Cycle
- Hands-on software development experience in an Object-Oriented programming language (such as Python, Java, C++).
- Hands-on practical experience in system design, application development, testing, and operational stability.
- Experience in developing highly scalable micro-services based applications.
- In-depth knowledge of software applications and technical processes with practical knowledge in one or more technical disciplines (e.g., cloud, artificial intelligence, machine learning, mobile, etc.).
- Experience with Source Code Control Systems such as Git, bitbucket, svn, etc.
- Experienced in agile methodologies
Preferred qualifications, capabilities, and skills
- Familiar in high throughput, low latency micro service development leveraging AWS services such EKS, ECS, Fargate, ELB etc. and in near real time stream processing with services such Kafka, Kinesis, Flink, ECS, EKS etc.
- Familiar in high volume feature engineering with services such as EMR. Experience leveraging trained model artifacts in newer model architectures and approaches such as neural networks, embeddings, multi arm bandits, etc.
- Familiar with relational DBs, SQL, RDS. Experience with development and build tools (or similar): IntelliJ /Eclipse, Maven, Gradle, Sprint Boot, MVC, Spring, Cloud.
- Experience with recommendation and personalization systems. Interest in problems related to the financial services domain.