Firstly, I hope everyone is well and in good health in this strange time.
Next, I am looking for suggestions for a customisable calendar/scheduling tool/application with the specific purpose of planning the training schedule at my company.
Here is a minimum list of requirements that it needs to support/achieve:
- Open-ended tool: to allow our APIs to scrape the timetable and input data into our postgreSQL databases
- Infinitely Scalable: needs to be able to handle theoretically unlimited numbers of subject areas, classes within each subject area, and teaching staff responsible for these
- Templating System: ability to have a template timetable of classes in order for each subject area to smooth the process of starting a new subject area training. Also the ability to update the template over time or make one-time changes to particular training cycle to accommodate external changes like teacher availability and public holidays like bank holidays/Christmas etc
- Teacher Allocation: ability to categorize each class within a subject area (e.g. Python), and have teacher qualifications/categories (ie what classes they can teach) so each training cycle will suggest all the available teachers for each class that are available to teach, and raise an error if nobody is available
- Classroom Allocation: Identify which classes require in-person training (as opposed to remote) and which classrooms are available to be allocated to, as well as raising an error if no space is available
- Cloud Hosted: Needs to be cloud hosted and accessible to all the teachers, but with the ability to export a single stream into a pdf/xlsx/docx format to be sent out to the students so they can see their timetable only
Obviously, I understand that a tool such as this will likely incur subscription or one-time startup costs so I welcome these suggestions. Alternatively, I welcome any open-source solutions that require a bit of tweaking to achieve what we want, as we have resources of internal developers to make this happen. The important point is we need this to be reliable and scalable at a medium enterprise level – potentially globally – and we DO NOT want to reinvent the wheel by starting from nothing.
Please let me know if you need any further clarification, and I thank you in advance for any and all suggestions.