Software Engineer

Software EngineerL3Medium

This interview process is for a Software Engineer (L3) position at DRW. It is designed to assess a candidate's technical skills, problem-solving abilities, and cultural fit within the company.

Rounds·3

Timeline·~14d

Experience·2 - 5 yrs

Comp band·US$90000 - US$130000

Interview time·135 min

Evaluation

What they measure.

  • Problem-solving skills
  • Coding proficiency
  • Algorithmic thinking
  • Data structure knowledge
  • System design fundamentals
  • Communication skills
  • Teamwork and collaboration
  • Cultural fit

Preparation

How to prepare.

Tips

  1. Review fundamental data structures and algorithms.
  2. Practice coding problems on platforms like LeetCode or HackerRank.
  3. Brush up on object-oriented programming principles.
  4. Understand common software design patterns.
  5. Prepare to discuss your past projects and experiences in detail.
  6. Research DRW's business and values.
  7. Practice explaining your thought process clearly.
  8. Prepare questions to ask the interviewer.

Study plan

Fig · Study plan — 05 phases

01 / 05
01

Phase 01 of 05

Data Structures and Algorithms Fundamentals

Weeks 1-2: Data Structures & Basic Algorithms

Weeks 1-2: Focus on core data structures (arrays, linked lists, stacks, queues, trees, graphs, hash maps) and their common operations and time complexities. Practice basic algorithms like sorting (quicksort, mergesort) and searching (binary search).

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.
  • Explain the difference between a process and a thread.
  • How would you design a system to handle real-time stock price updates?
  • Tell me about a time you had to debug a complex issue.
  • What are your strengths and weaknesses?
  • Why are you interested in DRW?

Locations

Regional differences.

Fig · Regions — 02 locations

01 / 02

Location

Chicago

Interview focus

Adaptability to local market trendsUnderstanding of regional technology adoption

Common questions

  • Tell me about a challenging project you worked on.
  • How do you handle tight deadlines?
  • Describe a time you disagreed with a teammate and how you resolved it.

Tips

  • Research local tech communities and meetups.
  • Be prepared to discuss how your skills align with the specific needs of this office.

Rounds

Round-by-round.

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

Med

Technical Interview (Coding) · 45 min · Software Engineer

This round focuses on your fundamental programming skills. You will be asked to solve one or two coding problems, typically involving data structures and algorithms. The interviewer will assess your ability to write clean, efficient, and correct code, as well as your approach to problem-solving and your communication during the process.

What they look for

Ability to translate a problem into code.Understanding of time and space complexity.Clean and maintainable code.

Evaluation

  • Correctness of code
  • Efficiency of solution (time and space complexity)
  • Clarity and readability of code
  • Problem-solving approach

Sample questions

  • Given a string, find the length of the longest substring without repeating characters.

    StringSliding WindowHash Map
  • Implement a function to check if a binary tree is a valid Binary Search Tree.

    TreeRecursionBinary Search Tree

Prep for this round

  1. 01Practice coding problems on platforms like LeetCode (Easy/Medium).
  2. 02Understand the time and space complexity of your solutions.
  3. 03Be prepared to explain your thought process step-by-step.
  4. 04Write code that is well-formatted and readable.

Common rejection reasons

  • ×Inability to solve basic coding problems.
  • ×Poor understanding of fundamental data structures.
  • ×Lack of clear communication during problem-solving.

DSA

Coding questions at DRW.

Frequently reported on DRW loops

Other guides

More at DRW.