I applied online. The process took 2 weeks. I interviewed at Leadfeeder (Helsinki, Southern Finland) in Apr 2018
Interview
The company had me do a Skype interview and everything went well. Then they gave me a few days to work on a task, which I completed a day early. However, a week went by and they didn't even reply to my emails or look at the work I did for the task. In the end, I took another position...but these folks seriously wasted my time.
Interview questions [1]
Question 1
We have a Cassandra cluster with multiple nodes running and we want to store data backups in
Amazon S3 on a regular basis.
Build a utility that can be run in each node locally (using CRON or manually from the command
line) and will store the node's data in a S3 bucket. The utility can also be used to restore the
data from the S3 bucket.
To do this you should:
1. Use Cassandra's nodetool snapshot functionality
2. The utility only needs to work with a single Cassandra Keyspace.
3. Store the snapshots in the S3 bucket by Cassandra node (hostname) and timestamp
4. Allow to choose the hostname and timestamp from the available backups when restoring
Instructions & requirements:
● Use Cassandra (DataStax Community Edition)
● You can write the assignment in language of your choice.
● Include an easy way to configure the name of Keyspace that the tool will work with.
● Include an easy way to configure the S3 bucket used to store/retrieve the backups.
● You can assume that the data will be restored in nodes without any data.
● Provide scripts to start a cassandra cluster in docker to create and restore the backups
● Write a small documentation how to use the script to backup & restore the data.
What we will look from your completed assignment:
● Correctness of results. I.e. does it work right.
● Clarity and understandability of the code.
● Quality of the tests.
● Logging and error handling.
● Completion time