Back to Portfolio

School CMS for client

Role: Backend Developer

Designed for scale and comprehensive control, this School CMS connects administration, educators, parents, and transportation coordinators in one cohesive Monolithic platform.

Technologies Used

Node.jsPostgreSQLSocket.ioMonolithic architectureGoogle places APIsSESSNSS3firebase

Key Challenges

  • !Complex relational tracking between parents, children, bus routes, and educator rosters.
  • !Migrating legacy school data cleanly into the new system.
  • !Handling heavy dynamic queries without slowing down the core operations.

Solutions & Execution

  • Structured relational databases deeply structured with exact primary/foreign keys inside PostgreSQL.
  • Deployed heavy SQL indexing strategically across commonly searched student parameters.
  • Utilized Amazon S3 and SES to coordinate document storage and mass school-wide messaging flows perfectly.

Project Highlights

  • Zero-downtime massive data migration
  • Unified portal serving thousands of hierarchical users
  • Live transport tracking module mapping

Impact & Results

Successfully migrated 50,000+ student records with zero data loss
Reduced parent-teacher communication response time by 60%
Tracked 200+ school buses in real-time across multiple routes
Improved attendance accuracy from 85% to 99.5%

Technical Deep Dive

Built on a monolithic Node.js architecture with PostgreSQL as the relational database, the system manages complex hierarchical relationships—students belong to classes, classes have multiple teachers, parents can have multiple children, and buses serve specific routes. We designed a robust foreign key structure with cascading deletes and referential integrity constraints. Strategic B-tree and GiST indexes on commonly queried columns (student IDs, parent phone numbers, bus routes) ensure sub-50ms query times even with millions of records. The transport module integrates Google Places APIs for real-time location tracking, using WebSocket connections to push live updates to parent mobile apps. Amazon S3 stores student documents and academic records with versioning enabled, while SES handles mass email notifications to parents. The data migration pipeline processed legacy CSV files in batches, validating data integrity at each step.

User Benefits

Parents get instant visibility into their child's academic performance, attendance, and bus location through a mobile-friendly portal. Teachers can record grades, attendance, and behavioral notes digitally, eliminating paper-based processes. School administrators have real-time dashboards showing everything from enrollment trends to bus route optimization. The transport tracking feature gives parents peace of mind—they receive notifications when their child boards the bus and can track the bus's ETA in real-time, dramatically reducing anxiety during pickup times.

Key Lessons Learned

Managing hierarchical user permissions taught us to design flexible role-based access control from day one. We learned that data migration is never 'just importing CSV files'—legacy data always has inconsistencies that require intelligent cleaning and validation. The transport tracking module showed us the importance of battery optimization for mobile apps—aggressive location polling drains batteries, so we implemented adaptive update intervals based on bus speed. Our biggest breakthrough was designing for network resilience in areas with poor connectivity, implementing offline queuing for critical operations.