안녕하세요! 다재다능한 프론트엔드 개발자가 되고픈 김준혁입니다.

저는 프론트엔드 뿐만이 아닌 “개발”이라는 분야 자체를 좋아합니다. 현재는 프론트엔드 개발자로서 활동하지만 다양한 경험을 통해 성장하는 진짜 “개발자”가 되고 싶습니다!

📚 지식을 통해 소통하는 개발자

프로젝트 협업 시 회의에서 논의된 내용이 명확히 정리되지 않아 팀원들 간 오해가 발생하고 작업이 지연되는 문제를 자주 경험했습니다.

이를 해결하기 위해 GSMC 외 4+개의 프로젝트에서 팀원들의 진행 사항을 효과적으로 추적할 수 있는 회의록 • 데일리 스크럼 등을 주도적으로 운영하였습니다.

💬 다양한 기술로 새로운 가치를 창출 하는 개발자

다양한 기술은 새로운 아이디어와 가치를 불러오는 소중한 보물 창고라고 생각합니다.

Supabase 활용한 풀스택 개발, Python 머신러닝 등의 다양한 기술을 프론트엔드 지식과 접목하여 새로운 가치를 창출하고 있습니다.

🎓 프로필

광주소프트웨어마이스터고등학교 8기 • SW개발과

2024.03 ~ 2027.01

프로젝트

41a26c3563f9541f2dd34bcf38324a7b7d34a8a2.png

GSMC(GSM Certification)

팀 인큐브 • 2025.03.14 ~ 2025.07.29

프론트엔드 개발자 • 스크럼 마스터

<aside>

포트폴리오 작성 페이지

image.png

메인 페이지

image.png

학생 게시글 페이지

MY WRITE - SEARCH.png

선생님 검토 페이지

글 자세히 보기 (통과, 탈락).png

선생님 학생 목록 페이지

MEMBER.png

모바일

MEMBER2.png

프로젝트 개요

GSMC는 광주소프트웨어마이스터고의 GSM 인증제를 보다 간편하게 관리하기 위해 개발된 서비스입니다.

GSM 인증제란? 광주소프트웨어마이스터고에서 학생들의 실력과 인성 등의 종합적인 역량을 객관적으로 나타내는 제도입니다. 이러한 역량은 학생의 자격증, 프로젝트 활동, 독서 활동 등의 다양한 활동들을 바탕으로 평가됩니다.

선생님분들과의 지속적인 커뮤니케이션 활동을 통해 현재 상용화 전 단계에 놓여 있습니다.

프로젝트 기획 배경 및 문제 해결 과정

팀 나현욱 - GSMC-V2-AI.png

작년까지 시행된 시스템의 가장 큰 문제는 학생과 교사 모두에게 과도한 업무 부담을 주고 있다는 점이었습니다. 학생들은 각종 평가 항목별로 증빙 자료를 일일이 한글 문서로 작성해야 하는 번거로움을 겪고 있었고, 교사들은 수십 개의 파일을 하나하나 검토한 후 다시 엑셀로 정리하는 반복 작업에 상당한 시간을 소모하고 있었습니다. 저희는 이런 과도한 업무 줄이기 위해서 GSMC 프로젝트를 개발하게 되었습니다.

접근성 향상: 기존의 복잡한 엑셀 • 한글 파일 방식을 직관적인 웹 플랫폼으로 전환해 학생들의 적극적인 참여를 이끌어내고자 하였습니다.

교사 업무 효율화: 평가 담당 교사가 승인/거절 버튼 하나로 간편하게 학생 평가를 완료하고, 실시간으로 점수 현황을 파악할 수 있도록 하였습니다.

학생 사용자 경험 개선: GSM 인증제를 활용하는 학생들이 웹사이트를 통해 기존보다 훨씬 직관적이고 편리하게 자신의 인증 현황을 관리할 수 있는 환경을 제공했습니다.


🛠️ 사용 기술

Next.js-15 React-19 Turborepo Tanstack Query React-Hook-Form Tailwind CSS Type Script Axios ESLint


🏗️ 기여한 작업

FSD 아키텍쳐를 기반으로 Monorepo 프로젝트 구조를 설계하였습니다.

├── 📁 apps
│  ├── 📁 admin
│  │  ├── 📁 src
│  │  │  ├── 📁 app
│  │  │  ├── 📁 entities
│  │  │  ├── 📁 shared
│  │  │  ├── 📁 views
│  │  │  └── 📁 widgets
│  └── 📁 client
│  │  ├── 📁 src
│  │  │  ├── 📁 app
│  │  │  ├── 📁 entities
│  │  │  ├── 📁 shared
│  │  │  ├── 📁 views
│  │  │  └── 📁 widgets
├── 📁 packages
│  ├── 📁 api
│  ├── 📁 consts
│  ├── 📁 hooks
│  ├── 📁 shared
│  ├── 📁 store
│  ├── 📁 types
│  └── 📁 utils
├── 🔒 package-lock.json
├── 📦 package.json
├── 🔒 pnpm-lock.yaml
├── 📄 pnpm-workspace.yaml
└── 📋 turbo.json

<aside>

</aside>