Huge interview question

Had to do a design exercise