Join us as a Principal Engineer
- This is a challenging role that will see you lead design and engineer software with the customer or user experience as the primary objective
- You’ll be playing a major role in the 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 you'll do
As a Principal Engineer, you’ll be leading a team of technology experts to drive and adopt DevOps in Payments as well as lead the DevOps engineers. You'll be developing and owning the roadmap for end to end automation covering continuous integration, automation of testing, continuous deployment, release on-demand, metrics & measurements, and monitoring and control. We'll look to you to develop chapter expertise and share knowledge across PS&T.
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. 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.
Day-to-day, you'll be:
- 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
- Working with the various feature teams to produce software rapidly and of high quality which adds value to the business
- Determining the design and delivery approach for all of the platform’s software throughout its life
- 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
- Generating, monitoring, presenting and analysing relevant risk insights, costs, benefits of DevOps or automation
- Creating and promoting new culture and supporting personal development of teams
The skills you'll 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. We’d also like to see significant and demonstrable experience of implementing programming best practice, especially around scalability, automation, virtualisation, optimisation, availability and performance.
As well as expertise in the continuous deployment of business-critical systems to production, you'll have experience implementing everything-as-code from applications and platforms to automated chaos engineering. You'll also have experience within environments where software is deployed to virtual on premise or cloud environments such as AWS, Google Cloud, vSphere, Cloud Foundry, Kubernetes and BOSH.
Additionally, you'll need:
- A strong background in leading software development teams in a matrix structure, introducing and executing technical strategies
- Experience with Agile TDD/BDD or Test First development environments
- Familiarity with automation technologies such as CI/CD, and configuration management tools
- Significant and demonstrable experience of test-driven development and using automated test frameworks, mocking and stubbing and unit testing tools
- A background in designing or implementing APIs
- The ability to rapidly and effectively understand and translate product and business requirements into technical solutions
- A background of working with code repositories, bug tracking tools and wikis