← Back to portfolio
Full-Stack 2020 · Risk Dynamyx

Risk Dynamyx

Security risk management platform that scores a client's properties for physical security risk, drawing on crime data, points of interest and detailed weighted questionnaires.

Risk Dynamyx
1 / 4

Risk Dynamyx is a security risk management app. I wasn’t the original developer on this one – the first version had been built by an offshore agency, and when the client decided not to continue with them, they went looking for a freelancer to take it over. I was happy to pick it up and run with it.

The idea is that you sign up as a client and list your properties – often in large buildings in the CBD – and the app works out a security risk score for each one. It pulls in a lot of inputs to do that: known security issues and crime data fed in from various sources, nearby points of interest, and detailed questionnaires that get sent out to the client to fill in (60+ weighted, mostly multiple-choice questions). A scoring algorithm weighs all of this up across a number of security axes to produce an overall risk score for each property, which you can then track over time.

The project came to me in two parts: a backend API built in Express and Node.js, backed by SQL Server with heavy use of T-SQL stored procedures, and an Angular frontend using SASS. There’s a lot of logic in the database here, and both parts were originally hosted on Azure, though I later moved the frontend to Netlify.

Since taking it over I’ve done a fair bit of work on it:

  • Converted both the backend and the frontend from JavaScript to TypeScript
  • Added a third piece – a CLI tool that syncs the T-SQL stored procedures out to files so they can be version controlled, as none of the T-SQL was tracked before
  • Wrote automated deployment scripts for Azure
  • Picked up the main scoring algorithm, which the original agency had never finished, along with various other smaller tweaks and features

Interested in a similar project?

I'd love to discuss how I can help you build something great. Let's talk about your project needs and goals.