Full Stack Software Engineer II - Java
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 Commercial & Investment Bank, Payments Technology, 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
- Execute standard software solutions through design, development, and technical troubleshooting across multiple system components
- Write secure, high-quality code using at least one programming language with limited guidance
- Design, develop, and troubleshoot with consideration of upstream and downstream systems and their technical implications
- Apply technical troubleshooting skills to break down and solve technical problems of basic complexity
- Gather, analyze, and draw conclusions from large, diverse data sets to identify problems and contribute to decision-making in service of secure, stable application development
- Learn and apply system processes, methodologies, and best practices for the development of secure, stable code and systems
- Contribute to a team culture of diversity, opportunity, inclusion, and respect
- 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
- 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
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and expanding applied experience
- Hands-on practical experience in system design, application development, testing, and operational stability
- Experience developing, debugging, and maintaining code in a large-scale environment using one or more modern programming languages and database querying languages
- Demonstrable ability to code in one or more languages
- Experience across the full Software Development Life Cycle
- Exposure to agile methodologies such as continuous integration/continuous delivery, application resiliency, and security practices
- Emerging knowledge of software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
- 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
Preferred qualifications, capabilities, and skills
- Familiarity with modern front-end technologies
- Exposure to cloud technologies
- Experience with Java, Spring Boot, Kafka, or Kubernetes in an enterprise environment
Familiarity with container orchestration and microservices architecture patterns