Careers at Gambit Research

Gambit is always hiring clever developers with a deep understanding of computers and an interest in mathematical and logical thinking. We are also on the lookout for highly numerate and motivated undergraduates to monitor the computer software running our clients' high frequency trading strategies.see all positions 

Benefits

In addition to a generous salary and the opportunity to work as part of a world-class team of friendly people, we offer:

  • Discretionary bonus
  • Totally flexible working hours
  • Pension matching scheme
  • Private healthcare
  • Excellent holiday allowances
  • Sabbaticals for long service
  • Opportunities to attend conferences in the UK and abroad
  • Lots of technical books, always happy to buy more
  • Office chef twice a week
  • Employee days out
  • Height-adjustable desks
  • 2-4 monitors, mechanical keyboards, custom PC hardware


Software Development

Our software team is made up of some of the very best developers and mathematicians. Each brings a unique perspective from their backgrounds in computer science, physics, mathematics, statistics and engineering. Developing our real-time system means focusing on concurrency and speed as we deal with massive data sets at very low latency.

Gambit's trading platform runs 24 hours a day, 7 days a week. We use a system of continuous delivery to respond quickly to changes in our data sources while avoiding downtime. This supports a fast paced development team made up of self-motivated individuals who organise themselves into small working parties for specific projects. We have a lightweight system in place to conduct code reviews and keep code quality high.

Gambit developers start writing production code in their first week with the company and take on responsibilities fast. There are opportunities to be involved with the recruitment process and other business operations for developers who have an interest in those activities.

Role
As an Erlang Developer, you’ll be responsible for implementing new features for our system, diagnosing issues, and fixing bugs. We have a number of components that are mostly written in Erlang, which interface with external APIs and websites, normalise offers from different sources, process large quantities of bet placements, and manage strategies. You’ll have the chance to get up close and personal with these, enhancing your experience, whilst working on projects that have a real impact on the business.
Skills and Competencies
  • Previous commercial experience of programming in Erlang is essential. Knowledge of Python would also be a bonus, but is not essential
  • A working knowledge of algorithms and data structures
  • A working knowledge of relational databases and SQL would be very beneficial, but is not essential
  • An interest in new technologies, theoretical computer science, and/or mathematics
  • The ability to communicate well with others from a variety of backgrounds, and build strong, healthy, professional relationships
  • Problem solving skills, and the tenacity to resolve technical problems that you might not have seen before
  • Research and decision making skills, as you’ll be need to decide where to focus your learning, and what to focus on
  • The ability to work collaboratively and productively in a team, as well as on solo projects when needed
  • Openness to hear the technical suggestions of others, and find constructive solutions when these disagree with your own ideas
Qualifications and Experience
  • An excellent academic record, ideally a 2.1 (or higher) Bachelor's degree, in a relevant subject - or equivalent experience
  • Knowledge of Internet technologies and protocols
  • Experience developing with Linux, including the use of shell utilities such as grep, sed, find
  • An understanding of concurrency problems and solutions
  • Experience designing, implementing and maintaining distributed systems
full job spec 
Role
As an Experienced Python Developer, you’ll be responsible for implementing new features for our system, diagnosing issues, and fixing bugs. Many of the projects you’ll work on will be oriented to provide services for our customers, and you’ll be engaged in studying and improving how our customers interact with the system. Most of our components are written in Python, with C/C++ for high-performance components. They interface with external APIs and websites, as well as with our core system, which is mostly written in Erlang. This normalises offers from different sources and processes a significant number of bet placements and associated information. You’ll have the chance to get up close and personal with these systems, enhancing your experience, whilst working on projects that have a real impact on the business.
Skills and Competencies
  • Previous commercial experience of programming in an object-oriented, functional, or dynamic language.
  • Experience of developing in Python
  • A working knowledge of algorithms and data structures
  • A working knowledge of relational databases and SQL, particularly PostgreSQL
  • An interest in new technologies, theoretical computer science, and/or mathematics
  • The ability to communicate well with others from a variety of backgrounds, and build strong, healthy, professional relationships
  • Problem solving skills, and the tenacity to resolve technical problems that you might not have seen before
  • Research and decision making skills, as you’ll be need to decide where to focus your learning, and what to focus on
  • The ability to work collaboratively and productively in a team, as well as on solo projects when needed
  • Openness to hear the technical suggestions of others, and find constructive solutions when these disagree with your own ideas
Qualifications and Experience
  • An excellent academic record, ideally a 2.1 (or higher) Bachelor's degree, in a relevant subject - or equivalent experience
  • Previous experience of developing in a commercial environment
  • Knowledge of Internet technologies and protocols
  • Experience developing with Linux, including the Bash scripting and the use of shell utilities such as grep, sed, find
  • An understanding of concurrency problems and solutions
  • Exposure to a wide range of libraries and technologies such as Redis, Celery, Django, psycopg, Cap’n’Proto, protobuf, REST architecture
  • Knowledge of virtualization and deployment solutions, such as Docker, Kubernetes, and Ansible
full job spec 
Role
As an Experienced Gambit Developer working in the Gromit team, you’ll be responsible for implementing new features for our system, diagnosing issues, and fixing bugs. You’ll be part of the team developing, enhancing and operating Gambit’s algorithmic trading strategy platform. We have a number of components that are mostly written in Erlang or Python, which interface with external APIs and websites, normalise offers from different sources, process large quantities of bet placements, and manage strategies. You’ll have the chance to get up close and personal with these, enhancing your experience, whilst working on projects that have a real impact on the business. We work in a fast changing, live environment where accuracy and performance are crucial, and you’ll quickly have a direct impact on trading strategy performance.
Skills and Competencies
  • Strong knowledge of Python and/or C++
  • An openness to learning new technologies and languages
  • Comfortable with handling data in the Unix shell
  • Additional, particular strengths in one or more areas such as the following would be an advantage:
    • Deployment (e.g. Python, Ubuntu packaging; Docker; Ansible; Gitlab CI)
    • Concurrent programming
    • Network programming
    • Scientific computing (numpy/scipy; numerical optimization, e.g. linear programming)
    • Erlang (used by the core data platform)
    • Front-end web development (used by internal tools)
  • On an interpersonal level, we value:
    • The ability to work collaboratively and productively in a team, as well as on solo projects when needed
    • Openness to hear the technical suggestions of others, and find constructive solutions when these disagree with your own ideas
    • The ability to communicate well with others from a variety of backgrounds, and build strong, healthy, professional relationships
    • A pragmatic approach to problem solving, and the tenacity to resolve technical problems that you might not have seen before
    • Attention to detail
    • Patience and determination with difficult problems
    • Enthusiasm for solving challenging technical and trading problems
Qualifications and Experience
  • An excellent academic record, ideally a 2.1 (or higher) Bachelor's degree, in a relevant subject - or equivalent experience
  • Previous experience of developing in a commercial environment
  • Knowledge of Internet technologies and protocols
  • Experience developing with Linux, including the use of shell utilities such as grep, sed, find
  • An understanding of concurrency problems and solutions
  • Experience with a range of technologies and libraries
  • A familiarity with functional languages (Haskell, Scheme, Scala, Erlang, etc) and the willingness to learn Erlang, would be beneficial
full job spec 
Role
As a Gambit Python Developer in the Tools team, you will write code which helps the company to discover and fix problems with the betting platform, and help us provide tools for spotting long-term patterns. The team has a mixture of implementing new features and maintenance tasks.
Skills and Competencies
  • In-depth knowledge of the Python language, together with a broad knowledge of available python modules
  • Knowledge of JavaScript and React, or an interest in learning
  • Problem solving skills, and the tenacity to resolve technical problems that you might not have seen before
  • The ability to communicate well with others from a variety of backgrounds, and build strong, healthy, professional relationships
  • An interest in learning new skills and technologies
  • A working knowledge of HTTP and websockets
  • The ability to work collaboratively and productively in a team, as well as on solo projects when needed
  • Openness to hear the technical suggestions of others, and find constructive solutions when these disagree with your own ideas
Qualifications and Experience
  • An excellent academic record, ideally a 2.1 (or higher) Bachelor's degree, in a relevant subject - or equivalent experience
  • Previous experience of programming a significant commercial or open source project in Python (provide code or specific examples of what you did, if possible)
  • Knowledge of Internet technologies and protocols
  • Experience developing with Linux, including the use of shell utilities such as grep, sed, find
  • An understanding of concurrency problems and solutions
  • Experience with a range of technologies and libraries
Role
As a Gambit JavaScript Developer in the Tools team, you will write code which helps the company to discover and fix problems with the betting platform, and help us provide tools for spotting long-term patterns. The team has a mixture of implementing new features and maintenance tasks.
Skills and Competencies
  • Knowledge of modern web technologies such as webpack, ES7, and websockets
  • Knowledge of Python, or an interest in learning
  • Problem solving skills, and the tenacity to resolve technical problems that you might not have seen before
  • The ability to communicate well with others from a variety of backgrounds, and build strong, healthy, professional relationships
  • An interest in learning new skills and technologies
  • The ability to work collaboratively and productively in a team, as well as on solo projects when needed
  • Openness to hear the technical suggestions of others, and find constructive solutions when these disagree with your own ideas
Qualifications and Experience
  • Experience (commercial or open source) with modern JavaScript (React) front-end development (provide code or specific examples of what you did, if possible)
  • An excellent academic record, ideally a 2.1 (or higher) Bachelor's degree, in a relevant subject - or equivalent experience
  • Previous experience of developing in a commercial environment
  • Knowledge of Internet technologies and protocols
  • Experience developing with Linux, including the use of shell utilities such as grep, sed, find
  • An understanding of concurrency problems and solutions
  • Experience with a range of technologies and libraries
Role
We’re looking for Frontend Developer to join our growing internal Tools team. You’ll be working on interfaces built using a mixture of modern JavaScript, ReactJS, on top of Python services.
Skills and Competencies
  • Essential
    • The ability to code in JavaScript, gained through previous commercial experience, work on personal projects, or open source contributions
    • Exposure to cross-platform and cross-browser quirks and issues
    • An interest in new technologies and design trends
    • The ability to work with HTML5 and CSS3
    • Knowledge of React would be beneficial
    • The ability to communicate well, both in writing and orally, and quickly build strong, professional relationships with people from a diverse range of backgrounds
    • An enjoyment of working in a team, but you’ll also be able to work productively on solo projects
  • Desirable
    • A basic understanding of UX / UI principles.
    • Knowledge of Web technologies and protocols, e.g. WebSockets and ES7 syntax
    • A basic understanding of relational databases and SQL
    • Some exposure to build systems (Webpack)
    • The ability to use a server side scripting language, ideally Python, and a web framework such as Django
    • The ability to develop in Unix, including the use of Shell Utilities such as grep, sed, and find
Qualifications and Experience
  • An excellent academic record, preferably a Bachelor's degree or higher- or equivalent experience.
full job spec 

Infrastructure Engineering / System Administration / DevOps

Role
Our existing Infrastructure team is three people strong, and we’re looking for a committed, and passionate professional to join us.
Skills and Competencies
  • Essential
    • The ability to write and maintain good quality code, preferably with experience of Python and shell scripting
    • The skill to solve difficult problems via coding automation
    • An interest in infrastructure and Linux systems
    • The ability to self-manage and intelligently prioritise tasks
    • Good spoken and written communication skills, the ability to quickly establish strong and
    • professional working relationships with colleagues
    • Team working skills, whilst also being able to work productively on solo projects
  • Desirable
    • An in-depth knowledge of all hardware and software layers
    • A passion for high-quality monitoring/forecasting/measurement/alerting practices and tools
    • The ability to diagnose problems on production machines, as well as to perform post-mortem analyses
    • A good understanding of TCP/IP networks
    • Experience with, and knowledge of, using Git
    Qualifications and Experience
    • Experience with Linux systems administration at scale. We use Debian/Ubuntu systems, but would also consider someone with alternative experience, e.g. CentOS/RedHat
    • Experience with monitoring systems
    • Experience with configuration management software (we use Ansible)
    • Experience administering databases
    • Experience with Linux containers (LXC, Docker, Kubernetes)
    full job spec 


Interested?

To apply please solve our quiz or send your CV to jobs@gambitresearch.com.


© Gambit Research 2005–2018