Stipend: ₹20,000 to ₹35,000 per month
- Application to view: ~1 week
- Assignment received: ~3 week after application
- Assignment deadline: 1 week to complete
- Response and interview scheduling: Took ~3 weeks
-
Interviewer 1 (Finance-oriented):
- What is Deribit?
- What is a dividend?
- Other finance-related concepts
- Questions related to my resume
-
Interviewer 2 (General/Behavioral):
- What is the most difficult course you encountered in your college curriculum, and how did you handle it?
- If you had unlimited resources and time, what would you build?
-
Interviewer 3 (Technical – DS & Assignment Focused):
- For an order book, which data structure would you prefer:
unordered_mapor a sorted array? Why? - What is the time complexity of
unordered_map? How and why can it increase from O(1) to O(n)? - What was the most difficult part of the assignment?
- What was the most bug-prone part of the assignment?
- What are the drawbacks of the
chronolibrary you used?
- For an order book, which data structure would you prefer:
-
Outcome: ❌ Rejected after this round
- However, they encouraged me to consider joining their bootcamp.
- They sent a recorded video of the google meet interview using Spinach ai after the interview ended.
Develop a high-performance order execution and management system in C++ to trade on Deribit Testnet.
- Create a new Deribit Test account.
- Generate API Keys for authentication.
- Place Order
- Cancel Order
- Modify Order
- Get Orderbook
- View Current Positions
- Implement a WebSocket server:
- Manage connections
- Handle client subscriptions to symbols
- Stream continuous orderbook updates for subscribed symbols
- Instruments: Spot, Futures, and Options
- Scope: All supported symbols on Deribit Testnet
- Full implementation in C++
- Demonstrate low-latency performance
- Proper error handling and logging
- WebSocket server features:
- Connection management
- Subscription handling
- Efficient message broadcasting
Measure and document:
- Order Placement Latency
- Market Data Processing Latency
- WebSocket Message Propagation Delay
- End-to-End Trading Loop Latency
Apply and justify optimization techniques for:
- Memory Management
- Network Communication
- Data Structure Selection
- Thread Management
- CPU Optimization
- Detailed analysis of bottlenecks
- Benchmarking methodology explanation
- Before/After performance metrics
- Justification for optimization choices
- Discussion on potential further improvements
- Complete source code with documentation
- Video recording demonstrating:
- System functionality
- Code review
- Implementation explanation
- If bonus section completed:
- Performance analysis report
- Benchmarking results
- Optimization documentation