Python Central HubSign in

Data Structures and Algorithms / Phase 21: Company Guides

Bloomberg Interview Guide

Bloomberg's object-oriented design emphasis, its C++-and-Python house style, and the data-structure questions that recur.

Bloomberg is the company on this page most likely to ask you to design classes, not just write a function. Expect object-oriented design as a distinct round or a large chunk of a coding round -- model a trading system, an order book, a subscription feed -- and expect follow-ups about extension rather than complexity.

The data-structure questions skew toward the practical and composite: LRU caches, iterators, ordered collections, anything where the answer is two structures working together. That maps directly onto this course's design-problems phase.

The most object-oriented-design-heavy of the common targets. Expect at least one round that is class design rather than an algorithm, and expect follow-ups about extending your design.

The loop

Phone screen1× · 45 minOne or two mediums
Onsite / virtual loop2-3× · 60 minCoding plus an explicit OOD round
Team match + manager1× · 45 minFit and domain interest

The bar

Design rounds are graded on extensibility. Sketch the classes and their responsibilities before writing a method body, and say which requirement each class exists to serve.

What they lean on

This is the durable part. Which pattern families a company favours is far more stable than which individual problems it uses, so prepare in this order:

  1. design-with-stacks-and-queues
  2. design-lru-and-lfu-caches
  3. design-iterators-and-flatteners
  4. linked-lists
  5. hash-tables
  6. strings
  7. tries

Quirks worth knowing

  • The OOD round is close to guaranteed. Practise the parking-lot / elevator / deck-of-cards family, not just algorithms.
  • Financial-data framing is common (tickers, order books, time series) but the underlying structures are standard.
  • Follow-ups are about change, not scale — "now support a second currency" rather than "now a billion users".

Reported problems

23 problems
7 easy13 medium3 hard

Pitfalls

  • Writing a function when they asked for a design. If the prompt names entities, produce classes with responsibilities and relationships, not one long function.
  • Designing for the current requirement only. The follow-up is almost always "now add X". Leave an obvious extension point and say where it is.
  • Over-engineering in the other direction. Five interfaces for a two-entity problem reads as poor judgement. Model what exists, name where you would extend.
  • Skipping the composite-structure insight. Most of their data-structure questions want two structures cooperating -- a map for lookup plus a linked list for ordering. Saying "neither alone can do both" is the answer they want to hear.

Interview follow-ups

They askWhat they're checkingThe answer
"Design an order book."Whether you model before codingName the entities and their responsibilities first -- orders, price levels, the book -- then the structure per operation: a heap or sorted map per side, a map from order id to node for cancellation.
"Now add order cancellation."Whether your design has an extension pointThis is why you keep an id-to-node map. If your first design cannot cancel in better than O(n)O(n), say what you would change rather than defending it.
"Why do you need two data structures?"The composite insightOne gives O(1)O(1) lookup and no ordering; the other gives ordering and O(1)O(1) removal of a known node. Neither alone does both -- that sentence is the answer.
"How would you extend this to multiple instruments?"Whether the model generalisesA book per instrument behind a registry, and say what becomes shared versus per-instrument. Extension questions are the standard shape here.

Recall card

  • Most likely to ask for classes, not functions. OOD is a distinct round or a large slice of one.
  • Model the entities and responsibilities first, then pick a structure per operation.
  • Leave an obvious extension point -- the follow-up is always "now add X". But do not over-abstract.
  • Composite structures are the recurring insight: map for lookup + list for ordering, because neither alone does both.
  • Practical data structures dominate -- caches, iterators, ordered collections. See the design-problems phase.

Self-check

quizCheck yourself
  1. A prompt says 'design an order book'. What should you do first?

    Show answer

    D — Name the entities and their responsibilities, then choose a structure per operation — Bloomberg leans toward object-oriented design. Model first, then pick data structures.

  2. Why do many Bloomberg data-structure questions want two structures cooperating?

    Show answer

    A — One gives O(1) lookup without order, the other gives order and O(1) removal of a known node; neither alone does both — A map plus a linked list, as in an LRU cache, is the recurring example. Saying why neither alone works is the answer they want.

  3. Your first design cannot cancel an order faster than O(n). What is the right response to the follow-up?

    Show answer

    B — Say what you would change, for example an id-to-node map — The follow-up is almost always 'now add X'. Acknowledging the gap and naming the fix scores better than defending the design.

Was this page helpful?

Let us know how we did