Background
-
The company I work for uses an excel sheet to track and manage
student registrations.
-
This is a highly manual process that is prone to input errors,
formatting errors, and duplicate entries. Data validation.
-
Maintaining the data consumes a significant number of
manhours. Additionally, multiple users cannot access data
concurrently.
-
It will be difficult to scale a business on such a system.
Features
-
Planning process: Schedule/ create new courses with
sessions for a particular learning pathway.
-
Registration process: Staff can add parents/ students,
register them for classes.
-
Manpower Scheduling: HR can assign instructors to
courses/sessions, abe view a summary of hours worked by
instructor.
-
Finance: Classes can be marked as paid using a credits
system. View unpaid classes.
-
Operations:View a dashboard of classes for the day,
mark attendance.
Technologies
- Frontend: HTML, CSS, EJS, Bootstrap
- Backend: Node, PostgreSQL, Sequelize
- Backend: Node, PostgreSQL
- Version Control: Git
Thoughts
-
This was a project of scale rather than implementing new
technologies - The ERD diagram had 14 tables, and Express was
managing 50+ routes.
-
Here I learnt more about the software development cycle
(staging, deployment).
-
Seeding the db with sensitive + complex data (student names,
dob)
-
The aim was to emulate the UI/UX experience of similar Saas
dealing with large amounts of data, like Xero.
- Key Concepts: User Auth,
- Business Focus: User Auth