Who are Sentient Machines?

Sentient Machines is an award-winning startup that uses proprietary artificial intelligence to analyse customer and employee interactions. It provides a summary of the results as well as actionable insights back to their clients via a web platform. The web platform flags emerging issues, non-compliance, and agent performance challenges, including otherwise difficult to identify dimensions such as empathy and listening skills. Users can also view audio recordings of conversations as well as textual records of emails and chats that are annotated by the AI.

The web platform is designed using React JS on the frontend and Scala’s Play framework on the backend. The service uses a Mongo database and its technologies are mainly hosted on Google Cloud.

Why Lambert Labs?

Sentient Machines reached out to Lambert Labs for help with improving the user experience of their web platform. Our expertise with various JavaScript frameworks, knowledge of MongoDB, and adaptability to new codebases allowed us to make quick progress.

What did we do?

  • We rewrote all Scala API endpoints to allow users to filter data by both the day of the week and the time of day. We redesigned an open source React JS date picker to make use of these options. To ensure that the database was being filtered in the most efficient way, we performance tested our Mongo queries, eliminated existing bottlenecks in the JavaScript codebase, and also helped to upgrade the database version.
  • We allowed users to have conversations on the web platform around different audio recordings by designing a messaging system and implemented Mailgun’s API to also notify users by email whenever they have been messaged.
  • We extended their existing Google login authentication to also allow generic email and password registration and developed a user management system.
  • Since Scala’s Play framework did not provide a CRUD administration view, we implemented our own using React Admin, thus allowing non-technical members of staff to securely make changes to the mongo database.
  • We extended their frontend to work with data in multiple languages by seamlessly switching between translations.