OPEN TALK: Implementing Federated Search for Content Libraries


Nathan Melehan
Linode, Senior Technical Editor

Nathan Melehan is a technical writer with a knack for untangling sparsely-documented technical subjects and weaving together tutorials that approach a subject from a new angle. He likes to structure his guides with inspiration from mathematical proofs, where each new concept only relies on what has been established previously. He loves writing example code that steers away from abstraction and instead tries to model compelling scenarios.

Nathan also has extensive experience with the Documentation as Code methodology and with the implementation of Docs as Code systems. In implementing these systems, he’s worn many hats, including DevOps engineer, project manager, and information architect. Nathan believes this work has made him a better technical writer and a better resource for other writers. 


Implementing a search experience for a single database of content can be straightforward. However, many companies operate several distinct websites that each feature important content for their customers. For example, your marketing site, product documentation library, developer hub, and community portal may all use separate content management systems, possibly managed by different teams.

If each site has its own isolated search experience, then the information from each is siloed. As a result, your customers may not find what they're looking for when they visit one of your web properties. Or, your users may find a helpful article, but they may not be exposed to some of your other content that's relevant to their query. If you create a combined search experience that incorporates the content from each of your sites, you can address both of these problems.

This talk presents a solution for a federated search experience. The federated search will serve a content library that spans disparate content types and databases. This issue was tackled by Linode during a redevelopment of the Linode Docs website (https://www.linode.com/docs) in 2020. The presented solution is powered by Algolia. The talk will outline the technical architecture for our Algolia search indices, how they are queried, and how they are kept up-to-date with the content present in each of our web properties.

Finally, once you have implemented a federated search experience, the search backend can also be used to power interesting non-search navigation for your sites. For example, the Linode Docs site features a tree navigation that includes all of the content that we offer. The talk will explore how this was accomplished.