Enable job alerts via email!

Senior Lead Software Engineer - Java - VP

J.P. Morgan

London

On-site

GBP 60,000 - 120,000

Full time

30+ days ago

Boost your interview chances

Create a job specific, tailored resume for higher success rate.

Job summary

An established industry player is seeking a Lead Software Engineer to join their dynamic Electronic Trading Technology team. In this role, you will leverage your expertise in Java to develop and optimize algorithmic trading solutions that enhance market performance. You'll be part of an agile team that values diversity and innovation, where your contributions will directly impact the firm's trading capabilities. If you are passionate about technology and finance, and eager to tackle complex challenges in a collaborative environment, this opportunity is perfect for you.

Qualifications

  • Advanced experience in Java and software engineering concepts.
  • Experience with algorithmic trading systems and performance optimization.

Responsibilities

  • Develop secure, high-quality production code in Java and optimize trading strategies.
  • Collaborate with product teams to translate strategies into scalable algorithms.

Skills

Java
Software Engineering
Algorithmic Trading
Data Structures
Multithreading
Performance Optimization
Continuous Delivery
Financial Markets Knowledge

Education

Formal training or certification in software engineering

Tools

Kafka
AMPS
Cucumber
Linux
Grafana
Splunk

Job description

We have an opportunity to impact your career and provide an adventure where you can push the limits of what's possible.

As a Lead Software Engineer at JPMorgan Chase within the ETT – Options Algorithmic Trading, you are an integral part of an agile team that works to enhance, build, and deliver trusted market-leading technology products in a secure, stable, and scalable way. As a core technical contributor, you are responsible for conducting critical technology solutions across multiple technical areas within various business functions in support of the firm’s business objectives.

Team Overview:

The Electronic Trading Technology (ETT) team is responsible for developing and maintaining the robust technology infrastructure that underpins our electronic trading activities. This includes designing and implementing systems for order management, trade execution, market data processing, and risk management. Within ETT, the Options Algorithmic Trading team specializes in developing and optimizing algorithmic trading engines specifically for options instruments.

Job Responsibilities:

  • Execute creative software solutions, design, development, and technical troubleshooting with the ability to think beyond routine or conventional approaches to build solutions or break down technical problems.
  • Develop secure, high-quality production code in Java, and review and debug code written by others to ensure adherence to best practices and performance standards.
  • Design and implement algorithmic trading strategies, focusing on optimizing execution and performance in a low-touch trading environment.
  • Collaborate with the product team to translate trading strategies into efficient and scalable algorithms.
  • Continuously improve and refactor existing codebases to enhance performance, implement comprehensive testing, and ensure the reliability of trading systems.
  • Contribute to a team culture of diversity, equity, inclusion, and respect, fostering an environment where innovative ideas and diverse perspectives are valued.

Required Qualifications, Capabilities, and Skills:

  • Formal training or certification on software engineering concepts and proficient advanced experience developing in Java.
  • Hands-on practical experience delivering system design, application development, testing, and operational stability.
  • Advanced in one or more programming language(s).
  • Proficiency in automation and continuous delivery methods.
  • Proficient in all aspects of the Software Development Life Cycle.
  • Experience with algorithmic trading systems and familiarity with trading protocols such as FIX.
  • Practical experience with performance optimization and low-touch system design.
  • Strong understanding of data structures, algorithms, and multithreading in Java.
  • Familiarity with financial markets and trading concepts, particularly in equities and options.

Preferred Qualifications, Capabilities, and Skills:

  • Experience in designing and implementing high-performance, low-touch trading systems.
  • Ability to troubleshoot complex software issues and optimize application performance and reliability.
  • Experience with messaging systems such as AMPS or Kafka, particularly in the context of real-time data streaming and processing.
  • Experience with Cucumber for behavior-driven development (BDD) and testing, particularly in Java environments.
  • Experience with automation tools and scripting languages (e.g., Python, Shell) to streamline testing and reporting.
  • Proficiency in working with Linux operating systems, including scripting and basic administration tasks relevant to trading systems.
  • Familiarity with monitoring and logging tools such as Grafana or Splunk for application performance and system health monitoring.
Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.