DRW

Software Engineer - Research Technology

DRW

Singapore · Full Time

Be the first to apply

Experience
2+ yrs
Salary
Openings
1
Posted
1 week ago
Work mode
In office
Resume
Required to apply

Where you'll work

Sign in to tell us what does and doesn't work for you here — it sharpens every match we show you.

Job description

About DRW

DRW is a diversified trading company boasting over 30 years of expertise in merging advanced technology with outstanding talent to operate globally across various markets. Headquartered in Chicago, with offices in the U.S., Canada, Europe, and Asia, DRW engages in trading multiple asset categories including Fixed Income, ETFs, Equities, FX, Commodities, and Energy on major global exchanges. Beyond traditional trading, DRW has expanded into real estate, venture capital, and cryptoassets. The firm emphasizes autonomy, agility in decision-making, and conducts trading using its own capital and risk. The culture values respect, curiosity, innovation, integrity, and a willingness to challenge consensus.

Role Overview

The Software Engineer in Research Technology will join a compact team responsible for developing a software platform that enables researchers to conduct compute-intensive analyses on voluminous event-stream datasets. The nature of the workload parallels complex applications such as game engine replays, telecommunications packet processing, or large-scale streaming analytics platforms, tailored for financial market data.

The technology stack includes modern C++ for performance-critical ingestion and simulation components, Python alongside C++ bindings for research tools, and distributed computing managed across HPC clusters (currently Slurm, with plans evolving). The role involves delivering high-quality data, efficient and flexible computational tools, robust simulation and deployment mechanisms, and user-friendly interfaces facilitating rapid research iteration. Tasks encompass raw exchange data ingestion, distributed HPC orchestration, and developing researcher tooling.

Key Responsibilities

  • Develop, design, and maintain scalable, high-performance software and data systems used by quantitative researchers and trading teams.
  • Implement high-throughput raw exchange data pipelines utilizing modern C++.
  • Manage and enhance the reliability of data and computing pipelines operating on HPC clusters.
  • Build ad-hoc computation frameworks and research tools integrating Python and C++ to allow rapid data slicing, backtesting, and iteration.
  • Develop and maintain simulation frameworks that integrate closely with high-frequency/live trading platforms.
  • Assist in the training and deployment processes of quantitative trading models.
  • Monitor, troubleshoot, and administer distributed computing platforms.
  • Optimize software codebases with a focus on performance, stability, and resource efficiency across the full technology stack.

Required Qualifications

  • Minimum of two years professional experience developing large-scale, high-performance systems using modern C++ (version 17 or later) regularly alongside Python.
  • Strong foundation in computer science principles including data structures, algorithms, networking, operating systems, concurrency, and system design.
  • Proficiency in data engineering including schema design, storage format selection, comprehension of compression techniques and I/O considerations, and operating pipelines managing hundreds of terabytes of data. Comfortable working with columnar data formats like Parquet or Apache Arrow, or domain-equivalent event logging and telemetry data.
  • Experience in building and managing services or platforms utilized by other technical users within data-intensive settings.
  • Ability to support internal users effectively and refine ergonomics and workflows based on their needs.
  • Proven track record of safely and repeatedly shipping production-quality software with a strong focus on data-driven quality assurance.
  • Excellent communication skills both written and verbal, coupled with a collaborative and empathetic approach.

Desirable Skills

  • Knowledge of Rust programming alongside C++ and Python.
  • Experience operating large-scale compute clusters including job scheduling, resource management, retries, and maintaining reliability; familiarity with Slurm, Kubernetes, Ray, Spark, or custom schedulers.
  • Exposure to GPU programming techniques.
  • Background with machine learning or deep learning frameworks.
  • Prior experience in finance or market data environments, including low-level market connectivity.
  • Exposure to network packet processing or replay systems related to telecommunications or network appliances.
  • Experience with deterministic simulation and replay systems akin to game engines or distributed systems testing frameworks.
  • Experience in developer productivity or platform engineering focused on internal users, such as improving efficacy and safety for engineers or researchers, including via internships or open-source projects.

Interview Focus

Interview assessments emphasize computer science fundamentals, reasoning about correctness and performance under real-world constraints, quality of code, communication capabilities, and growth potential. Candidates’ prior industry depth is not paramount; instead, learning aptitude and responsiveness to feedback are critical. Knowledge of market microstructure is not tested and provided during onboarding. Applicants from big tech, telecommunications, gaming, or research computing backgrounds are encouraged to apply as they possess transferable experience.

Additional Information

DRW is committed to privacy and compliance; for details on processing applicants’ data, refer to relevant privacy notices. California applicants should review the California-specific privacy provisions accordingly.

How they work

Communication Teamwork & Collaboration Problem Solving Learning Agility Emotional Intelligence

Leave it if you'd like a reply — we won't use it for anything else.

Click to browse, drag & drop, or paste a screenshot

PNG, JPG, GIF, MP4, WebM, MOV · Max 20MB each · Up to 5 files

🤖
Online · instant AI help
Broxer