Join us as a Principal Engineer This is a challenging role that will see you design and engineer software with the customer or user experience as the primary objective You’ll actively contribute to our architecture, design and engineering centre of excellence, collaborating to improve the bank’s overall software engineering capability You’ll gain valuable stakeholder exposure as you build and leverage relationships, as well as the opportunity to hone your technical talents What youll do As a Principal Engineer, aligned to our ‘Manage My Account’ (MMA) team within core banking technology, you’ll be creating great customer outcomes via engineering and innovative solutions to existing and new challenges, and technology designs which are innovative, customer centric, high performance, secure and robust. MMA is comprised of a variety of customer account, accounting and interest capabilities housed within a multitude of applications which collectively service our customer base across the banks collection of franchises and product ranges. You’ll be working with software engineers in the production and prototyping of innovative ideas, engaging with domain and enterprise architects to validate and leverage these in wider contexts, by incorporating the relevant architectures. We’ll also look to you to design and develop software with a focus on the automation of build, test and deployment activities, while developing the discipline of software engineering across the business. You’ll also be: Defining, creating and providing oversight and governance of engineering and design solutions with a focus on end-to-end automation, simplification, resilience, security, performance, scalability and reusability Working within a platform or feature team along with software engineers to design and engineer complex software, scripts and tools to enable the delivery of bank platforms, applications and services, acting as a point of contact for solution design considerations Defining and developing architecture models and roadmaps of application and software components to meet business and technical requirements, driving common usability across products and domains Designing, producing, testing and implementing the working code, along with applying Agile methods to the development of software with the use of DevOps techniques The skills youll need You’ll come with significant experience in software engineering, software or database design and architecture, as well as experience of developing software within a DevOps and Agile framework. Along with an expert understanding of the latest market trends, technologies and tools, you’ll bring significant and demonstrable experience of implementing programming best practice, especially around scalability, automation, virtualisation, optimisation, availability and performance. You’ll also need: A strong background in leading software development teams in a matrix structure, introducing and executing technical strategies The ability to rapidly and effectively understand and translate product and business requirements into technical solutions Expertise in designing off-host applications based on microservices and micro front-end architecture Expertise with cloud services and platforms such as PCF, OpenShift, Docker and Kubernetes, along with gateways like Apigee, Tyk and Data Power Deep understanding of architectural, security, solution and microservices design patterns Strong understanding of integration patterns for legacy systems in hybrid environments Proficiency in testing frameworks such as Jest, React Testing Library, Selenium and Cypress