At Portbase, I was part of the team responsible for the availability of the applications. Portbase currently offers over 40 different services to approximately 3,600 customers in all sectors of the Dutch ports. If their systems stop, containers stop. Inside this team, my work focused on:
- Adopting Agile and DevOps principles with a highly unpredictable workload
- Creating reliable services using Cloud-Native technology in AWS
- Improving organizational wide Software Delivery Ability.
After a lift and shift to AWS, the team took responsibility for the operational availability of the whole system. I helped this team after this transition.
Our team experienced a highly unpredictable workload. Our backlog kept growing and we never got to work on improvements in our Scrum process. I coached the team in improving the team's Agile process to cope with this workload. We implemented many improvements in our process. The most important changes are to the daily standup, changing to a pull system with Kanban, and collaborating as a team. The daily standup changed from a status meeting to a standup where the team discusses how to collaborate best to finish the stories. We implemented Kanban with strict WIP limits to reduce wasteful meetings like refinements for work that would not be picked up immediately. We used Pair Programming to speed up the development time, reduce time in test and review and deploy to production faster. We reduced our Lead time with a factor of 26 and our backlog started to quickly decrease.
The team's primary goal was to protect the Customer Experience and improve operational availability of the services. I developed applications to be reliable and cloud-native. All of the infrastructure was hosted in AWS provisioned by Terraform. The software ran in mostly Docker with Java and supplemented with AWS Lambda’s written in Python and Golang. I built CI/CD using Jenkins and AWS CodePipeline. We significantly improved our monitoring and alerting with a focus to reduce false positives and false negatives. The Service Availability greatly increased and our Mean Time To Recovery drastically decreased while improving our Deployment Frequency.
Finally, I worked on improving the Software Delivery Ability for the whole organization. I participated in a workgroup that determined the new metrics of team software delivery performance. These metrics were based on the Dora metrics. Every two weeks a Knowledge Exchange was organized for the whole development staff where I frequently presented tech sessions.
I am currently working together with Portbase preparing for the Brexit.