HO GAN · 교육 서비스

베트남어를 가르치고,
학습과 운영의 불편을 서비스로 바꿉니다.

세 서비스 모두 단독 1인 개발

교육 도구 · 축약 체험

베트남어
단어력 테스트

단어를 맞추고,
다음 학습 방향을 찾는 경험.

01 — 시작

화면에 가까이 다가가면
단어 테스트가 시작됩니다.

원본 UI · 샘플 기록
운영 서버로 전송하지 않습니다.

스크롤로 살펴보기 ↓

원본 화면을 불러오고 있습니다.

학생·운영자 UI · 가상 기록

통합 DB

학습 현황과 피드백을
학생과 운영자가 함께 확인하도록.

02 — 학습 현황과 피드백

학생의 학습 현황을 조회하는 화면입니다.

단독 1인 개발 · AI 활용
가상 기록 · 운영 조회·전송 없음

스크롤로 살펴보기 ↓

원본 화면을 불러오고 있습니다.

학생 조회 UI · 가상 기록

통합 DB

학습 현황과 전화수업 피드백을 한곳에서 조회하는 학생 화면입니다.

표시된 제출률·점수는 가상 학습 기록입니다. 실제 학생 정보와 운영 서버를 사용하지 않습니다.

조회 화면

학습 현황

피드백 상세

운영 사례 · 체험용 재현

100일 챌린지 LMS

하루의 학습과 과제 제출을
하나의 흐름으로.

03 — 학습과 과제 제출

로컬 원본의 Day 1 교안으로 학습을 살펴봅니다.

단독 1인 개발 · AI 활용
제출·검토는 메모리 전용 재현

스크롤로 살펴보기 ↓

원본 화면을 불러오고 있습니다.

운영 사례 · 체험용 재현

100일 챌린지 LMS

로컬 원본 교안을 읽고, 가상의 과제 제출과 검토 과정을 체험합니다.

실제 수업의 출석·제출로 처리되지 않습니다. 음성·필기·파일 업로드는 제외했습니다. ABC 강의는 별도 공개 영상 예시입니다.

학습 화면

샘플 답안

시연 제출 상태

100일 챌린지 LMS · 나의 판단

학습과 운영 사이,
내가 정한 기준

학생은 매일 학습과 제출을 이어 가야 하고, 운영진은 제출 상태와 보완할 내용을 확인해야 합니다. 저는 이 흐름에서 반복되는 불편을 개선 요구로 정리했습니다.

운영 기준·우선순위·화면 검토는 제가 맡고,
코드 작성과 기술 검증에는 AI의 도움을 받았습니다.

01

확인과 인정을 구분

과제를 확인했다는 이유만으로 미션 인정 상태까지 바뀌지 않도록 범위를 정했습니다. 이 체험에서도 제출·확인·인정 상태를 각각 바꿔 볼 수 있습니다.

02

검수가 끊기는 지점부터

반복 로딩과 완료 후 추가 클릭을 먼저 개선하도록 요청했습니다. 다음 과제로 이동할 때 목록을 유지하고, 저장 결과를 확인한 뒤 이동하는 방향을 선택했습니다.

03

속도와 기록 보존을 함께

화면이 빨라지는 것과 기존 학습 기록이 정확하게 유지되는 것을 함께 확인하도록 했습니다. 저장 결과와 연결 화면을 다시 확인하는 기준을 세웠습니다.

기록과 체험의 범위

이 판단은 2026년 10월 20일 포트폴리오 원고에 정리된 기록입니다. 자동 이동 통합 개선안은 당시 배포 전 로컬 검증 단계였으며 현재 운영 반영을 확인한 설명이 아닙니다.

단어력은 원본 UI의 축약 연습, 통합 DB는 가상 학생 조회입니다. LMS 교안은 로컬 Day 1 원본이고, 제출·검토·인정은 운영과 분리해 별도 재현했습니다. 음성·필기·파일 업로드는 포함하지 않았습니다. ABC 공개 강의는 클릭해서 재생하는 별도 예시입니다.

HO GAN · 소개

현장에서 발견하고,
판단하고, 확인합니다.

단어력 테스트, 통합 DB, 100일 챌린지 LMS를 모두 단독 1인 개발했습니다. 베트남어 교육과 학습 운영에서 발견한 문제를 개선 요구로 정리하고, 개발과 검증을 이어갔습니다. 코드 작성과 기술 검증에는 AI를 활용했습니다.

주요 경험과 기록
교육 · 운영
2023.01부터 신짜오율쌤 대표강사·OM / 2019.10–2023.01 캐럿글로벌 강사
콘텐츠
2021.06–2023.12 미니학습지 콘텐츠 / 2024.05 『7일만에 끝내는 베트남어 ABC』 집필
통번역
2016.12부터 통번역·현지 코디네이션

2026.10.19 이력서에 기록된 이력 기준입니다. ‘현재’ 재직과 세부 기여를 오늘 시점으로 재확인한 기록은 아닙니다.

SERVICE NOTES

무엇을, 왜,
어떻게 만들었나

세 서비스의 실제 소스 구조와 이번 체험의 범위를 나누어 정리했습니다.

단어력 테스트

짧은 체험에서 다음 학습으로

로그인 없이 단어를 맞춰 보고 결과에서 다음 학습 방향을 살펴보는 진입을 구상했습니다.

매칭 · 영역별 결과 · 다음 학습 안내

구조와 개발 과정

React/Vite 화면 → 단어 JSON → 매칭 상태 → 결과 분석. 이 포트폴리오는 원본 표시 컴포넌트를 재사용하고 분석 전송·상담 연결을 분리했습니다.

2026년 6월 기획 기록에는 60초 체험 목적과 다음 학습 연결이, 7월 검토에는 오타·공유·CTA 구분에 관한 피드백이 남아 있습니다. 기획에서 중요하게 본 것은 짧은 체험과 다음 학습 안내를 연결하는 흐름입니다.

기획 목적·원하는 사용자 흐름을 정하고 검토한 기록이 있습니다. 서비스는 단독 1인 개발했습니다. 코드 작성·검증 과정에서 AI를 도구로 활용했습니다.

서비스 화면으로 ↑
통합 DB

한 학생의 기록을 여러 화면에서 찾는 문제

학생별 과제 상태와 전화수업 피드백을 함께 조회할 수 있도록 화면을 연결합니다. 학생 화면과 운영자 화면은 역할이 다릅니다.

학생 조회 · 상세 평가 · 운영자 기간 조회

구조와 개발 과정

Cloudflare Pages 화면/Functions → 인증된 Apps Script 중계 → 학습·평가 기록. 이번 체험은 원본 표시 함수와 가상 데이터만 사용하며 운영 API를 호출하지 않습니다.

이 포트폴리오의 체험 구현: 학생·운영자 화면을 분리하고, 요약에서 평가 기록과 기간별 정시 제출률로 이어지도록 연결했습니다. 두 역할이 같은 가상 기록을 사용해 요약과 상세 수치가 일치하도록 구성했습니다.

운영 요구와 화면을 연결한 사례입니다. 서비스는 단독 1인 개발했습니다. 운영 현장의 피드백과 AI 개발 도구 활용은 개발 인원과 구분합니다.

서비스 화면으로 ↑
100일 챌린지 LMS

확인과 인정을 같은 상태로 처리하지 않기

과제 확인, 보완 요구, 미션 인정의 의미를 나눴습니다. 반복 검수 중 목록이 사라지거나 저장 확인 없이 다음으로 넘어가는 지점을 먼저 개선하도록 요청했습니다.

하루 학습 · 과제 제출 · 검토 상태 구분

구조와 개발 과정

Next.js/React 화면 → 학생 API → 세션·입력 검증 → 저장 계층. 소스에 Firebase 및 로컬 저장 분기가 있으며 이번 체험은 이를 불러오지 않는 메모리 전용 재현입니다.

기록된 개선 순서: 운영 기준 구분 → 반복 검수의 불편 정리 → 저장 결과·목록 유지 검증 → 자동 이동은 기본 해제 후 검토. 해당 개선 작업에서 정한 순서와 기준입니다.

단독 1인 개발로 진행했습니다. 운영 기준·우선순위·화면 검토를 직접 맡고, 코드 작성과 기술 검증에는 AI를 활용했습니다.

서비스 화면으로 ↑
API와 체험의 차이
서비스소스에서 확인한 요청역할·제한
단어력GET /data/words.json단어 데이터. 원본 분석 전송 모듈은 체험에서 제외.
통합 DBGET /api/company-data인증된 운영 조회 중계. 비공개·no-store. 체험은 호출하지 않음.
통합 DBPOST /api/student-evaluations이름·조회 키 검증 후 학생 평가 조회. 실제 계정 입력 없음.
통합 DBPOST /api/assignment-period-data운영 인증과 studentId·course 검증. 지각 제외, 기간 내 마감 과제 기준. 가상 체험은 로컬 계산.
LMSGET /api/student/lessons/:day
POST /api/student/submissions
교안 조회·과제 제출. 세션 및 입력·중복 요청 검증 구조. 체험은 운영 저장 없음.

현재 소스 계약의 요약입니다. 모든 운영 API의 현재 응답을 호출 검증한 명세는 아닙니다.

다음으로 만들고 싶은 것

나만의 언어 학습 LMS

향후 서비스 구상

학습자마다 다른 언어 능력과 상황에 맞춰 커리큘럼과 학습 환경을 제안하는 개인 LMS를 만들어 보려 합니다.

매일 접속하면 목표 시험과 레벨, 그리고 남은 일정에 맞는 그날의 학습량과 학습 내용, 테스트가 미리 준비되어 있는 서비스를 구상하고 있습니다.

현재 실력·학습 스타일·시간목표와 일정에 맞는 커리큘럼매일의 학습과 테스트
어떤 서비스를 만들고 싶은가요?

출발점부터 목표일까지

응시하려는 시험별로 개인의 언어 능력이 어느 수준인지, 어떤 학습 스타일이 맞는지, 하루에 확보할 수 있는 학습 시간이 얼마인지, 목표 시험일 또는 준비 기간이 언제까지인지를 파악하는 것부터 시작하고 싶습니다. 이 정보를 바탕으로 개인 맞춤 커리큘럼과 개인 LMS를 제공하는 것이 목표입니다.

하나의 LMS에서 이어지는 학습

하나의 LMS 안에서 예습, 학습, 복습, 단어 정리, 테스트, 모의고사, 원어민 전화 수업, 채팅 수업까지 이어서 진행할 수 있게 만들고 싶습니다. 이렇게 쌓이는 언어 학습 데이터를 활용해 개인별 언어 학습 유형을 더 빠르게 파악하는 AI를 만드는 것도 시도해 보고 싶은 방향입니다.

아직 구상 단계의 목표입니다. 실제 구현과 효과 확인은 앞으로 진행할 과제입니다.

단어력 · 직접 체험6쌍 연습 · 시간 제한 없음 · 저장·전송 없음