F# Developer

Software Development London, United Kingdom


Description

Job Specification – Front Office F# Developer

The Company

G-Research is a well-established and rapidly growing firm with a leading platform for developing quantitative research and systematic investment ideas. We have created a community designed to inspire the best minds in the world to tackle the toughest intellectual challenges and deliver the best work of their careers. Our platforms and technologies are constantly evolving to meet the real-world scenarios we throw at them and we are seeking world-class software engineers to join us.

Traditionally a .NET and Microsoft house, as a successful and well-funded business G-Research are broadening the scope of the platforms and development tools we use.  We aim to use the best tools available for the job and are actively extending the use of open source and Linux-based technologies in the areas that they can make a real difference.  Developers with experience in these technologies can make a big impact - we are happy to hire people with a diverse range of skills, there's no specific requirement for experience with .NET. Technologically the sky is the limit and we are looking for the brightest and best developers in the world to take our capability to the next level.  This is an exciting time to join G-Research.

The Role

We’re looking for an exceptional developer from a top tier university to join a team of 8 developers called RQRD.  We are part of the Research Development Group which is a group of developers that works most closely with our quant researchers, in our case those who develop realtime investment strategies. 

 

Our mission is to maximize the quality and quantity of research the quants are able to develop and deliver to production.  This involves a large variety of tasks ranging from development of complex data analysis and simulation algorithms, implementation of experimental new investment components with requirements that aren’t really understood until the project is complete, to helping a very talented group of mathematical researchers with the tricky business of engineering software that needs to work on massive data sets.

 

This is a very exciting time for realtime quant research at G-Research as we have started to make some significant strides forward recently and a new member of this team will have the opportunity to contribute significantly in the future.

 

  • The team and our quant users code primarily in F#.  The core realtime platform is almost all in C#.
  • The research platform and the production system are tightly integrated and between them form a large code base with strict performance requirements.  This team works closely with, and shares many responsibilities with, the developers responsible for the core realtime platform.
  • Despite the work being focused around an existing system, this is not a software maintenance role as we are constantly being called upon to add new features, extend the platform and keep it current in a very competitive industry.
  • As we are a front-line development team working directly with quants we are often the first software developers to look at existing or new code that is not yet production quality.  We love functional programming and often find the principles it embodies help us to write correct and performant code, but our users are not experienced in this area and sometimes it is not practical for us to adhere to them strictly.
  • The team work closely with specialist quant researchers, helping them with daily tasks, but we are looking for a dedicated software engineer who enjoys the challenges of software development – the successful candidate will not aspire to a move into quant research.
  • The team operates in a fast-paced and constantly changing environment – we are looking for a developer who is capable of making quick decisions and is comfortable being accountable for the success or failure of their work.
  • The platform that the team improves is used globally, 24 hours a day in multiple asset classes - as such there is an element of support to the role.

The Individual

The successful candidate must be an experienced, competent, and practical software developer with:

  • Excellent academics – good A-level results combined with a 2.1 or better in Computer Science from a top university
  • Strong problem solving skills, with the ability to work independently on projects as well as part of a team in order to develop solutions and improve system architecture
  • The ability to communicate with non-technical users, both in order to understand exactly what their needs are and how we can help, and to teach or explain to them how to take full advantage of the research platform.  The users think in a very mathematical way so aptitude in this area is valuable.
  • An interest in a variety of different programming styles, including OO and Functional
  • Finance experience is useful but by no means a pre-requisite. Candidates from non-financial backgrounds are encouraged to apply.