Senior Java Developer

#R-00181245
Location
Warszawa, Poland
Contract
Permanent - Full Time
Brand
NatWest Group
Job category
Software Engineering - Technology
Posted
20/09/2022
Closing date for applications: 21/10/2022

Our people work differently depending on their jobs and needs. From home working to job sharing, visit the remote and flexible working page on our website to find out more.

This role is based in Poland and as such all normal working days must be carried out in Poland.

Join us as a Senior Java Developer

  • This is an excellent opportunity to produce resilient and long-lived software that meets current non-functional requirements
  • You’ll be designing, producing, testing and implementing working code, and taking responsibility for the full life cycle of the system
  • You’ll be delivering value to your team by creating and curating working software safely and rapidly, while honing your technical talents in this critical role

What you'll do

As a Senior Java Developer, you will join the existing development teams of 25+ developers working on strategic risk systems for the Risk and Finance Solutions department across London, India, Poland and Bulgaria.  The SRS and MRX teams cover the storage, query and analysis of trade and market risk, stress-testing and PL data, and regulatory reporting on behalf of the NWM investment bank. Our clients and stakeholders range from trading & front office, through market risk management, finance and treasury.

All of our risk systems are being significantly re-engineered to make them fit for purpose for the incoming FRTB regulation and ready to transition to Cloud provisioning. All our systems additionally are looking to enable features like data mining and data analytics as part of the re-engineering.

The role will involve working in partnership with system architects within and outside the team, the High-Performance Computing team, delivery and support teams, and other development teams.  The successful candidate will need to quickly become familiar with the system to deliver further functionality to the business and be involved in the evolution of key components within the system.

You’ll also be:

  • Improving performance through evaluating and analysing metrics
  • Applying Agile methods to the development of software
  • Designing and developing software with a focus on the automation of build, test and deployment activities, using executable patterns
  • Delivering intentional architecture and formulating emergent design
  • Mentoring junior developers on best coding and design practices

The skills you'll need

You’ll need a background in software engineering, software design or database design along with coding experience in multiple programming languages. We’ll look to you to have experience of implementing programming best practice, especially around scalability, automation, virtualisation, optimisation, availability and performance, and a track record of solving highly complex analytical and numerical problems.

You’ll be a very capable communicator, with the ability to communicate complex technical concepts clearly to your peers and management level colleagues, with good collaboration and stakeholder management skills.

Additionally, you’ll demonstrate:

  • Experience of working with code repositories, bug tracking tools and wikis (Java 8-17, Groovy, Spring Boot, Spock, Git, JIRA, Confluence)
  • Experience of DevOps and Agile methodologies and associated toolsets (microservices architecture patterns, Docker, Kubernetes, Infrastructure-as-Code, Terraform)
  • A background in test driven development alongside the use of automated test frameworks, mocking or stubbing and unit testing tools
  • Experience of caching and big data technologies like Oracle coherence and/or Apache Spark & HDFS, Hazelcast
  • Experience of designing and implementing API's
  • Experience developing applications running on Google Cloud Cloud platform