Here you will find a set of problems to solve when interviewing with Robin. These problems represent scenarios you could expect to encounter while working at Robin.
TBD
The challenges are broken into two groups - functional programming challenges and UI component challenges.
Challenges can be found in the challenges/
directory. Each challenge contains three files:
This is where you will implement the function, or component, to complete the challenge. The contents of this file are entirely up to you, the only requirement is that the function signature remains the same and remains exported.
This contains the mock data that will be used for the particular challenge. These are made up events, or multiple groups of events, depending on the challenge.
Each challenge has a test file to verify the output for a series of inputs. Tests can be ran as they would in any standard node package.
Find the availabile time slots within a given schedule.
findFreeTimes(start: Date, end: Date, duration: number, events: Array<Event>)
Find the available time slots that are free across a set of individual schedules.
findFreeTimesAcrossSchedules(start: Date, end: Date, duration: number, schedules: Array<Array<Event>>)
Create a React or Angular component representing a common UI element seen across Robin.
<AvailabilityTimePills
start={startTime}
end={endTime}
duration={30}
events={events}
/>
TBD