Custom software development

An adaptive learning engine, risk scores and reminders for a security-awareness training platform

Client
Singapore cybersecurity company
Industry
Cybersecurity
Services
Custom software
Timeline
18 months, 2020–2022

In numbers

  • 18 monthson the platform
  • 25%of all backend commits in that time
  • 9 AMin each customer’s own time zone, when training reminders go out

The problem

Once-a-year security training is forgotten within weeks, so the company built a product that teaches a few minutes a day, adapted to each employee. That meant short interactive scenarios, rules for the order to show them in, and recommendations from the company’s own data-science service.

Its customers, many of them resellers managing several companies, also needed to know who was falling behind, without their staff being flooded with emails at the wrong time of day.

What we built

We rebuilt how learning content is stored, moving scenarios from loose JSON into proper database tables, and built the tools for admins to create their own content and arrange it in a precedence tree. New scenario types covered safe Wi-Fi, password creation, spotting risks and social media.

We connected the platform to the data-science service, which receives each user’s performance and profile changes and sends back the next recommended activity. We built training reminders that go out at 9 AM in each company’s time zone, on weekdays only, plus risk scores for users and departments, rankings, surveys and campaign reports in Excel.

Our part

Our engineers worked inside the client’s development team for 18 months and wrote about a quarter of all backend commits in that time. The recommendation models, the infrastructure and the mobile app were built by the client’s team.

Built with

  • Ruby on Rails
  • React
  • Redux
  • PostgreSQL
  • Sidekiq
  • AWS SQS

Have a process like this one?

Tell us what it is. Within 2 business days we'll reply with whether it needs custom software, an AI workflow or an agent, and roughly what it would take.