최영민

Unity 클라이언트 개발자 · AI 활용

About Me

Unity 게임 클라이언트 개발 3년 11개월 — 하이퍼캐주얼 14종을 출시하며 누적 유저 300만· 매출 6억 규모의 라이브 서비스를 개발했고, 팀에 인하우스 Unity Framework를 설계해 제공했습니다.

지금은 XR/Unity KDT 과정에서 Unity 응용·인터랙티브 2개 모듈 136시수를 전담 설계·강의하며, 실무에서 감으로 쓰던 구조를 "왜 이 구조가 필요한가"부터 설명할 수 있는 형태로 정리했습니다. 동시에 8개 캡스톤 팀을 컨셉기획부터 Google Play 프로덕션 출시까지 게이트로 운영했습니다.

관리 병목은 사람을 더 붙이는 대신 도구를 설계해 풀었습니다. 판정 규칙과 데이터 스키마를 먼저 문서로 고정하고, 구현은 Claude Code·Codex에 지시했습니다.

원칙은 하나입니다 — 구현은 위임하되, 판정 기준과 검증은 내가 쥔다.

Experience

(주)디벨로켓에듀

XR/Unity KDT 과정 강사 · 8팀 프로젝트 운영 담당

2025.11 ~ 재직중

Unity 응용·인터랙티브 136시수 강의 · 8개 캡스톤 팀 37명을 프로덕션 출시까지 운영

  • UnityEngine3D 응용(64시수)·인터랙티브(72시수) 2개 모듈 전담 설계·강의, 교안 131문서 직접 작성
  • 렌더링 최적화(Batch·SetPass Call)·Unity 아키텍처 특강 2건 별도 기획·실시 — 아키텍처 특강은 실행 가능한 코드 저장소로 병행 관리
  • 담당 모듈 정규평가 과정 7차수 중 최고 평균 86.4점 (80점 이상 48/53명)
  • 기업 협약 캡스톤 8팀 37명의 프로젝트 운영 담당 — 288시수, 해당 과목의 90.0%
  • 컨셉기획 → Demo → CBT → OBT → 프로덕션 출시로 게이트 설계. 8팀 전원 최종발표 완주, 신규 출시 대상 5팀 중 3팀이 마감 내 Google Play 프로덕션 출시
  • 매일 정규 수업 2교시가 소요되던 구두 브리핑을 1일 1회 내부 테스트 빌드 + 출시 노트 확인으로 대체

개인 프로젝트 — 도파민 실험실 (@dopazlab)

숏폼 콘텐츠 기획 · 제작 · 운영

2025.02 ~ 2025.09 (8개월)

게임의 도전-판정-보상 루프를 숏폼 포맷에 이식한 수익화 실험

  • 게임의 도전-판정-보상 루프를 숏폼 포맷에 이식 — 30편 기획·제작·배포, 누적 조회 428만
  • 지표를 보고 포맷을 전환해 참여율을 약 10배(0.3% → 4%대)로 개선. 도달과 전환이 다른 지표라는 것을 확인하고 종료

MondayOFF

https://www.mondayoff.me/

Client Developer

2020.10 ~ 2024.08 (3년 11개월)

모바일 하이퍼캐주얼 14종 출시 · 매출 6억 · 누적 유저 300만

  • 인하우스 Unity Framework 설계로 팀 개발 환경 개선 — Managers 허브(Data·Pool·Resource·Scene·Sound·UI), UI_Base 컴포넌트 바인딩, Stack 기반 Object Pool
  • Match Gun 3D - 14종 중 최대 매출 타이틀 · 자사 첫 흑자 전환
  • TankBall! - Day2 ROAS 130% / TimeWalker 3D - 자사 첫 누적 유저 100만
  • 3~4개월 주기로 신작을 출시하는 사이클에서 기획(컨셉·프로토타이핑)부터 출시 후 지표 분석까지 담당
  • Firebase Analytics 기반 지표 분석 · QA 피드백 루프 · 일정 관리 · 부서 협업 조율

Projects

인하우스 Unity Framework

팀 개발 환경 개선을 위해 설계한 공통 구조 — MondayOFF 실무 산출물

  • Managers 허브로 하위 매니저(Data·Pool·Resource·Scene·Sound·UI)를 통합 접근
  • UI_Base에 컴포넌트 바인딩(GetObject·GetImage·GetButton·GetText)을 두어 중첩 UI 접근 단순화
  • Stack 기반 Object Pool로 반복 생성·파괴 비용 절감
  • GetOrAddComponent·WaitForSeconds 캐싱 등 공용 유틸·확장 메서드 제공
  • 팀 프로젝트에 적용해 신규 프로젝트 초기 세팅 비용을 줄임

Unity Architecture Guide

실무에서 만든 구조를 "왜 필요한가"부터 설명 가능한 형태로 재구성 (Unity 6)

  • 메모리 영역(static·Stack·Heap·GC) → Object와 Instance → MonoBehaviour 생명주기 → static과 Singleton → Managers 구조와 책임 분리 순으로 6강 설계
  • 구조를 먼저 제시하지 않고, Instantiate가 여러 스크립트에 흩어져 생성·파괴 추적이 안 되는 상황부터 보여준 뒤 개념을 역으로 유도
  • 각 절을 “왜 다음 개념이 등장했는가”로 닫아 개념을 사슬로 연결
  • 교안을 문서로만 두지 않고 실행 가능한 코드 저장소로 병행 관리

Match Gun 3D

출시 14종 중 최대 매출 타이틀 — 자사 첫 흑자 전환 · 반기 매출 15만 달러

  • 제한 시간 안에 총기를 짝맞추고, 매칭된 짝으로 달리는 모바일 퍼즐 게임
  • 2인 팀(클라이언트 1 · 디자이너 1) · 3개월 개발
  • 클라이언트 개발 전담 — 매칭 로직과 게임 흐름 구현, iOS·Android 양 플랫폼 출시

8팀 리스크 자동 추적 시스템

https://min-omniai.github.io/ops-risk-dashboard/

매일 정규 수업 2교시가 들어가던 구두 브리핑을 규칙 기반 자동 판정으로 대체

  • 8개 팀의 일일 진행 상황을 GSheet 스키마(작업현황 원문·운영 리스크·운영진 피드백·구조화 판단)로 역할 분리
  • 지연율·작업량 편중·D-Day 경과·연속 미제출을 자동 판정하는 규칙 6종을 코딩 전에 문서로 고정
  • 이 설계를 Claude Code·Codex에 지시해 React·TypeScript·Supabase 웹 대시보드로 구현, Google Apps Script로 시트와 자동 동기화
  • GPT 분류 값은 등급 4종·위험유형 7종으로 허용값을 고정해 구조화 붕괴 방지
  • 생성한 수치는 결정론적 코드로 재계산해 대조하되, 검증기는 고치지 않고 보고만 하게 설계

Skill

현재 업무에 사용중 혹은 사용했던 기술들입니다.

Game Client

  • C# · Unity Engine (Unity 6)
  • 렌더링·최적화 — URP, Draw Call·SetPass Call, Static/Dynamic Batching, GPU Instancing, SRP Batcher, Frame Debugger
  • 구조·패턴 — Managers 구조, static·Singleton, MonoBehaviour 생명주기, Object Pool, State Pattern, FSM, UI×MVC
  • 게임 AI — Behaviour Tree, A-Star, NavMesh
  • 시스템 — Input System, Cinemachine, Timeline, Render Texture, ScriptableObject, Addressable

AI 활용

  • Claude Code (슬래시 커맨드·훅·서브에이전트·MCP) · Codex
  • GPT API 구조화 분류 — 허용값 고정으로 분류 안정화
  • 데이터 스키마·판정 규칙 설계 후 구현 위임, 검증은 결정론적 코드로 분리

분석 · 협업

  • Firebase Analytics · Luna Playable
  • Git/GitHub · GitHub Actions
  • Google Sheets · Apps Script

Education

상명대학교 - 정보통신공학과

https://ittech.smu.ac.kr/it/index.do

2014.03 ~ 2020.02

최종학력, BS

  • 캡스톤 경진대회 우수상 - 상명대학교 교육혁신원 2019
  • VR/AR 그랜드챌린지 입선 - 한국가상증강현실산업협의회(KoBRA) 2019

게임프로그래밍전문가 - 한국콘텐츠진흥원(KOCCA)

https://www.kgq.or.kr/service/info/cert3.do

2020.08

최종합격

  • Credential ID : 20101100040