← Back to Directory

intercontinental exchange

Large Enterprises

Intercontinental Exchange (ICE) is a leading global operator of financial exchanges and clearing houses, and a provider of data, technology, and market infrastructure services. It is best known for owning the New York Stock Exchange (NYSE) and for its offerings across commodities, fixed income, and mortgage technology markets.

4 interview notes · updated Jul 2026

intercontinental exchange·Software Engineer·Technical Phone Screen

Jul 2026
Technical phone screen for a Software Engineer role at Intercontinental Exchange. The questions were solidly C++ focused, which I half expected but still felt underprepared for on the polymorphism side.
  • What are the key differences between std::vector and std::list in C++, and when would you choose one over the other?
  • Can you explain what polymorphism means in C++, covering both compile-time and runtime forms?

“I knew the surface stuff: vector is contiguous memory, list is pointer-chained nodes.”

View Post

intercontinental exchange·Data Scientist·Technical Phone Screen

May 2026
Technical phone screen for a Data Scientist role at ICE, heavy on quantitative finance. The whole thing centered on implied volatility and Black-Scholes, which I wasn't expecting to go that deep on for a data science position.
  • Explain how Newton-Raphson works for finding implied volatility, and walk through the specific conditions where it breaks down, including issues with the objective function, its derivative, step sizes, and edge cases.
  • How would you choose the initial volatility seed before running Newton-Raphson for implied vol, and what heuristics or real data would you lean on to justify that choice?
  • Write out the closed-form Vega formula for a European option under Black-Scholes, define every variable with units, and explain how Vega's size affects the step size in Newton-Raphson updates.

“I knew the basic mechanics but stumbled when they pushed on failure modes.”

View Post

intercontinental exchange·Software Engineer·Technical Phone Screen

May 2026
A 30-minute C++ fundamentals screen for a Software Engineer role at Intercontinental Exchange. Pretty dense for the time slot, they moved fast and expected you to go deep on memory internals without much prompting.
  • What are the differences between std::list and std::vector, and what are the trade-offs in terms of memory layout, insertion and deletion cost, iterator invalidation, and cache behavior?
  • Explain polymorphism in C++. What is the difference between compile-time and run-time polymorphism, and how do virtual functions and vtables work?
  • What is RAII and how does it relate to resource management in C++?
  • What are the differences between unique_ptr and shared_ptr, and when would you choose one over the other?
  • What is the difference between copy semantics and move semantics in C++?
  • What is const-correctness and why does it matter?
  • What are the differences between pointers and references in C++?

“This is where the follow-ups got uncomfortable.”

View Post

intercontinental exchange·Software Engineer·Technical Phone Screen

May 2026
A coding round for a Software Engineer role at Intercontinental Exchange. Thirty minutes, one array problem, C++ only. Pretty focused and no-nonsense.
  • Solve an array problem using a hash map and sorting in C++. Walk through your approach including how you're using the map, your sorting strategy (e.g. sorting by value while preserving stable order), and the time and space complexity.

“Python wasn't allowed which tripped me up a bit since I default to it.”

View Post