Skip to content

C++ Software Developer - New Grad

Headlands Technologies

About the Role

As a software developer at Headlands Tech you will design, engineer and implement the Firm’s trading software in the C++ programming language. You will work in close collaboration with the research, systems, and operations teams to architect, implement and analyze new automated electronic trading algorithms. You will play a key role in designing and constructing the Firm’s software infrastructure to support new and existing lines of business, and expand the Firm’s proprietary research platform to improve performance and support new exchanges, products and functionality.

  • Build, maintain, and improve exchange connectivity, extending existing infrastructure where necessary
  • Maintain and extend core research infrastructure and distributed storage systems
  • Investigate new technologies to improve stability, scalability, and performance of the trading system
  • Implement new trading strategies in collaboration with research and operations teams
  • Optimize the performance of the live trading system through profiling, tracing, lock free data structures, compiler intrinsics, and low level network programming
  • Build monitoring systems and conduct code reviews across developers, researchers and operations team members

Requirements

  • Preferred degree in any computing related area (e.g., computer science, computer engineering, etc.)
  • In lieu of this, extensive professional software development experience
  • Well-versed in the fundamentals of software engineering
  • Genuine interest in solving technical problems, along with a strong ability to implement solutions
  • Low ego, able to work both in a collaborative team setting and autonomously
  • Committed to designing and implementing fully automated, scalable, and maintainable solutions with extensive testing
  • Superior ability to write in C++, or experience with other statically-typed imperative programming language
  • Comfortable operating at various different levels of abstraction, from individual machines to large scale distributed systems
  • Strong knowledge of the details of computing all throughout the technical stack
  • Knowledge of Linux a plus
  • Experience in the trading industry preferred but not mandatory