Technical Lead (Supporting Finance)
£500 per day. Outside IR35
Homeworking for foreseeable
When the risk of COVID infection is eliminated or much reduced, we envision that many of the team and community activities will take place at our Edinburgh offices, for at least part of each week.
An experienced software engineer with solid commercial AWS development experience is required to provide hands-on technical leadership to an agile development team within Registers of Scotland's Supporting domain, and to act as a conduit between the development team and the Architecture Steering Group, helping to define and refine best practices, standards and architectural principles.
The main focus of the work will be the collaborative development of new serverless micro-services using AWS Lambda functions and Typescript/Javascipt. However, the Supporting domain also supports a number of legacy systems, hence a working knowledge of shell scripting languages, such as Bash, and Oracle databases, would be a plus.
Lead the development and delivery of:
- A new Invoicing Service to support multiple registers.
- A new Pre-Payment Service
- Lead the continued development and support of Supporting domain products in line with the product and architecture roadmaps
- Collaborating with colleagues from Product Management and Service Design to prioritise the backlog by providing insight into the architectural roadmap and the technical benefits that changes will achieve
- Extend and sustain the high-quality support procedures, dashboards, monitoring and deployment capabilities to ensure the team can continue to improve services via feedback.
- Technically lead the development team in both their tactical and strategic work to ensure the team delivers a cohesive solution that is well-architected and designed in line with RoS engineering principles and best practices.
- Actively participating in the RoS Architecture Steering Group and wider community, ensuring that architectural and engineering principles and best practices are defined, understood, agreed and adhered to.
- Actively participating in all team events, leading where specialist knowledge in required, and supporting the team to improve their process through inspection and adaptation.
- Building and maintaining an agile culture of continuous delivery and improvement, with a focus on frequently releasing high quality, tested, working software.
- Creating and maintaining an appropriate level of documentation, including architectural roadmaps and technical options assessments that can be effectively used to communicate to the team and wider stakeholders the technical vision of the products.
- Championing ideas/changes/designs that you and/or the team believe are beneficial, influencing peers and key stakeholders as appropriate.
- Ensuring that developed software complies with non-functional requirements, such as accessibility, security, UI/UX, performance, maintainability, deployability, etc.
- Collaborating with colleagues from Product Management and Service Design to prioritise the backlog by providing insight into the architectural roadmap and the technical benefits that changes will achieve.
- Troubleshooting development and production problems across multiple environments and operating platforms
- Coaching and mentoring other team members
- AWS including:
- Serverless (Lambda)
- API Gateway
- Cloud Formation
- Strong HTML / CSS skills and an awareness of accessibility considerations
Significant and demonstrable commercial experience in the following areas:
- Technically leading a high-performing, cross-functional development team.
- Designing, gaining consensus, and implementing technical solutions for software development projects
- Developing within Digital First or GDS quality standards
- Ability to engage with stakeholders, understanding context and requirements, from diverse areas of a business including Product Management, Service Design, and Operations
- Introduction of new or improved processes in development environments
- Developing solutions using human-centred, research-driven, inclusive design practices
- Designing and implementing solutions using service and event-based architectures
- Using testing tools for unit testing, including system test automation frameworks, including Cypress
- Cloud monitoring, telemetry, intelligence tools and processes, including Grafana
- Using written, verbal, and visual communication to explain complex topics concisely to both technical and non-technical audiences
- Incrementally replacing enterprise legacy systems
- Using Test Driven Development (TDD) and Pair Programming to produce high quality, maintainable code
- Working in Agile delivery models
- Defining infrastructure as code
- Coaching and mentoring other developers and team members
- As a large part of our IT estate is not AWS native, some experience of the following would be beneficial:
- Scripting languages, such as Bash
- Oracle databases
- Java and/or Python
- Kubernetes, especially Openshift