에세이

1GB가 막아선 프로젝트 — 스쿨 대시보드 개발기

2026년 2월 16일 5분

새 학교, 낯선 교무통신

학교를 옮기면 가장 먼저 적응해야 하는 것 중 하나가 그 학교만의 업무 방식입니다. 공지, 일정, 쪽지—교무통신이 오가는 방식이 학교마다 조금씩 다릅니다. 새로 이동한 학교에서 교무통신을 주고받는 과정을 보면서, 가독성이 조금 아쉽다는 생각이 들었습니다.

중요한 공지가 쪽지 형식으로 쌓이다 보면 흐름을 파악하기 어렵습니다. 한눈에 정리된 대시보드 형태로 볼 수 있다면 훨씬 편하겠다 싶었습니다. 이전 프로젝트들로 생긴 자신감이 있었고, 이번엔 학교 단위로 쓸 수 있는 걸 만들어보기로 했습니다.

스쿨 대시보드 교원 로그인 화면
교원 전용 로그인 화면 — 외부 접근을 차단하고 인증된 교원만 접속할 수 있습니다

교원만 들어올 수 있도록

학교 내부 정보를 다루는 만큼, 아무나 접속할 수 있어서는 안 됩니다. 첫 번째로 해결해야 할 것은 보안이었습니다. 교원임을 인증해야만 진입할 수 있는 로그인 시스템을 직접 만들었습니다.

로그인이 해결되자 다음 과제는 사람을 관리하는 것이었습니다. 교직원마다 역할이 다르고, 볼 수 있는 정보의 범위도 달라야 합니다. 마스터, 관리자, 일반교원 세 단계로 권한을 나눠 그룹별로 다른 기능에 접근할 수 있도록 설계했습니다. 프로필과 조직도도 함께 구성해서 누가 어느 업무를 맡고 있는지 한눈에 파악할 수 있게 했습니다.

스쿨 대시보드 프로필 조직도 및 권한 관리 화면
프로필 조직도 — 교직원별 역할과 권한을 관리합니다

꽤 그럴듯하게 만들어졌는데

기능이 하나씩 붙으면서 대시보드가 제법 갖춰진 모습이 되었습니다. 공지와 일정이 정돈된 레이아웃으로 표시되고, 쪽지를 주고받으며 파일도 첨부할 수 있었습니다. 이전에 쌓인 문서들도 보기 좋게 분류되었고, 권한에 따라 보이는 메뉴가 달라지는 것도 자연스럽게 동작했습니다.

만들면서 느낀 건, 이런 구조를 직접 짜보는 게 생각보다 훨씬 배울 것이 많다는 점이었습니다. 로그인 상태 유지, 권한 분기, 파일 업로드—하나하나 맞춰가는 과정이 단순히 기능을 추가하는 것 이상이었습니다.

스쿨 대시보드 메인 화면
완성된 대시보드 메인 화면 — 교무통신이 한눈에 정리됩니다

트래픽이 발목을 잡다

문제는 실제로 쓸 수 있느냐 따져보면서 드러났습니다. 교직원들이 쪽지를 주고받을 때 파일을 첨부하는 경우가 많습니다. 10MB짜리 파일 하나를 올려두고, 교직원 100명이 한 번씩만 내려받으면 1GB입니다. 대부분의 무료 호스팅이 하루 트래픽 한도로 두는 수치입니다.

파일 첨부 1개 × 교직원 100명 = 1GB. 하루 무료 트래픽을 한 번에 소진할 수 있는 구조였습니다.

한도를 넘으면 과금이 되거나, 그날 하루 사이트에 아무도 접속할 수 없게 됩니다. 학교 업무 중에 갑자기 사이트가 막히는 상황이 생긴다면 신뢰를 얻기는커녕 더 큰 불편을 만드는 셈입니다. 유료 플랜으로 전환하는 방법도 있었지만, 개인이 학교 업무용 서비스에 매달 비용을 부담하는 구조는 지속하기 어렵습니다.

또 하나의 현실이 있었습니다. 저는 이 학교에 4년 근무하고 떠날 수도 있습니다. 내가 없을 때 이 시스템을 이어받아 관리할 수 있는 사람이 있어야 하는데, 그런 환경을 만들기 어렵다는 것도 분명했습니다. 기술적으로 완성됐어도, 지속할 수 없는 시스템은 도입할 수 없습니다. 결국 개발을 중단하기로 했습니다.

완성하고도 쓰지 못한 프로젝트입니다. 그래도 로그인 시스템을 직접 설계하고, 권한 체계를 구조적으로 나눠보고, 파일 업로드와 트래픽의 관계를 몸으로 배운 경험은 남아 있습니다. 어떤 실패는 그 자체로 꽤 값진 공부입니다.