Our client is a well-established and rapidly growing firm with a leading platform for developing quantitative research and systematic investment ideas. They 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. Their platforms and technologies are constantly evolving to meet the real-world scenarios they throw at them and they are seeking world-class software engineers to join them.
A challenging distributed systems software development role is open within a specialist team responsible for understanding, processing and organising large research and realtime datasets. The team processes and streams tick data in real time to generate aggregates and advanced indicators from a variety of locations; imports exotic datasets from third party providers (social media, economic data, graph data, geographical data, etc.); stores it and serves it to the realtime and research platforms.
Within a collaborative environment, distributed systems developers work closely with other teams within the business including those within the Production and Research divisions to deliver outstanding data resources, and are responsible for end-to-end design and implementation.
Primary responsibilities of the role will include:
- Designing and implementing high-quality code to process and manipulate large datasets.
- Building cutting-edge tools and infrastructure supporting core facilities in the firm.
- Strong data management skills; advising cross-team initiatives; assessing frontier technologies
- Occasional full stack development – even though we’re primarily a backend team.
- Optimising data storage and modelling.
- Responding to the ever-changing requirements of the business.
The platform that the firm provides is used 24 hours a day, and all developers in the group have a responsibility to support production issues encountered in the data processing. This will include a share of overnight calls from within the firm.
The candidate must be a strong, competent, and practical software developer. They should be enthusiastic and have a genuine interest in the latest software technology.
Required skills & experience:
- A proven ability to develop high-quality software in an OO language.
- An appreciation of good software architecture, CompSci fundamentals & data structures.
- Demonstrable understanding of database design and use, or other data management techniques, both relational and non-relational.
- Experience with SOA, distributed systems.
- Experience of TDD and the ability to write clean code.
- Experience of agile methodologies and a familiarity with retrospectives and continuous improvement processes.
- A demonstrable desire to stay informed on the latest technologies and practices.
- A keen interest in applying continuous delivery principles.
Financial experience may be useful but is not required. Candidates from non-financial backgrounds are encouraged to apply.
Agile, TDD, SOA, Micro services, REST, EDA, Kafka, Sql, NoSql, DDD, Event Sourcing, Stream Processing, Batch Processing
Please send your CV to firstname.lastname@example.org
To apply by email to this position, please send your CV and covering letter to the following link:email@example.com@mindbench.co.ukTC100
NB: Mindbench is acting as an Employment Agency in relation to this vacancy