Optiver Software Engineer Interview Guide
Understand the qualifications and background you need to become a software engineer at Optiver.

Introduction
Optiver's software engineering career path is one that is incredibly exciting and intellectually stimulating. As one of Optiver's software engineers, you will be at the forefront of the software systems that support and complement high-frequency trading operations.
This guide will take you through Optiver's values and work culture, the prerequisites, and Optiver's interview process to become a software engineer. We will also provide you with resources and advice to help boost your application, with the aim of maximising your chances to secure your dream quant role.
Software Engineering at Optiver
Optiver is a proprietary trading firm and market maker for various financial instruments. Optiver has been improving markets and providing liquidity globally since 1986, making them one of the oldest in the industry.
The firm has more than 2000 employees and 10 office locations, including Amsterdam, London, Chicago, Austin, Sydney, Singapore, Shanghai, Hong Kong, Taipei, and Mumbai.
Optiver promotes a competitive yet collaborative work environment. Exceptional software engineers appreciate continuous learning, challenge assumptions, and work with team members on innovative and creative projects. Actively seeking out challenges and stepping out of comfort zones are also practices that Optiver strongly encourages.
Working as a software engineer is known to be a difficult position. It is a high-pressure environment which involves complex mathematics and statistics. However, Optiver understands the magnitude of these challenges that you will face on a daily basis as a software engineer, and ensures you, coupled with your talent, are nurtured and empowered.
Your Background
In general, to become a software engineer at Optiver, you must meet certain prerequisites, which must be displayed on your resume when you apply.
Once you meet these prerequisites, then you can start working on stand-out projects and accomplishments that will keep you competitive in the interview process, and maximise your chances of landing the role.
Prerequisites
In order to be considered for an interview for a software engineering internship or graduate position at Optiver, you must have the following prerequisites:
- Are working toward a Bachelors, Masters, or PhD in computer science, software engineering, or any related field
- Passionate and intrigued by the continuous development and improvement of computre architecture and software systems
- Strong understanding of computer architecture and system operations
- Proficiency in coding languages such as Java, Python, or C++
To learn or reinforce fundamental computer science concepts, learn by doing with our courses in Data Structures and Algorithms in Python.
To be more competitive within the interview process, consider these attributes and qualifications:
- Experience in competitive and strategic environments to a high/professional standard (e.g. sports, chess, esports)
- Strong software projects/employment in quantitative domains (e.g. Options pricing model, volatility estimator)
- Participating and being successful in algorithmic trading competitions
- Advanced quantitative, logical, and problem solving skills, coupled with passion for the financial industry
- An advanced analytical mindset and strong problem-solving skills
- Experience in system design and system architecture
- A competitive GPA and academic record
Please note that these are a few attributes that would be beneficial to improve your chances of landing a software engineering position. There are multiple other experiences/qualifications that will also be beneficial, but the qualities from these attributes are highly valued for software engineers at proprietary trading firms.
Your Application
The software engineering application process can be quite daunting for first-timers, especially when coupled with the difficulty of the OAs and interviews thereafter. Therefore, it is imperative to study the application process to get a competitive advantage (as you are doing now!).
You will be asked to fill out a range of questions, including your degree, your GPA, your graduation date, your resume, and so on.
The main focus is on your resume, which will contain your:
- Career objectives and overview
- Area of study and academic performance
- Experience and projects
- Extracurricular/competitive achievements
- Characteristics and interests
It is important you structure your resume correctly. We recommend a platform such as resume.io to assist you with building your resume.
Round 1: Online Assessments
After you submit your application, you should recieve an online assessment link anywhere from a few minutes to a few days. You are given one week to complete four online assessments. These assessments are detailed below:
1. Programming
Optiver's programming online assessment consists of 2 programming questions to solve within a 2-hour time limit. One question is technical pertaining to quantitative concepts, and the other question is focused on object-oriented programming design.
The available programming languages are Java, C++, C#, C, Ruby, etc. Please note that you cannot complete Optiver's programming online assessment in python.
When approaching these questions, be very mindful of you time/space complexity, as well as your programming practices. While it is beneficial to at least reach a solution, the most competitive applicants will achieve a solution in the least time/space complexity possible, with clean, reusable code.
You can practice quantitative online assessment questions with our technical programming questions.
2. Technology
The technology online assessment comprises of 20 computer science multiple choice questions with a 20 minute time limit. Topics within this online assessment include networking, system design and architecture, security, and general coding concepts.
You can practice Optiver's technology online assessment using our accurate Optiver technology OA tool.
3. Zap-N Cognitive Assessment
The Zap-N assessment is a series of games that test various cognitive abilities, including reflexes, problem solving, and decision making. This online assessment concists of 9 games, and takes a total of 1-2 hours. The following are all the games played:
- Barbeque Game - You must take meat off of a grill at the optimum time, after they are cooked but before they are burnt. The game gets more and more difficult the period you can take the meat off gets shorter, and more meat get added to the grill.
- Number Box - The number box test shows 4 numbers, with a destination number. The aim is to use {+, -, *, /} operations on these numbers to reach the destination. You can practice this with our Number Box tool.
- Digit Memorisation - A series of digits will be shown on the screen, and you have to memorise these and type them after they are gone. In round 2, you will have to enter the digits in reverse. The numbers get larger and larger as you go.
- Figure it out - In this game, you must create an exact replica of a hidden figure, which is revealed only at the end of the round. After each attempt, you'll receive feedback on how many properties you got right or wrong, helping you refine your guesses to minimize moves.
- Skyscrapers - In this game, you must rearrange a set of towers to match a given example, moving only the top floor of each tower at a time. This game very similarly represents the Tower of Hanoi.
- Switches - In this game, you are given two prompts each round: a simple addition equation and two sets of arrows, and you must answer a question about one while ignoring the other. The game tests your ability to switch between mathematical and visual tasks efficiently.
- Balloon Game - You pump air into a balloon to earn money, with its value increasing as it grows, but risking a burst means losing everything (and facing a penalty in the second round). The game tests your risk-taking ability and how well you learn from past decisions to balance reward and risk.
- Comparisons - You are shown a 7-character code and must quickly select the exact replica from four options, with the time limit decreasing as the game progresses. The game tests your memory and recognition skills under pressure.
- Shape shifting - Circles and squares flash alternately on the screen, and you must press the right arrow for a circle and the left arrow for a square. The game tests your response time, challenging you to balance speed with accuracy, encouraging you to start slow and increase pace as you improve.
We know, quite a long and difficult examination! We recommend you take breaks in between games to refocus.
4. Zap-Q Assessment
The Optiver Zap-Q Assessment is a multiple choice personality test, and is not really something you can 'practice' for. Here, you should aim to answer honestly. Authenticity is key!
Round 2: HR Interview
If you progress to this round, then congratulations! You're one step closer to becoming a software engineer at Optiver.
The HR Interview is super crucial for your success at Optiver as a software engineer. In the interview, you will discuss over the phone with a member of Optiver's HR team (who has a technical background, by the way) your qualifications, background, and skills, as well as your motivations for applying and cultural fit with the firm.
The following are types of questions that you may encounter in an HR Interview:
1. General Questions
General questions regarding your motivations, values, personality, and work style allow the interviewer to further understand how you will integrate into the work environment.
You can see examples of these types of questions in our common general questions list.
2. Background Questions
These questions dive into your previous work experience, projects, and education to get a better understanding of how you qualify for the role.
To see these types of questions, view common background questions.
This interview section is very overlooked. Make sure you deeply understand the Optiver's values and mission (as described above) before going into the interview.
Also, be confident and authentic, and prepare your experience and projects in an orgnaised and professional way.
Round 3: Technical Interview
You made it to the penultimate interview round, congrats! You've made it so far. However, your next interview will be tough.
In this technical interview, you will be interviewed by an experienced software engineer at Optiver, and will undergo an hour of computer science related questions/projects. Let's break each question type down:
Programming OA Reflection
The interviewer will likely go through your provided progamming solutions in your programming online assessment. You may be asked how your solution could be improved, in terms of programming practices and time/space complexity.
Be sure to keep this in mind when you go through the online assessments. This question will favour those who reflect on the problem and their solutions in the online assessment, and understand the errors/bad practices the solution had. Self reflection is key!
Programming
Similar to the programming online assessment, you may be tasked with creating a function or class which provides a programming solution for a particular problem. Similar to the online assessment, be conscious of your time/space complexity, and ensure you are using sound programming practices.
High Level System Design
You will be prompted to explain how you would implement a specific application at a high level. Questions such as, "how would you implement uber?" or, "How would you implement zoom?" may be asked.
Your response should include a high-level explanation of the system, i.e. Data Processing, Notification Systems, API Gateways, Databases, etc. It is imperative that you understand the basics of networking protocols, TCP/UDP - specifically speaking, their tradeoffs and where they are implemented.
Final round: Superday
If you have made it this far, congratulations! You've done very well. But you have one more interview to demonstrate your tech competency before becoming a software engineer at Optiver. In your final round interview, you will be rigorously tested for your technological understanding and application skills. Your interview will be split up into four main parts:
HR and Software Engineer Chat
This is a conversational, casual interview to get a sense of your passions, qualifications, experience, how you would contribute to Optiver's mission, and Optiver's work environment. You will be interviewed by a recruiter, as well as an experienced software engineer.
In this conversation, demonstrate your passion and curiousity for proprietary trading, financial markets, and technology. Ask insightful questions, regarding quantitative finance in general and exclusive insights into Optiver. And don't forget to just be yourself!
Technology Fundamentals
In this, you will be asked a range of computer science concepts, in which you answer to the best of your ability. A great deal of these questions stem from concepts in our Optiver technology OA tool.
Other questions may include the fundamental differences in programming languages, such as difference in runtime between python, Java, and C++, interpretation and compilation, etc. Make sure to brush up on your computing systems knowledge, networking, security, and general coding concepts.
System Design and architecture
System design is arguably the most difficult component of Optiver's software engineering final round interview. You may be asked questions such as, "How would you design a market data feed system that ingests and processes stock prices, option prices, and other market data in real-time?".
You will have to discuss specifics within your solution, describing:
- High-Level Design: Core concepts, icluding Data Processing, Notification Systems, API Gateways, Databases, etc. Clearly define how these components will interact with each other (e.g. data flow, synchronous vs asynchronous communication, etc)
- Data Storage: How will the data be stored? Choose the right database based on the structure and needs of your data.
- APIs & Microservices: What APIs do you need to connect with your system?
- Scalability: Horizontal vs vertical balancing, load balancing, caching, partitioning.
- Edge cases: How may this system fail is certain circumstances? Address these special cases.
For the system design section, it is super important you understand basics of networking protocols, TCP/UDP - their tradeoffs, and where they are used. You may also have to perform back-of-the-envelope calculations to estimate the system's capacity and/or performance.
Project Deep Dive
In this interview, you go over a technical project that you have worked on in detail. You will have to explain the reason you made it, what problem it solves, what libraries and algorithms you used, and a demonstration of the working product.
Make sure you know your projects inside out! Often when you finish a project, you may forget how you solved specific problems. Make sure you remember your entire codebase/project base.
Success and Beyond
If you have made it this far, then congratulations! You have been selected to be a software engineer at Optiver.
However, despite coming so far to reach this point, it's certainly not the end of the struggle within your quantitative journey. If you are accepted into the internship program, you must stand out within your technological domain in order to recieve a graduate offer.
Stay humble throughout your first few weeks of Optiver, continue embarking on your journey for continuous learning, and keep an open mind throughout your quantitative career. But for now, celebrate your win, you deserve it!
Closing Remarks
If you are feeling quite overwhelmed by the complexity and length of the Optiver software engineering interview process, that is totally normal! By reading this, and understanding the interview process holistically, you have already gained a competitive advantage over most applicants.
To gain an even further advantage in the interview process, it is imperative that you start preparing early and stay consistent in your preparation. Many applicants fail to delegate adequate time for interview preparation, or overlook interview preparation in general, leading to their absolute demise in the interview process.
For competitive jobs, interviewing is a must-have skill. Please understand, software engineering at quantitative finance firm is super competitive, with only a select few that will fill in positions. To stand out, and maximise your chances of securing your dream position, you must prepare early.
Further, if you feel that you're not up for a software engineering position at Optiver, the biggest mistake you can do is not apply! You miss all opportunities you do not take. And understand that all successful software engineers in ALL industries have imposter syndrome at several points within their career.
Overall, becoming a software engineer at Optiver is a highly exhillerating and fulfilling career path, and with enough preparation and knowledge, you will be well-positioned to crack the interview process, and land the position.