Software Engineer [multiple Positions Available]

JPMorgan Chase JPMorgan Chase · Banking · Plano, TX +1 · Consumer & Community Banking

Software Engineer role focused on building tools and platforms for evaluating, incorporating, and contributing to open-source packages. The role involves developing cloud-native microservices, ensuring secure and high-quality code, and supporting products throughout their lifecycle, including production and incident management. Requires extensive experience in Java, React.js, microservice architectures, Oracle RDBMS, JVM performance analysis, testing frameworks, cloud technologies, and observability tools.

What you'd actually do

  1. Build tools and platforms to evaluate and select open source packages, incorporate them as dependencies, and contribute patches and features back to projects.
  2. Deliver end-to-end solutions in the form of cloud- native microservices architecture applications.
  3. Execute creative software solutions, design, development, and technical troubleshooting.
  4. Use domain modelling techniques to build engineering tools.
  5. Build solutions that avoid single points of failure using scalable architectural patterns.

Skills

Required

  • Java (up to Java 17)
  • React.js
  • modern JavaScript
  • Java Core concepts (object-oriented design, memory management, multi-threading/concurrency, new language features)
  • Spring
  • Spring Boot
  • Maven
  • Gradle
  • JSON
  • XML
  • microservice architectures
  • Oracle RDBMS
  • JVM performance analysis (profiling, heap/thread dump analysis, GC tuning)
  • testing (unit, component, integration, end-to-end, performance, resiliency)
  • JUnit
  • mocking frameworks
  • cloud technologies
  • distributed systems
  • RESTful APIs
  • web technologies
  • software application security
  • Splunk
  • Kibana

Nice to have

  • Software Development Life Cycle
  • agile software development
  • Continuous Integration
  • Continuous Delivery/Deployment
  • DevOps practices
  • exploratory data analysis
  • Terabyte sized enterprise databases
  • extract, clean, transform, and load data

What the JD emphasized

  • coding in Java (up to Java 17), React.js, and modern JavaScript
  • working with Java Core concepts including object-oriented design, memory management, multi-threading/concurrency, and new language features
  • developing enterprise level JAVA based applications utilizing development frameworks including Spring and Spring Boot
  • using Maven or Gradle for application dependency management and build automation
  • building applications that utilize JSON and XML formatted data files/service payloads for data transfer
  • designing and implementing scalable, resilient microservice architectures
  • working with Oracle RDBMS platform for managing structured data, leveraging the principles of the relational model including features for security, performance, and scalability
  • utilizing JVM performance analysis including profiling, heap/thread dump analysis, and GC tuning
  • designing and implementing testing including unit, component, integration, end-to-end, performance and resiliency
  • working with testing frameworks such as JUnit and mocking frameworks
  • working with cloud technologies and distributed systems, RESTful APIs, and web technologies
  • operating and supporting the security of software applications
  • working with observability and monitoring tools including Splunk and Kibana to monitor system performance and behavior