Our Src Code
Sonar Features
Computer Science
Systems
Sonar History
100

This is what we call a Class that represents a single database table.

What is a Model?

100

This checkbox is used to properly start or end a service in the middle of a billing cycle.

What is Prorate/Proration?

100

This PHP native data-structure allows keys of any type.

What is an associative array?

100

This file defines how the state of a Container is initialized.

What is a Docker file?

100

The type of ISP (ie type of internet) that Sonar initially catered to.

What are Wireless ISPs (radio antennae towers)?

200

This is an Eloquent feature that allows table relationships defined in the row data instead of at the schema level.

What are Polymorphic Tables/Relationships?

200

Using these, any internet server can notified by Sonar's backend whenever any data chances.

What are web hooks?

200

This technique is used to process data within a machine's memory limits.

What is chunking?

200

This protocol is used to monitor/poll the state of networking equipment.

What is SNMP (simple network management protocol)?

200

This is what OSS/BSS stands for.

Operational Support System/Business Support System

300

The framework we use to implement GraphQL

What is WebOnyx

300

This integration allows a signup page which captures the customer's location information, checks it against your coverage map, and provides you with a corresponding lead in your Sonar instance, alongside the nearest tower information.

What is Tower Coverage integration?

300
A common query operation done with tables in relational DBs that is not supported in No-SQL DBs like Elasticsearch?

What are Joins?

300

This server is used to manage network access and session history.

What is RADIUS server?

300

This was the rank Sonar won in 2019 Maclean's and Canada Business Magazin Top 50 Startup Company List.

What is 11 out of 50?

400

We built this mechanism to enforce serialization of jobs with a certain unique key.

What is blocking jobs?

400

This tool allows you to simply enter your desired speeds then copy a created set of commands into the terminal of Winbox for your MikroTik device.

What is the Mangle Queue Generator?

400

This pattern is used to de-couple the production and consumption of system events.

What is the Observer/Listener/Event Bus pattern?

400

A highly fault tolerant distributed event processing system [open source] utilized in our Adtran integration?

What is Apache Kafka?

400

These are the 6 main Sonar "Values" (as stated by Ray at every All Hands)

What are Innovation, Collaboration, Customer Focus, Accountability, Empathy, Impact. 

500

This is a Laravel mechanism that allows us to run code during phases of the request lifecycle?

What is middleware?

500

These are used to prevent customers from becoming delinquent on certain days like Christmas or other holidays.

What are Delinquency Exclusions?

500

This datastructure allows O(log2(n)) performance in searching an ordered list.

What is a binary search tree?

500

These declarative workflows automate the building of container images for production.

What are Azure Pipelines?
500

This was the month and year version 2 was first announced on the company blog.

What is January 2018?