Salpeem: 학생을 살피는 일과 생기부를 쓰는 일 사이
관찰은 교육의 본질이고 생기부는 행정의 무게다
Salpeem: 학생을 살피는 일과 생기부를 쓰는 일 사이
DoRm이 교육 현장 문제를 어떻게 기술과 실험으로 풀어가는지 기록합니다.
이 글의 문제의식
한국의 교사들은 매 학기 수십 명의 학생에 대해 생활기록부를 작성합니다. 학기 내내 관찰한 내용을 모아 학생별로 서술하는 일인데, 이건 가장 큰 행정 부담이면서 동시에 학생을 제대로 관찰하고 기록하는 것은 교육의 본질이기도 합니다.
살핌은 이 둘이 모순이 아니라는 데서 출발했습니다. 학생을 제대로 살피는 것이 곧 업무를 줄이는 길이라는 철학 위에 만들었습니다.
문제를 구체적으로 분해하면 세 단계입니다. 수업 중 관찰을 빠르게 입력할 수 있어야 합니다. 축적된 기록에서 학생별 성장 맥락을 꺼낼 수 있어야 합니다. 그 맥락이 생기부 문장으로 자연스럽게 변환되어야 합니다.
수업 중 기록은 빠르지 않으면 안 된다
교사가 수업 중에 관찰 내용을 기록하려면 30초 안에 끝나야 합니다. 브라우저를 열고, 로그인하고, 학생을 찾고, 내용을 입력하는 과정이 길어지면 현실적으로 안 씁니다.
살핌은 자연어 입력을 기본으로 잡았습니다. "다율이 수업 시간에 적극적으로 발표함"이라고 한 줄 치면, 자연어 파싱이 학생명과 날짜, 과목을 자동 추출합니다. 한국어 조사와 호칭 변형도 처리합니다. "다율이가", "다율이는", "다율" 모두 같은 학생으로 인식합니다.
이 기록은 누가기록으로 축적됩니다. 한 학기 동안 쌓인 관찰 기록이 학생별 성장의 맥락이 됩니다.
학생 이름을 AI에 보내지 않으면서 생기부를 쓰게 하기
축적된 관찰 기록을 AI가 생기부 지침에 맞는 문장으로 변환하는 것이 살핌의 핵심 파이프라인입니다. 하지만 학생 실명을 AI에 보내는 것은 개인정보 유출 위험이 있습니다. 학생 이름은 민감한 개인정보이고, 교육 현장에서 이 원칙은 타협할 수 없습니다.
학생명을 [S000] 같은 토큰으로 치환하여 AI에 전송하고, 응답 후 원명을 복원하는 파이프라인을 설계했습니다. "다율이는 수업 시간에 적극적으로"가 "[S001]은(는) 수업 시간에 적극적으로"로 바뀌어 AI에 전달되고, 돌아온 문장에서 다시 "다율"로 복원됩니다. 한국어 조사 변형까지 자동 처리합니다.
이 과정에서 프롬프트 엔지니어링은 기술 문제가 아니라 도메인 이해 문제라는 것을 배웠습니다. 바이트 제한을 지키면서 맥락을 보존하고, 생기부 지침에 맞는 톤을 유지하려면 교육과정과 생기부 작성 규정을 깊이 이해해야 했습니다.
여러 교사가 한 학생을 함께 관찰한다는 것
살핌은 학교 단위 협업 플랫폼으로 설계했습니다. 담임뿐 아니라 교과 교사, 생활지도 교사 모두가 같은 학생에 대해 관찰 기록을 남깁니다. 학기말이 되면 한 학생에 대한 여러 교사의 관찰이 모이고, AI가 이를 통합하여 생기부 문장을 생성합니다.
여기서 "담임이 다른 반 학생 기록을 볼 수 있어야 하나?" 같은 교육 현장의 미묘한 권한 문제에 부딪힙니다. Row-Level Security를 기반으로 학교별, 역할별 데이터 격리를 구현했습니다. 한 교사가 여러 학교 계정을 동시에 관리할 수 있는 구조입니다.
디자인을 세 번 바꾸며 배운 것
UI 디자인을 Cozy Garden에서 Simple로, 다시 Organic Brutalism으로 전환했습니다. 교사 사용자에게 맞는 톤을 찾는 데 세 번의 시행착오가 필요했습니다. 화려한 인터페이스보다 타이포그래피 중심의 절제된 디자인이 교사가 실제 업무에서 편하게 쓸 수 있는 톤이었습니다.
DB 스키마도 여러 차례 대폭 수정했습니다. 관찰 기록과 활동, 클래스룸 간의 관계를 정리하면서 SSoT(Single Source of Truth) 원칙의 중요성을 뼈저리게 배웠습니다. 활동을 만들면 클래스룸이 자동 생성되고, 활동 수정이 클래스룸에 자동 동기화되는 구조를 확립한 후에야 데이터 불일치가 사라졌습니다.
배운 점
교육 현장에서 AI를 쓸 때 가장 중요한 것은 교사가 결과를 신뢰하고 설명할 수 있는가입니다. AI가 만든 생기부 문장이 아무리 그럴듯해도, 교사가 "이 문장이 왜 이렇게 나왔는지" 설명할 수 없으면 쓸 수 없습니다. 프롬프트를 아무리 정교하게 짜도, 교사가 실제로 어떻게 기록하는지 모르면 쓸모없는 문장이 나옵니다.
살핌이 풀고 있는 문제의 본질은 "생기부 자동화"가 아니라 "교사의 관찰이 교육적 가치를 갖도록 구조화하는 것"입니다. 잘 축적된 관찰 기록은 생기부 문장보다 훨씬 큰 가치를 가집니다. 학생의 성장을 시각화하고, 역량을 분석하고, 교사 간에 공유하는 것까지. 생기부 문장은 그 과정의 부산물에 가깝습니다.
다음 단계
활동-클래스룸-생기부 완전 동기화 아키텍처가 확립된 상태입니다. AI 생기부 파이프라인을 고도화하면서, 교사의 실제 사용 데이터를 기반으로 출력 품질을 개선하고 있습니다. 학교용과 함께 개인용 살핌(데스크톱 앱)도 별도로 발전시키고 있습니다.
Knowledge Base
살핌(Salpeem) 지식 보기
살핌(Salpeem) 프로젝트에 대해 팀과 소통하기