What is our primary use case?
I like to describe it as an embedded Google that you can tailor with your own information. You can input your proprietary information and modify the weights and configuration of the search to tailor the results for your clients or services, like for internal tooling.
I can have a built-in flexible search engine. We used it specifically to return results to our clients in terms of listings based on their search and geographic location.
What is most valuable?
I like the fact that it's very powerful. It has many fine-tuning configurations. Essentially, every single piece of information you pass through it is a free document you can tailor. This allows me to craft the information in a manner that it can be easily searched.
For example, with our listings, we tailored them based on the individual's name, geographic location, and information specific to us, such as access to golf clubs and tennis courts. This very narrow information could then be used as part of the search results, providing our clients with a very intuitive search service.
The idea is that good search results lead to better commercial opportunities and customer retention because clients are satisfied with an easy-to-use service. That was definitely the greatest aspect of Algolia - it's a very powerful search engine.
What needs improvement?
There are two problems. Number one, it's a bit pricey, especially when there are similar algorithms. There's one called Typesense, which we considered to lower our bill. Algolia is good for a startup because it allows you to bootstrap powerful functionalities quickly. But if that startup ends up growing and becomes quite successful, the cost of Algolia will balloon with it. So, I could imagine that Algolia might have difficulty retaining clients.
The other problem I had to deal with as the lead software engineer is the documentation. I was basically assigned a guy who had no idea how Algolia works, and I had to get it to work, which I did. But the documentation for the service is not as good as it could be. You can still figure it out, but Algolia has a lot of functionalities, not just the search engine. They have built-in components for different UI libraries. In our case, we were using React, and they have a third-party library that you can import to use Algolia services as React components.
It's great, but they have very little documentation for those kinds of third-party things. It's tough to use them if you don't explain to your potential developers how they're supposed to be used. I eventually had to call them directly and sit down with their engineers, and I realized that it's a great product, but they need to explain it better.
For how long have I used the solution?
I used Algolia as an embedded search engine. I was the lead software engineer for a US-based startup called Teach Me To, based in San Diego. I used it throughout my entire stay with the company, which was seven and a half months.
What do I think about the stability of the solution?
Algolia is a powerful framework, so there are many ways the setup could have suboptimal results, and we actually experienced them. It's not 100% their fault; it was more about how we were integrating the program. For example, we were trying to return search results based on geographic location and put that on a map. We realized there were a lot of duplicate returns, with the same listing being returned as part of a big block of results. We didn't catch it because the pins on the map would overlap, so we would only see one pin when there were actually two of them.
The problem is that Algolia works like any cloud technology in terms of use. We were getting a bunch of redundant results that were nonetheless part of the billing because the configuration of the platform was wrong. That was part of my reason for fixing things that happened. It wasn't necessarily something wrong with Algolia, but rather with our integration of it. However, it's the kind of pitfall that developers should be aware of.
I would rate the stability an eight out of ten.
What do I think about the scalability of the solution?
I believe the technology is scalable, but I have doubts as to whether the billing is scalable for any company. If you're a big, successful startup transitioning into a corporation, you might have the resources to build your own internal search engine because Algolia can get expensive unless they adjust their pricing.
How are customer service and support?
I'm very happy with it. I would give them ten out of ten. They were responsive, active, and even followed up to see if everything was okay and if we needed more support.
How was the initial setup?
The initial setup is fairly easy. It's not trivial, but it's not hard either. There are two sides to it:
- the application side and
- the cloud information side.
You have to make sure your information is correct on the cloud side to see it reflected on the application side. It is not 100% easy, but it is not necessarily hard because any good developer should be able to handle it.
Deployment time: It depends on the amount of data. They do have to index the information, so if you have less than a hundred thousand entries, it should be super quick. They have a great capability that allows you to demo it on a test set so you don't mess with your real-time production information. You can play around with Algolia on a development set and then pass it into production when you're ready.
However, if you have a lot of indices, let's say a million or more, it does take a couple of minutes to pass that information into the system, index it, and test it in development before passing it to production. It's not super slow, but it is worth mentioning.
What's my experience with pricing, setup cost, and licensing?
For any developer starting out, it is worth it. If you're already a successful startup and you have other worries, that would be a debate amongst the internal teams. But, it's worth it to bootstrap something.
Which other solutions did I evaluate?
We played around with Python, which was part of a different part of our stack, but we didn't consider other options.
When I came in, Algolia was already integrated into the product, so, I couldn't change the existing product, only improve upon it.
What other advice do I have?
It's a really great solution. The more you work with it, the more intuitive it gets. I think Algolia is onto something that is very valuable.
Overall, I would rate the solution an eight out of ten.
*Disclosure: I am a real user, and this review is based on my own experience and opinions.