How Meilisearch became open-source: a retrospective
Today we’re sitting down with Clémentine, Manager of the Engine Team at Meilisearch, to talk about how the open-source community shaped our company. Clémentine was among the first developers hired by Meilisearch, back in the distant times of 2019. She’s been with us since the very beginning and saw the company go from a pure SaaS model to fully embracing open source.
From SaaS to Open Source
To many familiar with Meilisearch, it might be surprising to hear we initially launched our product as a SaaS. Clémentine explains the change:
”Back in the day, the engine and the SaaS built around it were buggy, user experience was poor, documentation non-existent, and users required many advanced features from the get-go—they were expected to pay for our product, so of course they wanted a full fledged search engine. In addition to all this, being a paid service meant we didn’t always receive the relevant feedback needed to improve and grow as a company: what worked well, what didn’t, or what could work much better with a tiny bit of adjustment.”
The founders of Meilisearch quickly realized their business model wasn’t sustainable and decided to do a 180: make Meilisearch open-source.
Clémentine tells us that such a drastic change of direction was equally exciting and frightening. Exciting because the modus operandi was very different from what they’d been doing up until that point. Frightening because they weren’t sure the project was going to survive.
“I decided to join the company because I had faith in the founders and their ideas. I believed in what they were trying to accomplish and that the people working in Meilisearch were competent enough to make it happen. Seeing things fail at that stage would have been seriously heartbreaking.”
Working on a now-open-source project, Meilisearch put its focus on growing the project by making it more reliable and performant, and adding various integrations. This meant we wouldn’t generate revenue for a while, and thus that our survival depended on a successful fundraiser. To everyone’s relief, it was a fundraiser the founders did manage to secure.
In the day-to-day reality of development, the change from SaaS to open source wasn’t as difficult, but still very much radical. Clémentine shares the surprise she’d felt when she first saw people actually participating in the project through PRs such as this or this: experienced and humble programmers who enjoyed seeing projects evolve and grow began to contribute. PHP and Rust developers were the first to bring their enthusiasm and support, she recalls.
“I would never have guessed how much the open-source community would shape Meilisearch, but it was the best possible decision the founders could have taken.”
A new structure in Meilisearch
These new and exciting times required the team to rethink itself to ensure a successful shift from SaaS to open source: we had to foster our community, we had to offer good documentation, and the engine itself had to become easier to use.
Transparency became our focus. There’s nothing better for a company than live feedback: we get to know what is important for our users while still being able to decide how to implement new features in a way that moves Meilisearch in the right direction—the last one is a skill we’ve only learned to master with time. It was paramount to ensure our community was happy with our decision as our growth was (and still is) closely linked to their involvement.
Since transparency is not the result of a single action but of continued effort, we used the money from our first fundraiser to help us nurture our open-source community. We hired technical writers to create great documentation, developer advocates to improve communication between company and users, and additional programmers to maintain repositories for our growing number of integrations. All of this was necessary to cultivate an ecosystem that made sure we were going in a direction that made sense to our contributors.
Clémentine’s scope moved to integration and in November 2020 she became manager of the Integrations Team—the first official manager in Meilisearch! Shortly after, she also took on the responsibility of managing the Engine Team. From that point on, Meilisearch went from a setup where “everyone does everything” to real teams with synchronization and dedicated scopes.
She confesses she did not expect to become a manager, even if in hindsight her natural predisposition toward organizing people was clear to the founders:
“I was a bit surprised, but the more I worked at Meilisearch the more I realized I liked pushing projects and people forward, seeing things growing and becoming the best versions of themselves. I don’t have much time to code anymore—only occasional bug fixes or CI work—but I really have no regrets. In retrospect I can see I wasn’t fully satisfied as a full-time developer. But it took some time to make peace with that idea, and to close that chapter of my life.”
The future of Meilisearch
The next step is the long-awaited Meilisearch v.1.0:
“Our users deserve to be serene when using our search engine. Releasing v1.0, our first major version, is a big and necessary step to show Meilisearch is stable and ready for production.”
This goes together with the development of a SaaS setup:
“Meilisearch has grown so much these past few years. Thinking back at what we had in 2019, when we first tried developing a SaaS, and comparing it with the product we have now is amazing—and it’s all thanks to the open-source community. One of our main goals moving forward will be to keep giving back to all our users, even as we begin to dedicate resources to the SaaS solution.”
In conclusion
Reflecting back on all that was accomplished, Clémentine shares:
“Meilisearch grew, grows, and will keep on growing thanks to the open-source community. No matter what we build in the future, the open-source community is our biggest strength. We will always need our contributors, and we intend to do our best to keep them in the loop and show our appreciation for their support.”
Open source became part of our DNA. Its values—asynchronicity, pragmatism, transparency—are also reflected in our company policies and the way we operate internally, from our programmers to our managers, writers, and developer advocates.
Clémentine herself never stopped growing alongside the organization: after starting as an intern, she became a full fledged developer, then moved on to lead the Engine Team. Finally, she’s just recently been promoted to the position of Head of Engineering, overseeing the work of programmers across the company !
We wish to extend a warm thank you to Clémentine for her candor and to the contributors that allowed us to grow and evolve as we did.