London Borough of Hackney
London Borough of Hackney
APIs as Microservices
Briefly describe the initiative/ project/service; please include your aims and objectives
In Hackney we’re developing a set of APIs to join our new digital services to our older databases. That means we can buy or build modern digital services and improve them gradually without threatening the performance of the process that gives residents what they need when they need it. For example, the API we built for tenants to check their housing balance is now consumed by four of our digital services so that tenants and housing officers are reading from the same data in real-time. We use several legacy applications, which are costly and expensive to support; tightly coupled and inflexible.
As they are mostly third party systems, there are a lot of vendor lock-ins to navigate and extensibility was very difficult. There were many add-ons and workarounds to get this ecosystem to meet user needs and to keep up with evolving business practices. “APIs enable us to improve services to residents and reduce the cost of innovation.”
Challenges to overcome were:
1. Build core skills and culture to embrace cloud development.
2. Build a reusable and consistent framework for APIs.
3. Collaborate with other teams to develop standards.
4.Ensure APIs are built underpinned by high availability and security principles.
5. Governance for APIs.
What are the key achievements?
1.The tenancy balance API is consumed by 5 services and enabled us to deploy an Alexa skill in a day.
2. The new LLPG API is consumed by three services currently with a road-map to replace 20 legacy integrations.
3. Published API playbook. The first iteration was released on 02/09/2018. The second beta version was released on 11/09/2019. Both have been peer-reviewed by colleagues in digital agencies and central government. https://github.com/LBHackney-IT/API-Playbook-v2-beta
4. Introduced our API Hub developer portal on 29/01/2019. https://developer.api.hackney.gov.uk/
5. We have involved apprentices in our API development and deployment to ensure that we have built our core skills throughout and also we contribute to our local community.
6. Reduced cost of development: money and resource time were spent unnecessarily, writing code that someone else had already written.
Our product also ensures that cost and time efficiency is improved for future projects. Hosting new APIs on cloud, which overall, made our product highly available and scalable. We’ve documented our APIs in terms of having a consistent and standard approach (as per our API Playbook) openly so other councils could also benefit from our work and further learning.
What are the key learning points?
1. Built our core skills: We went through a process with external digital agencies for upskilling the internal developers so that we build scalable, highly available, secure APIs for other services to consume.
2. Ensuring we have a well defined process for API governance.
3. Failing is just as important as succeeding – we have reiterated our playbook to include new learnings from our journey of adopting cloud and working with the latest technology. In short, we learn and iterate as we go.
4. Be open and collaborative.
5. Decision making through challenging each other’s understanding is more productive and effective.