On Monday, myself, @Miguel Saitz, @Rashmi Shetty and @Selwyn Preston visited Camden council. The meeting was part of our agenda of promoting collaboration between local authorities and was focused on understanding how our teams work. We have found many similarities our teams share but also identified opportunities for helping each other learn from our journeys.
Overview of things we discussed
Camden council’s development team manager, Bob Hannaford, kindly welcomed us and answered every question we had. He explained to us how their teams are structured, how they work and what is their technology stack. Bob also took us through their journey of adopting cloud technology so far and gave us an overview of what their plans for the future are. We then took Bob’s team through our way of working and our roadmap, which they were very interested to hear about.
Camden’s structure and way of working
Camden also has adopted an Agile way of working. They have three Scrum teams, each focusing on a particular area. What was very interesting for us is that they do not have a dedicated scrum master, but instead have a rota and each team member gets to fulfill that role for a certain amount of time.
Camden council also has a Quality Assurance team, which is distributed among the three scrum teams. The QA members are responsible for end to end testing. They demonstrated to us a tool that they use, Selenium, and we were particularly impressed with. The tool is very good for testing front-end and specifically, test for expected behavior for a certain application. The QA team leader explained to us that they run their test against production environments daily and that applying this strategy has greatly reduced costs as they are now able to identify bugs quickly. This resulted in their contact center receiving a big reduction in calls regarding potential applications issues.
Furthermore, there are members of the ‘Operations’ team in each of the scrum teams. They are involved in the projects from the early stages and are responsible for deployments and support. This structure is part of them adopting DevOps culture. They have shared that they have a separate ‘Operations’ team that deals with supporting older business applications and currently, none of the ongoing projects are passed onto that team, but instead are supported mainly by the ‘ops’ members in the scrum team and by the developers.
Another thing that interested us is that the majority of their Camden’s scrum teams work remotely, with some members working from India.
Camden currently uses Java-based technology stack, with GitLab as a source control tool and Selenium, JUnit and SOAPUIi for testing. They do not follow test-driven development but instead write unit, integration and end-to-end tests.
Shared journey Hackney/Camden (Cloud, etc)
One of the aspects we focused the discussion on was on identifying shared journeys with both teams:
We both are currently working in investing resources in the cloud infrastructure. Camden is already using the cloud for some of their services while keeping the backend on their premises they have already started to explore AWS for hosting some frontend services and Azure for collaboration tools and their online suspensions services. Hackney currently is working in hosting most of its backend services in AWS.
Devops is another topic that we have recently started to explore and it was really interesting to see that Camden’s team is already and making use of CI/CD pipeline via Jenkins for automating the build of their applications for the different stages they currently use. We have also been working on CI/CD pipelines since we started adopting AWS and we have a long way ahead for embracing the DevOps culture.
Possibilities for collaboration
This visit has opened the door for collaboration between both teams, we can expect meeting each other for the future to keep sharing views and work practices. For example, on our Monday’s visit, we had the chance to attend one of the scrum meetings they had planned for the day and future visits would allow us to spend time with their developers for sharing best work and organizational practices.
The Hackney journey for migrating services to AWS has generated quite a lot of knowledge to the team about managing cloud infrastructure and specifically using infrastructure as a code tool like Terraform and Camden’s team was eager to explore this as well once they start managing more services with AWS.
We also shared with Camden’s team the work done with the API Hub and its potential for being expanded integrating API’s from other local authorities. They were excited about the potential of this collaboration and this means that we should keep focusing on improving this application making it ready for being expanded with content from other local authorities.
Camden council is also trying to adopt cloud technologies. Whilst they are at the beginning of their journey, we believe we can help them by sharing our experience and what we have learned so far. It is also a good opportunity for us to collaborate and get challenged on the work we are doing and the decisions we are making. We are hoping that our meeting was just the first step and are excited about the possibility of expanding our collaboration not just with Camden, but with many other innovative local authorities!
The main outcomes of our meeting:
- Other councils are also looking into innovating their technology and adopting cloud!
- Collaboration is definitely something that others are interested in but we are all at different levels and we will need each other’s help.
- Powerful tools like Selenium won’t necessarily aid our backend testing but could definitely help our Application Support teams to automate the manual checks they perform.
- Adopting DevOps culture can certainly speed up development time as seen by the strategy applied by Camden Council. Adopting good practices does contribute to efficient good teamwork!