o By our quantitative analysts in the tradng business for research and back-testing of their trading algorithms - these are used in the pricing, trading, hedging and orders algorithms for our Global Foreign Exchange business (GFX).
o For the testing and operation of our GFX algorithmic trading systems.
o For a wide range of data analytics.
o For reports for our customers, regulatory and internal financial markets trading desks
• Develop infrastructure and software for load balancing and scaling the architecture to support different business use cases and data growth.
• Development of tools and processes for automated deployment of services to our globally distributed infrastructure running on premise and on the cloud.
• Development of modules and services to be used as building blocks, such as data analytics, monitoring and metrics for both business trading and system events.
• Design and implementation of data feeds for trades, orders, exchange market data, HSBC tradable market prices and many other sources.
• Tuning and optimizing services and modules for performance and volume.
Operate according to industry best practices:
• Implement best-of-breed technical solutions based on agreed technical design, adopting industry standard development patterns and methodologies, including behavior-driven development with continuous integration / automated unit and integration testing.
• Work with other team members and liaise with nominated business stakeholders when required to ensure that business requirements are fully understood before commencing design and development.
• Draw-up detailed technical designs for components in response to business requirements and high-level technical architecture
• Fully test implemented solutions in advance of User Acceptance Testing
• Assist (when required) with the deployment of components to development and test environments
• Developers in our team are expected to own the end to end delivery of software from analysis through to release to production and support. We work in small iterative cycles and typically release software daily to production.
• Everyone in our team releases code to production, everyone in our team raises production change requests, everyone in our team does production support. Everyone.
• Participate in intra-day and overnight Support if and when required.
• Using the application’s functional and vector programming language to analyze and implement business requirements as requested.
Must• Must be passionate about technology and demonstrate their aptitude for exploring, learning and building technology.
• Be able to work well in a team and be an excellent communicator.
• Be interested in solving problems and flexible and adaptable in doing so.
• Be able to work under pressure and to deadlines in a dynamic environment.
• Practical basic knowledge of Linux – advanced knowledge is an extra advantage
• Interest in going through large datasets and information in order to understand issues and develop software solutions.
Nice to haveComputer Science graduate or mathematics background with considerable exposure to programming, although other backgrounds will be considered (e.g. physics, engineering).
Experience in any functional programming languages
Experience in any procedural programming languages like C or Python
Experience of R or MATLAB or any other statistics/numeric programming language you might get on with Q
- English: Advanced/Fluent