Job Purpose
At Intercontinental Exchange (ICE), we engineer technology, exchanges and clearing houses that connect companies around the world to global capital and derivative markets. With a leading-edge approach to developing technology platforms, we have built market infrastructure in all major trading centers, offering customers the ability to manage risk and make informed decisions globally. By leveraging our core strengths in technology, we continue to identify new ways to serve our customers and transform global markets.
As a Senior Developer, you will be part of a team responsible for the design, implementation and support of the ICE auction and financial benchmark platforms. This position offers a unique opportunity for both server-side and modern front-end development.
The ideal candidate must possess a product mentality, have a strong sense of ownership, and strive to be a good steward of his or her software. More than any concrete experience with specific technology, it is critical for the candidate to have a strong sense of what constitutes good software, be conscientious in picking the right technology stack, and be always open-minded to learn (from others and from failures.) This role requires frequent interactions with fellow developers, project and product managers, quality assurance, and other stakeholders, to ensure delivery of world-class applications to our users.
This role works closely with the ICE teams in the U.S. Therefore, qualified candidates are expected to overlap part of their working hours with the U.S. Eastern time zone.
Responsibilities
Follow team guidelines for quality and consistency within the design and development phases of applicationsLead efforts to design, architect and write new software componentsIndependently handle project activities related to builds and deploymentsCreate design documentation for new software developmentProvide support for production applicationsProvide support for deployments during maintenance windowsIdentify opportunities to improve and optimize applicationsWork with business analysts or product management in understanding new requirementsFollow company software development processes and standardsKnowledge and Experience
Bachelor’s degree in Computer Science or Information technology6+ years of experience of Java developmentExperience with and strong understanding of:multi-threaded server-side development and Java concurrencycore Java/Java collectionsrelational databasesperformance tuning, debugging, and memory profilingunit, integration, and end-to-end testsknowledge of UNIX command and toolsUnderstanding of common design and architectural principlesStrong interpersonal and communication skills to work well in a team environmentAbility to work with little supervision and under pressureProven track record of making decisions with positive outcomeFront-end JavaScript development (with modern JavaScript web application stack such as React) preferredCross-browser development and troubleshooting experience preferredExposure to Scala, Kubernetes, Docker, Kafka, and Postgres preferredNice to have: PostgreSQL, PostGIS. Experience working Geospatial data is a plus.