Schooliee
Webアプリ、モバイルアプリ、デスクトップメッセージングツール全体で、生徒、スタッフ、授業料、保護者連絡など学校運営をエンドツーエンドで支援するマルチテナントSaaS。
Next.js 16
React 19
TypeScript
Convex
Prisma + MongoDB
Material UI
Expo
Electron

概要
Schoolieeはパキスタン市場向けに構築されたクラウド型学校管理システムです。単一のデプロイでプラットフォーム管理者、1つまたは複数のキャンパスを運営する学校オーナー、そして生徒の保護者をサポートする完全なマルチテナントプラットフォームです。このプロダクトは、1つのバックエンドを共有する3つのクライアント(Next.js Webアプリ、ホワイトラベルExpoモバイルアプリ、一括WhatsApp送信用のElectronデスクトップツール)にまたがり、生徒記録やスタッフ管理から授業料の回収、日々の保護者連絡に至るまですべてを網羅しています。現在も活発に開発が進められている、大規模で長期運用のプロダクトです。
課題
学校の運営には、生徒の入学登録や追跡、異なる権限を持つスタッフの管理、授業料の請求・回収、そして多くのシステムが不得手とする保護者への確実な連絡など、絶え間ない管理業務が伴います。特にパキスタンでは、保護者はメールよりもWhatsAppやモバイルをはるかに頻繁に利用しており、アカウントを新規作成して覚えるよりもCNIC(国民ID)で識別されます。また、プラットフォームは運営企業、費用を支払う学校オーナー、そして利用する家族という複数のレイヤーを同時にサポートする必要があります。これらすべてを単一の首尾一貫したシステムで、多数の学校に向けて同時に実現することこそが、Schoolieeが解決するために着手した課題です。
役割とアプローチ
これは複数人の開発者チームによって長期間にわたり構築された大規模プロダクトであり、私はその中心的なコントリビューターの一人として、全期間を通じてコードベースで最も活発にコミットを重ねたメンバーの1人でした。担当範囲は、ロールベースのWebポータルから、各利用層が依存する共通フロントエンド基盤にまで及びます。設計指針は利用層ごとの分離です。各ユーザータイプに独自のポータルと権限範囲が割り当てられ、プラットフォーム管理者が学校オーナーの上位に位置し、オーナーがキャンパスや保護者の上位に位置する階層構造となっています。これらすべてが、リアルタイム機能向けのエンジンとコアデータ向けの構造化データベースを組み合わせたバックエンド上で動作しています。
技術スタック
主な機能
ギャラリー


課題と解決策
決定的な課題は、Schoolieeが実質的に複数のプロダクトの集合体であるという点です。3つのクライアントアプリと複数の異なるユーザー層が1つのシステムを共有しています。Webアプリでは、ユーザー層ごとの専用ポータルとロール階層によってこれに対応しており、画一的なダッシュボードではなく、プラットフォーム管理者、学校オーナー、保護者のそれぞれが同じプラットフォームの一貫した機能領域を利用できるようになっています。
データレイヤーは明確な分離を反映しています。チャット、お知らせ、通知、プッシュ配信などのリアルタイムで協調的な機能は、リアルタイム処理に特化したConvex上で動作し、構造化された学校記録はMongoDB上のPrismaで管理されています。各ツールを最も得意とする領域で活用することで、ライブ機能の応答性を維持しつつ、コアデータを適切にモデル化しています。保護者への確実な連絡という実世界における最大の難題に対しては、彼らが実際にいる場所に歩み寄るアプローチをとりました。メールに依存するのではなく、Webおよびモバイル通知、そして専用設計されたWhatsAppデスクトップ送信ツールを通じて配信を行い、保護者をCNICで特定することでアカウント作成の手間というハードルを取り払いました。
成果
Schoolieeは現在も日々リリースが行われている本番プラットフォームです。Web、モバイル、デスクトップにわたりパキスタンの学校を支援する、真に大規模なマルチテナントシステムです。リアルタイムなやり取りと構造化された記録保持のバランスをとったバックエンド上で、複数の教育機関に対して入学生管理から授業料回収、日々の保護者連絡までを一貫してカバーします。私にとってこの実績は、単なる短期的な開発ではなく、複雑なプロダクトの長いライフサイクル全体にわたるシニアレベルでの継続的な貢献を体現するものです。