|Job Type:||Full Time|
The GWM (Global Wealth Management) Trading Middleware team is currently seeking a developer to join and drive a team responsible for the design and delivery of a strategic middleware architecture. The project focuses on design/build of Synapse, a core middleware framework with a central metadata engine, event based processing, control monitoring and distributed functional modules deployed on
the private and/or public cloud. Synapse is also being developed for adapting to non-trading workflows used in GWM.
This role requires a wide variety of strengths, capabilities and responsibilites;
- Participate in the design and delivery of strategic middleware application
- Design and build key software components of Synapse, a core middleware framework with a central orchestration engine; event based processing and distributed functional modules.
- Implement and test code for distributed event driven services which requires knowledge software development best practices.
- Work in close partnership with a group of developers across geographical locations. This includes meetings, emails and other interaction with the software development team.
- Work on an agile project environment, with the ability to work with the Product Owner and SCRUM Team from development through to testing and delivery of product increments.
- Understand the code quality, code security and application quality metrics in order to make intelligent decisions throughout the delivery lifecycle.
- Participate actively in the software development and architecture discussion, through a detailed understanding of current application development tools and techniques.
- Focus on engineering excellence and compliance with all corporate, regulatory, IT risk and architecture policies.
- Knowledge of industry-wide technology trends and best practices
- Passionate about building an innovative culture
- Strong server side development background with proven track record in designing and delivering distributed, event driven services and be able to demonstrate a detailed knowledge of architecture principles and software development best practices.
- Extensive knowledge of Java (8 or above) development including areas such as Spring, and Spring Boot.
- Experience of building a new system or module from scratch.
- Knowledge of web service technologies such as REST and JSON.
- Knowledge of application security areas: authorization, authentication, encryption
- Multi-threaded application development experience.
- Relational database and SQL proficiency
- Automated testing techniques – especially BDD.
- Experience working with Sonar, SSAP, JIRA, Greenhopper, GIT
- Strong written and oral communication skills.
- Strong team working skills and the ability to work on multiple parallel work items with other developers, analysts etc.
- Knowledge of Project & Program Reporting principles.
- BS/BA degree or equivalent experience
- Results oriented: Drives results through people, communication, influence and interaction.
- Experience in development of High Availability system architectures
- Cloud and/or similar distributed processing
- Ability to implement change and development process improvements, including required culture changes