A couple of decades ago I spent a little while living in Denmark and became a huge fan of Danish design. One of the exemplars of the Danish school of simple, elegant and utilitarian design is electronics design and manufacturing powerhouse Bang & Olufsen. As a fan of the brand, I was excited to hear from their technology arm about how they’re leveraging agile development processes and tools to deliver the next generation of innovation.

By way of context, B&O was founded way back in 1925 in Struer, Denmark, by Peter Bang and Svend Olufsen, two innovative, young engineers devoted to high-quality audio reproduction. Today, Bang & Olufsen is a publicly-held company with more than 1,700 employees and sells products in more than 70 countries. The company manufactures a highly distinctive (if you’ve ever seen their kit, you’ll know what I mean!) and exclusive range of televisions, music systems, loudspeakers, telephones, and multimedia products.

The software challenge for B&O

B&O’s software development team, which consists of roughly 50 developers, collaborates on a common platform for all B&O’s connected audio and video products. They wanted to accelerate their release cycles and decided to transition to Agile processes and DevOps automation. Part of this change called for the use of continuous integration and continuous deployment so that software could move to a more regular and painless release cycle. As Jeppe Frandsen, Senior Software Architect at B&O explains:

At B&O, we want to be as efficient as possible in our DevOps methods, and Shippable has helped us ship faster and bring more capabilities to consumers who buy our products.

This is all the more important since B&O is doing software development for embedded products. Delivering easy configuration for CI/CD in the embedded environment is critical:

This is the most important product line for the business, and it requires a lot of embedded development. Embedded software has fixed hardware and environment requirements, so we needed a platform that could handle those needs, while also helping us be agile

The CI/CD solution

The company wanted to move to a hosted CI/CD solution rather than having to maintain its own internal build servers. A hosted solution also has the benefits of dedicated support and thereby a better chance of getting new features added (like the nightly build triggers for Shippable). B&O looked at several hosted CI/CD providers and selected vendor Shippable to replace Jenkins since they found that it has the best features to support embedded development. Frandsen explained the difference thusly:

  1. Shippable offers a hosted service, eliminating the time-consuming task of managing their own infrastructure.
  2. Shippable offers a highly differentiated feature called Bring Your Own Node (BYON), which allows customers to run builds on their own machines of any size and configuration, instead of the standard Shippable hardware. These machines are automatically configured and managed, requiring almost no effort from the customer. This was important for B&O since they could use machines that were optimal for their high processing needs, rather than standard Shippable hardware.
  3. Shippable has the best support for Docker. B&O could use custom Docker images to create a consistent, cross-platform build environment that satisfied their requirements. They could also leverage Docker caching to speed up their builds.

We switched to Shippable as it has the best features for embedded development. It allows us to have our custom build system, without needing to manage our own infrastructure. This has helped us accelerate our software release cycles and focus on customer value.

Who else did B&O consider?

Frandsen looked at various cloud CI services with support for Docker (Travis CI, Semaphore CI, Docker automated builds, CodeShip, Wercker) and a lot of options exist. He reports that the biggest issue, however, was the number of cores and amount of RAM available for the builds since B&O do embedded development with a relatively large code base. At the time they selected Shippable, it was the only solution providing the feature of attaching their own build servers since most of the CI services have limited resources (e.g. 2 cores, 3 GB RAM). Besides this, the Shippable pricing is a bit below its competitors.

What other changes has B&O made to their DevOps and/or software development strategies?

This is a total organizational cultural change. Over the last year and a half, B&O has begun transforming software development from waterfall to agile. As part of this transformation, the company also upgraded the tools used. SVN has been replaced with GitHub to have a better review flow and get the benefits of the continuous improvements (e.g. forced review, GitHub Marketplace). The GitHub pull request statuses are used for improving the code quality. Right now, developers check that unit tests are passing, code coverage, static code analysis (a couple of tools are used) and dynamic code analysis.

In a general theme, Frandsen reports that his goal is for the company overall to have more focus on code quality and making it easier for the developer to develop.

Bottom line: Where B&O is at today

The B&O DevOps stack today includes GitHub, Docker, and Shippable, along with an internally developed release portal. All builds run on Linode servers. Shippable integrates with all the DevOps tools to bring superb visibility and collaboration for each phase of development. GitHub gives the team status on code coverage and static code analysis, Docker is used for creating a consistent build environment, Shippable is the CI/CD hub, and the internal portal stores the final releases.

MyPOV

Even a century-old company can innovate and become agile. B&O is big and old and one could be forgiven for assuming that means monolithic and slow. Their adoption of agile generally, and DevOps tools specifically shows just how much even traditional organizations can benefit from a move like this. Well done to the team, and keep up that legacy of amazing Danish design!

Ben Kepes

Ben Kepes is a technology evangelist, an investor, a commentator and a business adviser. Ben covers the convergence of technology, mobile, ubiquity and agility, all enabled by the Cloud. His areas of interest extend to enterprise software, software integration, financial/accounting software, platforms and infrastructure as well as articulating technology simply for everyday users.

Leave a Reply