Software Engineer [Multiple Positions Available]

JPMorganChasePalo Alto, CA
7hOnsite

About The Position

DESCRIPTION: Duties: Execute software solutions, design, development, and technical troubleshooting to build solutions or break down technical problems. Create secure and high-quality production code and maintain algorithms that run synchronously with appropriate systems. Produce architecture and design artifacts for complex applications while being accountable for ensuring design constraints are met by software code development. Gather, analyze, synthesize, and develop visualizations and reporting from large, diverse data sets in service of continuous improvement of software applications and systems. Proactively identify hidden problems and patterns in data and uses these insights to drive improvements to coding hygiene and system architecture. QUALIFICATIONS: Minimum education and experience required: Master's degree in Computer Science, Computer Engineering, or related field of study plus 3 years of experience in the job offered or as Software Engineer, IT Consultant, or related occupation. The employer will alternatively accept a Bachelor's degree in Computer Science, Computer Engineering, or related field of study plus 5 years of experience in the job offered or as Software Engineer, IT Consultant, or related occupation.

Requirements

  • working with distributed Java systems focusing on scalability, reliability, and maintainability
  • utilizing microservices architecture, event-driven patterns, and domain- driven design for resilient systems
  • developing applications using SOLID principles, design patterns, and clean code practices
  • testing software and quality assurance by implementing unit, integration, functional, and performance testing
  • utilizing test automation frameworks including JUnit, Spock, Mockito, and Cucumber
  • working with Java including Java 8 and Java 17, Groovy, and Python, including asynchronous programming, multi-threading, and reactive paradigms including RxJava and Project Reactor
  • enhancing performance utilizing memory profiling, thread management, and JVM tuning
  • deploying applications on AWS, Gaia Kubernetes Platform, and OpenShift
  • designing containerized workloads with Docker and Kubernetes for high availability and cost efficiency
  • developing RESTful APIs and microservices using Spring Boot, Spring Security, and Spring Data JPA
  • implementing robust authentication and authorization with OAuth2 and JWT
  • working with MySQL and Cassandra for database design and optimization
  • implementing event-driven architectures with Apache Kafka to design scalable streaming solutions
  • using DevOps to enable CI/CD automation using Jenkins, Bitbucket, and Maven
  • monitoring dashboards, log aggregation, and alerting using Dynatrace, Grafana, and Splunk
  • ensuring application health through structured logging and distributed tracing
  • optimizing transaction processing systems and data pipelines, reducing latency and increasing throughput
  • utilizing Kubernetes, Spring Integration, and Elasticsearch to design systems for large-scale data processing and real-time search indexing
  • Master's degree in Computer Science, Computer Engineering, or related field of study plus 3 years of experience in the job offered or as Software Engineer, IT Consultant, or related occupation or a Bachelor's degree in Computer Science, Computer Engineering, or related field of study plus 5 years of experience in the job offered or as Software Engineer, IT Consultant, or related occupation.

Responsibilities

  • Execute software solutions, design, development, and technical troubleshooting to build solutions or break down technical problems.
  • Create secure and high-quality production code and maintain algorithms that run synchronously with appropriate systems.
  • Produce architecture and design artifacts for complex applications while being accountable for ensuring design constraints are met by software code development.
  • Gather, analyze, synthesize, and develop visualizations and reporting from large, diverse data sets in service of continuous improvement of software applications and systems.
  • Proactively identify hidden problems and patterns in data and uses these insights to drive improvements to coding hygiene and system architecture.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service