📕 FREE Guide2025 Quant Firm Tier List

Tower Interview Questions

List of Real Interview Questions from Tower

71 Questions
Updated 2025

Quant Interview Questions

71 questions

1

Explain how data stored at a specific memory address is retrieved by an operating system.

Software Developer Interview
2

You are given n servers, each with a different capability. server[i] represents the time taken by the ith server to complete running an algorithm. You can schedule another instance of the same algorithm on the same server right after the current one finishes. For example, if server[i] = 2 seconds, you could schedule executions at 2s, 4s, 6s, etc., starting from time 0. Given k algorithms to execute, what is the minimum time needed to complete all k executions using the n servers?

Software Engineer Interview
3

Explain the typical latencies associated with different levels of CPU caches (L1, L2, L3) and how they compare to each other.

Software Engineer Interview
4

Describe the diamond inheritance pattern in object-oriented programming and explain how to resolve issues that arise from it.

Software Engineer Interview
5

Given a sequence of opening and closing parentheses '(' and ')', count the number of subsequences that form a balanced set of parentheses.

Software Engineer Interview
6

What are scheduling algorithms? Name and explain a few of them. What is priority scheduling and how is it implemented? If process A has higher priority than process B, how can you incorporate this into the algorithm?

Software Engineer Interview
7

Implement a throttler for web requests.

Software Developer Interview
8

1. Given two character arrays, message and filter, implement a function in C that removes every character from message, in place, that appears in filter. 2. Implement a function to compute the dot product of two vectors.

Software Developer Interview
9

There are 10 red, 11 blue, and 12 green chameleons. Sometimes, two chameleons meet. If they are the same color, nothing happens. If they are different colors, both will change to the third color. Can all chameleons ever become the same color?

Software Engineer Interview
10

There are 25 horses. You can race them 5 at a time, determining their relative rankings in each race. What is the minimum number of races required to determine the top 3 fastest horses?

Software Engineer Interview
11

Given 1000 bottles of wine, one of which contains poison, how many rats are needed to find the poisoned bottle if you can only run your experiment once and check the rats only once?

Developer Interview
12

What is the expected value when rolling a dice? What is the expected value if you are allowed a second roll whenever you feel the first result is not large enough?

Developer Interview
13

Given Corr(X, Y) > 0, Corr(Y, Z) = 0, Corr(X, Z) > 0, which is greater: the coefficient of X in the simple regression Y ~ X or the coefficient of X in the multiple regression Y ~ X + Z?

Quantitative Researcher Interview
14

Explain how gradient boosting works.

Quantitative Researcher Interview
15

What is the expected number of coin tosses required to get n consecutive heads?

Quantitative Research Interview
16

1. Determine if a tree is symmetric. 2. Find loops in a linked list and determine their lengths. 3. Solve the Knapsack problem using dynamic programming.

Quantitative Analyst Interview
17

Is the copy constructor inherited in C++?

Quantitative Analyst Interview
18

You have 1,000 coins on the table, with 20 showing heads and 980 showing tails. You may flip coins as you like. How can you separate them into two piles so that each pile has the same number of heads?

Quantitative Analyst Interview
19

What are virtual functions?

Internship Interview
20

You are given two identical eggs and access to a 100-storey building. The aim is to determine the highest floor from which an egg can be dropped without breaking. If an egg breaks from floor n, it would also break from any higher floor; if it survives, it will survive any lower fall. Once an egg breaks, it cannot be used again. What strategy should you use to minimize the number of egg drops required to find the critical floor? What is the worst-case number of drops needed?

Quantitative Analyst Interview
21

What is the number of ways to reach the n-th step of a staircase if one can jump either 1 step or 2 steps at a time?

Quantitative Analyst Interview
22

X1 and X2 are continuous independent and identically distributed random variables. What is the probability that X1 < X2?

Quantitative Trader Interview
23

A rabbit can jump either 1 or 2 steps at a time to climb a staircase with 'n' steps. In how many distinct ways can the rabbit reach the top? Express your solution in terms of the Fibonacci sequence.

Quantitative Trader Interview
24

Given a set of words (a dictionary) and a string of length n, determine whether the string can be segmented into one or more words such that each word belongs to the given set.

Intern Interview
25

A bowl contains n noodles. You randomly pick two free ends at a time and tie them together, repeating this until no free ends remain. What is the expected number of loops formed by the tied noodles?

Intern Interview
26

Given a linked list where each node contains an additional random pointer that could point to any node in the list or null, create a deep copy of the list.

Intern Interview
27

You are given n servers with different capabilities. Each server[i] represents the time taken by the ith server to run an algorithm completely. You can schedule another instance of the same algorithm on the same server immediately after the execution of the current one. For example, if server[i] = 2s, you can execute the algorithm at times 2s, 4s, 6s, and so on (starting at time 0). Find the minimum time required to execute a total of k algorithms.

Software Engineer Interview
28

Describe the diamond inheritance pattern and explain how to resolve the issues it causes.

Software Engineer Interview
29

Given a sequence of opening '(' and closing ')' parentheses, count the number of subsequences that form a balanced set of parentheses.

Software Engineer Interview
30

What are scheduling algorithms? Name and explain a few of them. What is Priority Scheduling and how is it implemented? Suppose you have to implement Priority Scheduling, and process A has higher priority than process B. How would you incorporate this into the algorithm?

Software Engineer Interview
31

Explain the difference between TCP (Transmission Control Protocol) and UDP (User Datagram Protocol).

Software Engineer Interview
32

Implement a throttler for web requests that limits the number of requests allowed in a given time window. Describe your approach and provide code to demonstrate how you would enforce this limit.

Software Developer Interview
33

1. Write a function void removeChar(char* message, char* filter) that removes every character from message, in place, that appears in filter. 2. Implement a function to compute the dot product of two vectors.

Software Developer Interview
34

There are 10 red, 11 blue, and 12 green chameleons. Sometimes, two chameleons meet. If they are the same color, nothing happens. If they are different colors, they both change to the third color. Can all chameleons ever become the same color?

Software Engineer Interview
35

There are 25 horses. You can race them 5 at a time, determining only their relative ranking within each race. What is the minimum number of races required to determine the top 3 horses overall?

Software Engineer Interview
36

Given 1000 bottles of wine, one of which contains poison, how many rats would it take to identify the poisoned bottle if you can only run your experiment once and check the rats only once?

Developer Interview
37

What is the expected value when rolling a die? What is the expected value if you are given a second chance to roll if you feel the first result is not large enough?

Developer Interview
38

1) Write a C++ program that reads PITCH data from standard input and, at the end of the input, prints a table of the top ten symbols by executed volume to standard output. Process Add Order, Order Cancel, and Order Executed messages appropriately according to the BATS PITCH specification. Ignore Trade Break, long messages, Auction Fill, and Routed Trade messages. Trade messages for hidden orders should also be considered for volume calculation. Provide a Makefile with a target named 'pitch_parser'. 2) Given a feature variable x and response y, write a Python program called local_linear.py to estimate the regression function f in y = f(x) + e using a local linear kernel estimator and k-fold cross-validation for bandwidth selection. Assume a Gaussian kernel. The program takes input files for x and y, an output file path, and the number of folds, and should write the fitted function's output at xin or another set of points. Include optional --plot and --xout arguments. 3) Given X'X (p x p) and X'y (p x 1) instead of raw data, implement forward stepwise linear regression in Python, optimized for computational efficiency and handling colinearity. The user specifies k, the max number of features in the model. The program should output coefficients for each step as rows in a k x p CSV, and be invoked with python stepwise.py --xx xx --xy xy --max_iterations 20 --output output. Include a brief documentation of your algorithm.

Quantitative Developer Interview
39

Given an array of numbers and a number x, determine efficiently whether there exist two elements in the array whose sum is exactly x.

Quantitative Developer Interview
40

Given an array of integers and a number K, how would you check if there are two elements in the array whose sum is equal to K?

Senior Software Developer Interview
41

A king orders 100 bottles of wine for a celebration. A courtier poisons one of the bottles. The king can test for poison by giving a few drops of wine to a monkey, who will die immediately if the wine is poisoned. What is the minimum number of monkeys needed to find the poisoned bottle?

Senior Software Developer Interview
42

What is the difference between L1 and L2 regularization?

Quant Researcher Interview
43

Given a binary matrix (containing only 0s and 1s), find the size of the largest square submatrix that contains only 1s.

Java Developer Interview
44

How many ways are there to climb a staircase if you can walk up either one step or two steps at a time?

Infrastructure Developer Interview
45

How do you determine whether a computer is big-endian or little-endian?

Infrastructure Developer Interview
46

Given an array of integers and a number K, how can you check if there are two elements in the array whose sum is equal to K?

Senior Software Developer Interview
47

A king orders 100 bottles of wine for a celebration. One bottle is poisoned. The king can test the wine by giving drops to monkeys, and if a monkey gets poison, it dies immediately. What is the minimum number of monkeys needed to identify the poisoned bottle?

Senior Software Developer Interview
48

Given an array, determine if there exist two numbers whose sum is zero. How would your approach change if the hash table implementation is non-ideal?

Summer Intern Interview
49

Explain how data at a specific memory address is retrieved in an operating system.

Software Developer Interview
50

You are given n servers, where each server[i] represents the time taken by the i-th server to run an algorithm completely. You may schedule consecutive instances of the algorithm on the same server, starting at time 0 (e.g., if server[i] = 2s, jobs may start at 0s, 2s, 4s, 6s, etc.). Given k total algorithms to execute, find the minimum time needed to complete all k executions.

Software Engineer Interview
51

Describe the diamond inheritance pattern and explain how to resolve the issues it creates.

Software Engineer Interview
52

Given a sequence of opening '(' and closing ')' parentheses, count the number of subsequences that form a balanced set of parentheses.

Software Engineer Interview
53

What are scheduling algorithms? Name and explain a few of them. What is priority scheduling and how is it implemented? Given that process A has higher priority than process B, how can you incorporate this into the priority scheduling algorithm?

Software Engineer Interview
54

Implement a throttler for web requests that limits the number of requests allowed over a given period.

Software Developer Interview
55

1. Write a function void removeChar(char* message, char* filter) that removes every character from message, in place, that appears in filter. 2. Implement a function to calculate the dot product of two vectors.

Software Developer Interview
56

There are 10 red, 11 blue, and 12 green chameleons. Whenever two chameleons meet, if they are of different colors, both change to the third color; if they are the same color, nothing happens. Can all the chameleons ever end up being the same color?

Software Engineer Interview
57

There are 25 horses. You can race up to 5 horses at a time, and each race reveals the relative ranking among the 5. What is the minimum number of races required to determine the top 3 fastest horses?

Software Engineer Interview
58

Given 1000 bottles of wine, one of which is poisoned, what is the minimum number of rats needed to identify the poisoned bottle if you can only conduct one experiment and check the results once?

Developer Interview
59

What is the expected value when rolling a die? What is the expected value if you are allowed a second roll if you feel that the first result is not large enough?

Developer Interview
60

Given 25 horses and a racetrack with 5 lanes, what is the minimum number of races needed to identify the fastest 3 horses?

Trading Interview
61

Given k sorted arrays of size n each, build a single sorted array of size n * k.

Trading Interview
62

What is the expected number of coin tosses required to get two consecutive heads?

Trading Interview
63

Given a complete binary tree where the total number of nodes is unknown, can you insert another node in less than O(n) time complexity? I was able to achieve (log n)^2.

Core Software Developer Interview
64

When rolling a fair six-sided die, what is the expected number of rolls required to get the first 6?

Quantitative Researcher Intern Interview
65

What is the difference between 'T const* A' and 'const T* A' in C++?

Quantitative Research Intern Interview
66

Given three lists of n numbers each, choose one number from each list such that the difference between the maximum and minimum of the three selected numbers is minimized. What algorithm would you use to solve this problem efficiently?

Quantitative Researcher Intern Interview
67

For a fair six-sided die, what is the expected number of rolls needed to get the first 6?

Quantitative Researcher Intern Interview
68

What is the difference between 'T const* A' and 'const T* A' in C++?

Quantitative Research Intern Interview
69

Given 3 lists each containing n numbers, select one number from each list such that the difference between the maximum and minimum of the three selected numbers is minimized. What is an efficient algorithm to solve this problem?

Quantitative Researcher Intern Interview
70

What is the difference between the 'is' operator and the '=' operator in Python?

Development Tools Engineer Interview
71

Given a binary grid representing a map of islands (1 = land, 0 = water), what is the maximum possible size of an island (group of connected ones) if you are allowed to flip any single row so that all its entries become 1?

AI/ML Intern Interview