When I worked at Vodafone we had five squads working in the same codebase on our mobile app at the same time.
Vodafone was in a very competitive market. Because they had to be responsive to their competitors, media advertising bookings etc, this meant feature priorities could change with little notice.
As a result we had to keep our feature branches in a ready-to-merge state. Some developers were better at keeping their features ready-to-merge than others.
I built a dashboard that was displayed on a 65” flatscreen TV in the developers areas. The dashboard displayed the current status of feature branches to both other developers and Product Owners.
I decided to make it look like an airport status board because that lent itself nicely to the display of the information, and to implying a sense of urgency.
The background is a looping video that comes from the old Apple TV screensavers, so it’s pleasantly in constant motion.
There is a unix shell script that is scheduled to run on the webserver every few minutes. The shell script runs several git commands, then outputs a JSON data file directly into the webserver data folder alongside the HTML files.
It was exactly enough to work and nothing more.
It solved the problem, feature branches were kept up to date.