Job Purpose
As a Senior Java Developer in Risk, you will play a key role in building mission-critical, sophisticated applications supporting the Clearing and Risk systems underpinning ICE’s global markets. You will have the opportunity to shape the modernization of ICE’s platforms through cloud-native design patterns, novel quantitative algorithms, and cutting-edge technologies. Your contributions will directly impact essential financial infrastructure on a global scale across ICE’s derivative markets and asset classes.
Responsibilities
- Develop and deliver robust, high-performance systems and modules using Java, Spring, REST, and SQL
 - Build creative, performant design and implementations consistent with established design patterns and in consideration of non-functional impacts and operational resiliency
 - Take ownership of estimation, design, development, testing, production delivery, and team mentorship for critical components, applications and systems
 - Drive scalability and performance optimization for systems processing millions of complex computations against immense datasets daily
 - Collaborate with cross-functional teams, including business units, product management, quality assurance, and other stakeholders to understand system requirements and bring impactful solutions to life
 - Assist in developing and ensuring complete functional and non-functional specifications
 - Understand complex business logic in existing systems and transition it to new technologies and systems
 - Work with system operations, database administration, and systems software in production support and defining system recovery procedures
 - Identify, communicate, and develop solutions for root causes of program failures and defects
 - Work in an agile and continuous integration environment with a command of SDLC tools
 - Plan and execute unit tests to ensure developed code is free of functional defects
 - Collaborate with business analysts and QA analysts in the design and execution of business feature, regression and integration testing
 
Knowledge and Experience
- Bachelor’s degree in CS or equivalent
 - 5+ years of experience developing with Java technologies
 - Strong working knowledge of:
 - Java 8+
 - Object Oriented Design and related Design Patterns
 - Distributed messaging via frameworks such as IBM MQ, Rabbit MQ, Kafka, JMS
 - Spring Framework (Spring Boot, Spring Cloud, Spring MVC, Spring Data)
 - ORM technologies such as Hibernate, JPA
 - Relational Databases (such as Oracle) and experience with SQL, PL/SQL
 - Multi-threaded server-side development
 - RESTful API design and development
 - Unit testing tools such as JUnit, Mockito, and Spring Boot Test
 - Proven experience in Java performance tuning, debugging and memory profiling
 - Familiarity with CI/CD pipelines and modern development workflows using tools like Jenkins, ArgoCD, or GitHub Actions
 - Experience supporting multiple projects, managing priorities, and multi-tasking effectively
 - Strong problem-solving abilities and attention to detail
 - Strong interpersonal skills and able to work well in a collaborative team environment
 - Excellent communication skills, particularly in articulating technical concepts to varying audiences
 - Excellent technical documentation skills
 
Preferred
- Passion for financial markets and experience with futures and options
 - Experience with quantitative financial risk models and risk management systems
 - Experience developing micro-services in container-based Kubernetes platforms (OpenShift, Tanzu)
 - Experience orchestrating complex microservice-based dataflows using frameworks like Apache Airflow or Netflix Conductor
 - Experience working with distributed cache frameworks such as Redis or Hazelcast
 - Experience with modern messaging middleware such as RabbitMQ and Kafka
 - Familiarity with advanced Spring frameworks, including Gateway, Data Flow, Stream, Function, and WebFlux
 - Experience integrating with native C++ libraries via JNI
 - Demonstrated contributions to open-source technologies
 


