Software Developer (Land Registration)
£400-450 per day. Outside IR35
Remote for the 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 or Glasgow offices, for at least part of each week.
An experienced developer with solid commercial experience of building web applications and REST APIs using Spring Boot in an OpenShift environment is required to accelerate our delivery of new and improved digital services to our customers.
The Land Registration Domain is responsible for the two biggest (by volume of transactions) registers. Both of these registers are underpinned by aging legacy systems that are 20-30 years old. Currently there are two development teams within the Land Registration domain, working to replace the core Land Register Systems and implement a new Case Management system for the Land Registration processes. A third team focussed on the simplification and incremental replacement of the Sasine Register is the focus of this ITQ
Development and support of the technical solutions that
- Increase automation of the Intake of Sasine Advance Notices (ANs).
- Increase automation of the Intake of Sasine Application Forms (SAFs).
- Investigate, document, and propose an incremental roadmap for the replacement of a legacy monolithic application/database (CSR).
- Continued development and support of Land Registration products in line with the product and architecture roadmaps
- Demonstrate excellent, sustainable and collaborative software development practice that's focused on delivering highly readable, maintainable and appropriate artefacts.
- Actively participating in all team events, leading where specialist knowledge in required, and supporting the team to improve their process through inspection and adaptation.
- Engage with the wider communities of practice and interest to share knowledge, technique and experience.
- Ensure high quality of developed solutions through development and maintenance of unit tests - with appropriate code coverage - and code analysis using code quality tools.
- Ensure that developed software complies with non-functional requirements, such as accessibility, security, UI/UX, performance, maintainability, deployability, etc..
- Troubleshoot development and production problems across multiple environments and operating platforms, from the AWS-based modern stack to the multiple strands of ETL and database (legacy and otherwise) that underpins the service.
- Routinely use collaborative development practices such as pairing and mobbing techniques in programming, code reviews, system design and requirements analysis/refinement, etc.
- Coaching and mentoring other team members, as appropriate.
- Some of these services may need to be provided outside of our core business hours (07:30-17:30) in order to ensure continuity of service. The successful supplier is expected plan and manage their working hours accordingly.
Significant commercial experience with the following technology:
- Java 11
- Spring Boot microservices
- Spring security and OAuth2
- Modern DevOps and CI/CD practices including deployment pipelines, Jenkins and Docker
Significant and demonstrable commercial experience in the following areas:
- Delivering high quality software collaboratively in high-performing, cross-functional development teams.
- Designing, gaining consensus, and implementing technical solutions for software development projects
- Developing within Digital First or GDS quality standards
- Developing solutions using human-centred, research-driven, inclusive design practices
- Designing and implementing solutions using service and event-based architectures
- Using Test Driven Development (TDD) and Pair Programming to produce high quality, maintainable code
- Using Consumer Driver Contract Testing to verify system behaviour
- Cloud monitoring, telemetry, intelligence tools and processes, specifically Grafana and Kibana
- Incrementally replacing enterprise legacy systems
- Working in Agile delivery models
- Defining infrastructure as code
- Using UI pattern libraries to achieve consistent, tested and high-quality interfaces
- Code quality, monitoring, telemetry and analytics tools
- Designing and developing with relational and NoSQL databases, particularly Mongo and Postgres
- Knowledge of the Scottish Land Registration process
- Python 2.7/3.x
- AWS S3, API Gateway, Messaging and Queuing
- AWS IAM, Lambda, Aurora/Postgres
- AWS CDK and AWS based CI/CD pipelines