Optiver NG SDE interview experience sharing | OA + 3 rounds of technical interview full process review

36 Views
No Comment

This time I will share a story about North America Optiver Complete interview process for NG SDE. The overall rhythm can be described in one word: fast. You will receive an HR call the next day after your OA is approved, which hardly gives you much buffer time. The whole process is very focused on the underlying capabilities of the project, without taking fancy routes, and the inspection points are also in line with the real needs of the real trading system.

If you have previously prepared for a product-oriented Internet company, the style of this interview will be obviously different, with more emphasis on latency, memory, network, and underlying control capabilities.

Optiver NG SDE interview experience sharing | OA + 3 rounds of technical interview full process review

OA stage

OA is a conventional coding form, and the difficulty is not outrageous, but it attaches great importance to implementation quality and stability. Boundary conditions and complexity control must be clean. The overall style of Optiver is pragmatic and will not deliberately ask particularly convoluted questions, but you must write solidly enough.

Enter HR Call soon after passing.

HR Call

This HR round is extremely streamlined and only asks two questions:

  • How to arrange projects with tight deadlines?
  • Why Optiver?

It doesn't take long, but the answer must be crisp. Especially why Optiver, if you only give general answers such as "I want to do trading" and "High frequency is cool", you will appear unprepared. It is best to combine it with market maker background and engineering-driven culture.

The first round of technical aspects: basic abilities + simple system design

The first round is more basic, but the questions are very practical and won’t give you too much to think about.

The beginning is a memory calculation question. The question is given a linked list containing 1000 nodes. Each node contains an int and a pointer. The range of int is 0 to 16 million. How much space does the entire linked list occupy? What is examined here is not only how many bits are needed for int, but also issues such as pointer size, 64-bit machine environment, and structure alignment. If you only count 4-byte int + 8-byte pointer, the alignment details are likely to be missed.

Next is a language comparison, focusing on C++ and Java. The core lies in the differences in garbage collection mechanisms, memory management methods, RAII, deterministic destruction, etc. It is necessary to explain why low-latency scenarios prefer C++. The pause and uncontrollable delays caused by GC are key points.

Finally, there is a basic System Design, similar to designing the Ticketmaster ticketing system. It mainly discusses high-concurrency ticket grabbing, overselling prevention, locking mechanism and data consistency issues. This part is not very difficult, but the interviewer will see whether you can explain the system modules in a structured way.

In summary, the first round is to confirm whether your foundation is solid.

Second round of technical aspects: underlying trading system design

This round is the core of the entire interview and is obviously close to Optiver’s business scenario.

The topic is: Suppose you, as the CTO of a start-up trading company, trade BMW stocks on the Frankfurt Exchange in Amsterdam, only implement the buy/sell function, and design a complete trading system.

The discussion begins with server deployment. Is colocate in the exchange computer room? How is the impact of network distance on latency measured? Is an active/standby architecture required? These issues all revolve around latency.

Then moved on to network design. Are the market link and order link separate? TCP or UDP? Generally, UDP is used for market quotations to pursue low latency, and TCP is used for order placement to ensure reliability. Whether you need to customize the protocol, how to deal with packet loss, retransmission, and sequence issues will all be asked.

Then there is the system module division. It is usually broken down into modules such as Market Data Handler, Strategy Engine, Order Manager, Risk Control, and Gateway. How to implement communication between modules? Is it using shared memory, message queue, or lock-free queue? Do I need a single-threaded event loop? How to design the thread model?

Finally, we will ask about fault tolerance and risk control, such as disconnection and reconnection mechanisms, order resending strategies, kill switch design, etc. This round basically focuses on thinking about the underlying architecture. If there is no knowledge reserve related to the trading system, it will be more difficult.

The third round of technical aspects: Coding + OOD

The third round switched to coding plus object-oriented design. The scenario was e-commerce, but the essence still tested the system abstraction ability.

The question is given two interfaces: inventory flow and order flow. To transmit data in real time, a leaderboard service needs to be implemented. When a profitable new order appears, it is pushed to the trader through the display interface and sorted by profit from large to small.

The algorithm difficulty is not particularly high, but the questions are very long and contain many details. You need to consider how to design the class structure, how to maintain the profit sorting structure, whether to use a priority queue or an ordered container, how to avoid double calculations, and whether multi-thread safety is involved.

The interviewer pays more attention to whether the code structure is clear, whether the interface is reasonable, and whether the data update is efficient, rather than asking you to write complex algorithms.

Learn more

We have been following the NG / Intern / Experienced SDE interview process in North America for a long time, and are very familiar with high-frequency question types, questioning directions, and in-depth exploration of project details. Whether it is rhythm control in the OA stage or high-intensity coding + system digging in VO, we have a mature simulation system and actual combat Interview assistance Support.

author avatar
Jory Wang Amazon Senior Software Development Engineer
Amazon senior engineer, focusing on the research and development of infrastructure core systems, with rich practical experience in system scalability, reliability and cost optimization. Currently focusing on FAANG SDE interview coaching, helping 30+ candidates successfully obtain L5/L6 Offers within one year.
END
 0