The Pabau CRM platform
Our all-in-one software solution for clinics, spa’s and salons
By Role
Join a motivated team of developers.
Hey, your first impression was great. Now it’s time for some action. With the following assignment, you can show us what you got. The case tests your competencies regarding development and gives us an idea of how well you come up with solutions.
You have 24 to 48 hours to complete the assignment. If no completion date has been agreed on with you, try to complete the assignment within a week (if your interview is very soon – do your best, we won’t be sad if you don’t bring your assignment, however it certainly helps).
Put your code on GitHub (or Gitlab, Bitbucket, etc.) and send us the link to your repository where we can find the source code. That means no ZIP files.
Please make sure that we can run and test the code on our computers by including a readme.
We need to create an app for making a doctor’s appointment. We would assume that our practice has only one doctor working at the time.
For making this app to work we would need to have a shift for the doctor in which he would accept appointments. For making this app a bit easier we may assume that the doctor is working every working day (Mon – Fri) from 09:00 – 17:00. Also we would need to assume that this doctor would perform only a few predefined services. For booking the appointment you may use a form which would store the start time, end time of the appointment, service and status of the appointment, any special requirements or medical condition for the patient and patient’s contact information.
We would also need to have the ability to reschedule the appointment or cancel it.
We would expect this to be solved using PHP (not some framework) and MySQL. Please in your git repo, attach database export as well.
Functionality of the application
Good database structure
Usage of PHP OOP
Readable and reusable code
Git flow (multiple branches, commits, merges)
Usage of Jquery and AJAX
Decent looking app
Making a check for appointments to be not overlapping (meaning one appointment at the time)