Software Engineer

Software EngineerL2Medium

DRW is a leading principal trading firm that employs sophisticated technology and risk management to operate across global markets. We are looking for talented Software Engineers to join our team and contribute to building and maintaining our cutting-edge trading systems. This interview process is designed to assess your technical skills, problem-solving abilities, and cultural fit within our fast-paced environment.

Rounds·3

Timeline·~14d

Experience·2 - 5 yrs

Comp band·US$110000 - US$150000

Interview time·135 min

Evaluation

What they measure.

  • Technical proficiency in relevant programming languages and data structures.
  • Problem-solving approach and analytical skills.
  • Ability to design and implement scalable and efficient solutions.
  • Understanding of software development best practices.
  • Communication and collaboration skills.
  • Cultural fit and alignment with DRW's values.

Preparation

How to prepare.

Tips

  1. Review fundamental data structures and algorithms.
  2. Practice coding problems on platforms like LeetCode, HackerRank, or AlgoExpert.
  3. Brush up on object-oriented programming principles and design patterns.
  4. Understand core computer science concepts such as operating systems, databases, and networking.
  5. Prepare to discuss your past projects and technical experiences in detail.
  6. Research DRW's business and the financial industry.
  7. Practice behavioral questions using the STAR method (Situation, Task, Action, Result).
  8. Prepare thoughtful questions to ask the interviewer.

Study plan

Fig · Study plan — 05 phases

01 / 05
01

Phase 01 of 05

Data Structures

Weeks 1-2: Data Structures (Arrays, Lists, Trees, Graphs, Hash Tables). Practice problems.

Weeks 1-2: Focus on core data structures (Arrays, Linked Lists, Stacks, Queues, Trees, Graphs, Hash Tables) and their common operations and time complexities. Practice problems related to these structures.

Questions

Commonly asked.

  • Write a function to reverse a linked list.
  • Given an array of integers, find the two numbers that add up to a specific target.
  • Design a URL shortening service.
  • How would you design a system to handle real-time stock price updates?
  • Tell me about a time you failed and what you learned from it.
  • What are your strengths and weaknesses?
  • Why are you interested in working at DRW?
  • Describe a complex bug you encountered and how you debugged it.
  • How do you approach code reviews?
  • What is the difference between a process and a thread?

Locations

Regional differences.

Fig · Regions — 03 locations

01 / 03

Location

Chicago

Interview focus

Problem-solving and debugging skillsUnderstanding of distributed systemsExperience with high-frequency trading concepts (if applicable)Adaptability to different technologies

Common questions

  • Describe a challenging technical problem you solved in a previous role.
  • How do you approach debugging complex issues?
  • Tell me about a time you had to work with a legacy codebase.
  • What are your thoughts on microservices vs. monolithic architectures?
  • How do you ensure the quality and reliability of your code?

Tips

  • Research DRW's specific technology stack if possible.
  • Be prepared to discuss your experience with low-latency systems.
  • Highlight any experience with financial markets or trading.
  • Emphasize your ability to work in a collaborative and high-pressure environment.

Rounds

Round-by-round.

Expand a step for evaluation criteria, sample questions, and prep notes.

DSA

Coding questions at DRW.

Frequently reported on DRW loops

Other guides

More at DRW.