Project Manager and Senior Software Engineer
The development of library services has traditionally taken the form of integrated library systems (ILS), which are typically large, monolithic enterprise software. These systems provide a relatively fixed set of services, with some limited features for configuration and extensibility. It is time to rethink this monolithic, siloed software development model and to look at more flexible, collaborative approaches that can bring librarians and developers into conversation. We are building a new, open source, scalable software infrastructure, together with a set of core library services, with the goal of stimulating innovation and collaboration. The software is intended to be owned by the library community, and is being developed through significant engagement with the community. From a user’s point of view, library services in the system appear as integrated apps within an app-store model, which allows for an open marketplace that any vendor or developer can participate in. These apps are implemented as microservices which can be readily integrated or rewritten. The use of granular services makes possible a decentralized, experimental development model in which software has the potential to evolve quickly. We are organizing this development around a lightweight interoperability process for sharing technical descriptions of service interfaces.