Java Software Engineer

#R-00150377
Location
Warszawa, Poland
Contract
Permanent - Full Time
Brand
NatWest Group
Job category
Software Engineering - Technology
Posted
25/11/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 Software Engineer

  • This is an opportunity for a technically minded individual to join us as a Software Engineer
  • You’ll be working with new and innovative technology to deliver high impact solutions
  • Hone your existing software engineering skills and advance your career in this critical role

What you'll do

You’ll apply widely agreed software engineering principles and methodologies to design, develop, test and maintain applications and services to achieve the stated business and technology goals within required budgets and timelines. We’ll also look to you to oversee the quality of work, making sure that it meets the technical standards for all services output.

You’ll also:

  • Design and develop reusable libraries and application programming interfaces for use across the bank
  • Design and develop software that is amenable for a greater automation of build, release testing and deployment process on all environments
  • Support the reuse and sharing of platform components and technologies within the software engineering teams
  • Deliver software components to enable the delivery of platforms, applications and services
  • Write unit and integration tests, in automated test environments to ensure code quality

The skills you'll need

To make an impact with us you'll need to be a proficient Java programmer, with hands-on software development experience and a background in standing up micro-services using the Spring Boot framework. You'll demonstrate broad knowledge of DevOps practices and the use of CI / CD pipelines to automate the software delivery process, and the ability to create shell scripts and execute common commands in Linux.

You'll also need some understanding of how to expose data and functions using APIs, and facilitate stream processing using Kafka.

You’ll also need:

  • Experience of test-driven development alongside the use of automated test frameworks, mocking and stubbing and unit testing tools
  • Knowledge of the key phases of software delivery lifecycle and established software development methodologies
  • Experience of working in an environment where products must be delivered to specific timescales
  • An understanding of how to translate product and business requirements into technical solutions
  • The ability to understand and support, modify and maintain systems and code developed by other engineering teams