Senior Java Developer
- Exciting and challenging role as senior Java developer in our Limits and Reporting space of the Investment Banking division of the Credit Risk Organisation
- Under the guidance of a Development Manager, work directly with allocated Project Managers, Business Analysts and external IT and business teams to perform technical analysis of the existing system, implement change requests and new features
- Provide support for the existing system where required
- Take responsibility for changes that go through multiple tiers from the Java application through to the back-end databases
Coding/other activities: 30/70
About the Project: Insight T+0 is the Investment Bank's global intraday pre-deal credit-checking system, which is on the critical path to booking FX and Derivatives trades. It helps to provide centralised intraday control over credit risk. Front-office trading systems are required to use T+0 to check whether a trade would breach pre-defined credit exposure limits for the trade's counterparty. T+0 maintains real-time intraday counterparty exposures and recalculates counterparty credit risk after each trade execution, enabling the new intraday exposure numbers to be available immediately.
The role provides the opportunity to participate in the development of T+0 - a mission critical, low latency, pre-trade credit-checking system. It has 24x5.5 uptime requirements and must support low latency responses to electronic trade execution platforms in four global regions within 5ms for spot and forward products. It is a key control system for managing the Investment Bank's Credit Risk.
The T+0 system is built using Java 8 and Spring and currently uses Oracle Coherence to provide low-latency computation grid. The T+0 development team includes senior developers, SMEs and an Architect.
Our team: The T+0 team is looking for a senior developer with strong core Java, Distributed Caching and database skills. Server-side programming with an emphasis on low latency systems is preferable.
The candidate will work within the development team in Wroclaw. This is part of a global team with members in UK, Switzerland, Poland and India. The overall team size is currently 13, including QA, BA, and Project Management individuals.
T+0 sits within Risk & Finance IT (RFIT), RFIT an approximately 400-person group supporting the investment banking part of the Chief Risk Officer (CRO) shared service function. RFIT designs, develops and supports the IT systems that measure and manage the market, credit and operational risk of the investment bank. The risks calculated by our systems are used in regulatory reporting, reporting to senior business and risk management and FO business leads
Technologies used: Java 8, Spring, Oracle Coherence
- Insight T+0 is the Investment Bank's strategic platform for providing an intraday pre-deal credit-checking service
- The project has already won prestigious industry awards for innovation and architecture design
- T+0 is operated on by a small, focused team transitioning to an Agile Scrum delivery methodology
- T+0 has strict low latency and high availability requirements requiring developers to focus on key NFRs in addition to delivering functional changes
- Functional and technical issues faced on the system have historically challenged our senior developers, leading to satisfaction from identifying and implementing solutions
- Working on the project allows for good exposure to front office trade execution and booking platforms along with the FX and OTC derivatives business the system supports
Who we're looking for?
- Strong Core Java developer with an emphasis on distributed, low latency, high availability systems
- Demonstrable experience with Dependency injection, preferably Spring
- Sound understanding of multi-threading (Java concurrency library) and Java memory management
- Experience with caching solutions
- Good understanding of messaging (JMS)
- Basic command of SQL (CRUD) and UNIX
- Knowledge and understanding of current best practices in OO design in Java development
- Experience with all phases of the systems development lifecycle
- Good written and verbal communication skills in English, Polish is a plus
- Experience in Oracle Coherence, Apache Ignite or Sybase are an advantage
- ORM (preferably Hibernate)
- Experience in TCP/IP networking and sockets programming
- Experience with Financial products - specifically FX and OTC derivatives products - would be advantageous
- Business knowledge of Credit Risk
- Willingness to provide application support to Front Office and Risk Management business clients including limited out-of-hours work e.g. L3 on-call support or weekend releases
- Test-driven development and design
- Agile working practices - Scrum / Kanban
- Experience of working in a continuous integration environment (TeamCity, Jenkins etc.)
- Experience with JMS and Enterprise Messaging technologies
- Experience with Sybase ASE (15/16) including performance improvement and stored procedure work
- Experience with Oracle Database
- Experience with JMX
- Experience with source control (Subversion/Git)
- Experience with DevOps technologies / methodologies
- Mentoring experience, especially with developers in different locations