Software Engineer [multiple Positions Available]

JPMorgan Chase JPMorgan Chase · Banking · New York, NY +1 · Consumer & Community Banking

Software Engineer role at JPMorgan Chase, focusing on designing, developing, and implementing software solutions across the full SDLC. Responsibilities include analyzing requirements, translating technical needs into code, troubleshooting issues, participating in code reviews, and collaborating on project planning. Requires experience with Agile methodologies, GitHub, Jenkins, modern application architecture patterns (MVC, MVP, MVVM), JSON handling, performance measurement with Splunk, functional and unit testing (XCTest, Swift Testing), iOS development (UIKit, Combine, Swift Package Manager, SwiftUI, Swift concurrency), and documentation in Confluence.

What you'd actually do

  1. Design, develop and implement software solutions.
  2. Solve business problems through innovation and engineering practices.
  3. Involved in all aspects of the Software Development Lifecycle (SDLC) including analyzing requirements, incorporating architectural standards into application design specifications, documenting application specifications, translating technical requirements into programmed application modules, and developing or enhancing software application modules.
  4. Identify or troubleshoot application code-related issues.
  5. Take active role in code reviews to ensure solutions are aligned to pre-defined architectural specifications.

Skills

Required

  • Agile SDLC
  • Raising, reviewing, and merging pull requests from GitHub repositories
  • Forking GitHub repositories
  • Creating branches in GitHub
  • Triggering builds and merging pull requests using Jenkins
  • Implementing new features using modern application architecture patterns, such as MVC, MVP, and MVVM
  • Reading and parsing JSON responses
  • Rendering JSON data on screen
  • Measuring iOS application performance dimensions, tools, and instruments using tools such as Splunk
  • Writing functional tests to test app UI using XCTest and Swift Testing
  • Writing unit tests to test code in isolation and iterate as developer codes using XCTest and Swift Testing
  • Developing iOS libraries and frameworks using UIKit, Combine, and Swift Package Manager
  • Building user interfaces using SwiftUI
  • Asynchronous programming using Swift concurrency
  • Participating in scrum ceremonies, including stand-up meetings and product refinement sessions
  • Identifying and resolving bottlenecks in the application development cycle
  • Creating documentation in Confluence