After going through a frontal interview, I was asked to perform a development challenge. I spent the whole weekend, and from 16 years of experience, I know to value the level of performance and investment. I would expect the company to get back to me and go through the code with me anyway, even if they thought it was not good enough for them.
I would expect some feedback from them, since an experienced developer has dedicated his time to perform their challenge on the best side. But it did not happen.
I received a dry email about choosing to advance with another candidate. I felt humiliated and made a decision that I would never agree to this kind of interview that requires me to waste my free time. Such a disparaging attitude is rare in this time of insane demand for developers.
Armis Heatmap Exercise
Armis generates vast amounts of data, and it’s up to the application team to provide users with the means to view and evaluate this data.
For each device detected by Armis, a list of activities is stored in the database. Each activity corresponds to an actual activity of that device (legitimate or not), such as connecting to a WIFI network, accessing a remote server, or DHCP broadcast.
One way to visualize the activity list is by a color-coded heatmap, where the color (or “heat”) represents the amount (“intensity”) of activities in each segment of the heatmap.
The Exercise
In this exercise, you are required to implement the heatmap.
The Input: A set of activity timestamps in this format: [timestamp1, ..., timestampn]. Its values match the sample heatmap provided above.
The Output: A color-coded heatmap which closely resembles in appearance the provided example.
The default segmentation is 24 hours per day, 7 days per week, with a total of 6 heat levels.
You are provided with a boilerplate React application which loads and parses an input JSON. Feel free to use Google and whichever 3rd-party library you wish, except for JSX. However, using nothing but React is a plus.
Coding Standards: We appreciate clean, efficient, and self-documenting code.
Bonus Points:
The following metrics were computed from 1 interview experience for the Armis Senior Full Stack Engineer role in Tel Aviv-Yafo.
Armis's interview process for their Senior Full Stack Engineer roles in Tel Aviv-Yafo is extremely selective, failing the vast majority of engineers.
Candidates reported having very negative feelings for Armis's Senior Full Stack Engineer interview process in Tel Aviv-Yafo.