Lead Software Developer - Companies House - SEO
Government Digital & Data -
We are looking for talented Lead Software Developers to join us at Companies House, you can be part of an exciting transformation in the world of corporate governance; empowered by the ground-breaking legislation of the Economic Crime and Corporate Transparency Bill.
We have a large estate of services which we develop in Java using the Spring Boot framework, and Typescript using the Node.js framework with Express. We use the Gov.uk Design System (GDS) for our User Interfaces. We also have older J2EE applications which we are in the process of modernising.
We are looking for expert developers in these technologies! While we would expect you to be very experienced in either Java/Spring or Typescript/Node we like to hire inquisitive developers who value continuous learning, and we will support you in learning all the development technologies we use at Companies House. As a Lead Developer, over time you will be expected to be familiar with all these technologies.
Watch this video to find out more about working in Digital at Companies House
Companies House offers a flexible and welcoming culture that promotes a healthy work life balance as well as a proactive approach to wellbeing that allows us to be our best at work. We recognise that people are the key to our success so offer a fantastic benefits package including flexible working with no core hours, 30 days annual leave, 8 bank holidays and 1 privilege day as well as enrolment into the Civil Service Pension scheme with a contribution rate averaging 28%.
We are currently using a hybrid approach to the way we work. Remote contracts will only be offered to successful candidates who are not within a commutable distance to our Cardiff, Belfast or Edinburgh offices. If you are located in a reasonable distance to one our offices, you will receive a hybrid contract aligned to one of our offices.
Find out more about what a great place Companies House is to work
Job description
As a Lead Developer you may be asked to work in one of two areas – either leading a Scrum team, or to work as an individual contributor as part of our R&D Team. There may be opportunity to move between the two areas in the future, but you will be allocated an area during the offer process, if you are successful in your application. You will be asked for your preference at interview, and we will try to accommodate where possible, given the needs of the business.
- As a Lead Developer managing a Scrum team, you will line manage other developers, seniors and juniors. You will work in a cross functional team with delivery colleagues using agile practices and the normal agile ceremonies, to deliver software projects. You will provide coaching and mentoring to the team and help them deliver at pace. You will use your development and people management experience to create a high functioning software development team. A team will typically consist of around eight developers at various levels of seniority. You will be working on services at the heart of our estate.
- As a Lead Developer working as an individual contributor as part of our R&D team, we are looking for a broad skill set (given the foundation languages and frameworks noted above). We value fast learners with a flexible approach. Our R&D team supports the rest of our development department, and the business in general, with Proof of Concepts, technical evaluations and investigations. It is a fast-moving environment where your hands on software development skills will come to the fore.
We very much encourage innovation and training; every developer is given time to undertake innovation and training within their regular activities. This allows developers and teams to try out new things, stay up to date with industry trends and continue their professional development. We provide access to online training platforms, access to instructor led training and ability to attend conferences (budgets permitting). We have a thriving community of practice.
As a Lead Developer managing a Scrum team, you will:
- Provide technical Leadership to your team.
- Coach and support your team to upskill their technical capabilities and ensure they design and deliver efficient and maintainable solutions.
- Communicate between the product owners and developers to ensure key deliverables are achieved and understood by both parties.
- Work with the wider developer community to define and document technical standards.
- Help and encourage your team to maximise their automated test coverage.
- Work closely with the Architects for design and the Platform team who manage our development pipeline using Concourse CI, SonarQube, AWS, Terraform and Artifactory. We use Docker containers and AWS ECS.
- Take the lead in sharing your knowledge and experience within our software development and lead software developer communities.
As a Lead Developer within our R&D Team, you will work within a team of other Lead Developers as an individual contributor. You will use your highly technical skillset to:
- Develop and deliver Proof of Concepts.
- Evaluate different technologies for fitness of purpose and suitability for wider user.
- Investigate ongoing issues (process/systems/projects) and seek resolutions.
- Support Scrum teams where required.
- Show flexibility and maturity of approach.
- Keep up to date with technology advances.
- Approach problems in an analytical way.
- Accurately record and document findings.
If you are looking for a place where you can focus on your own development as well as support others to succeed and perform at their best, then this is the role for you – either leading a Scrum team or working as a member of our R&D team.
This is an exciting time to join us as we constantly evolve our own technical capabilities and ways of working to make our work at Companies House more efficient and easier to use for our users and customers.
You will be joining a passionate team of Developers with varying levels of technical abilities. There are many other experienced Lead Developers and Principal Developers within Companies House, so you will be surrounded by a friendly community of experts who will fully support you.
Please note - this role requires Security Clearance. See the section 'Things you need to know' to find out more.
Person specification
We're looking for the following experience and technical capabilities, which will be assessed at sift and at interview.
- Extensive software engineering experience, with excellent technical skills and the ability to complete detailed design. A degree in computing or similar would be an advantage.
- Excellent coding skills which must include Java / Spring Boot and/or Typescript / Express / Node.
- Mentoring experience or can demonstrate experience of leading a team.
- Strong communication skills where you can translate technical jargon into simple, clear descriptions so understanding is achieved.
- Experience of using agile techniques/methodologies.
- Understanding of full stack web technologies.
- Practical knowledge of SQL and NoSQL databases.
- Application of industry standard software development working practices such as test-driven and behaviour-driven development (TDD/BDD), pair programming, version control and branching strategies.
- Continuous Integration/Continuous Development.
- Application of software design patterns.
- Knowledge and understanding of developing and running applications securely in Cloud environments.
- AWS/Docker/Terraform.
Behaviours
We'll assess you against these behaviours during the selection process:
- Changing and Improving
- Leadership
- Developing Self and Others
- Delivering at Pace
Technical skills
We'll assess you against these technical skills during the selection process:
- REST interfaces
- Web
- Security
- Containers
- Programming and build