Files
irukseo/이력서.md
2026-05-06 20:47:01 +09:00

6.4 KiB

tags, last_updated, name, role, email, phone, portfolio, github
tags last_updated name role email phone portfolio github
resume
cv
2026-05-06 손을준 Backend Developer https://dalsu.dev/ https://github.com/thsdmfwns

손을준

백엔드 개발자 | Java/Spring Boot · C#/ASP.NET Core · Clean Architecture

소개

인증/인가, 대용량 업로드, 비동기 작업 처리처럼 서비스 안정성과 직결되는 백엔드 흐름을 설계하고 구현하는 개발자입니다. Spring Boot와 ASP.NET Core 기반 프로젝트에서 Clean Architecture, Redis, Docker Compose, CI/CD를 활용해 동작 가능한 백엔드 시스템을 만드는 데 집중해왔습니다.

핵심 역량

  • 인증/인가 설계: OAuth2, Spring Security, Opaque Session Token, Redis Session 기반 권한 제어 경험
  • 대용량 업로드 처리: tus 기반 재개 가능한 업로드, Finalize 상태 전이, Quota 예약 구조 설계
  • 비동기 작업 처리: Redis Queue/Pub/Sub, SSE를 활용한 AI 분석 결과 실시간 전달 구조 구현
  • 백엔드 아키텍처: Clean Architecture, Result Pattern, 계층 분리 기반 유스케이스 중심 설계
  • 배포/운영 기반: Docker Compose, nginx/Traefik, GitLab CI/CD, GHCR 기반 배포 구성 경험

기술 스택

분류 주력 기술 사용 경험
Backend Java 21 / Spring Boot, C# / ASP.NET Core Minimal API, Blazor WASM
Architecture Clean Architecture, Result Pattern Modular Monolith, Domain Modeling
Database PostgreSQL, MySQL EF Core, JPA, MyBatis, Flyway
Cache / Async Redis, SSE Pub/Sub, List Queue
Auth OAuth2, Spring Security, Opaque Session Token Session Cookie, Redis Session
Infra Docker Compose, GitLab CI/CD nginx, Traefik, GHCR
AI Integration OpenAI GPT API, Structured Output Qdrant, Elasticsearch, Prompt Engineering
Frontend Vue 3, TypeScript Pinia, Blazor JS Interop
Testing NUnit, JUnit, Selenium E2E Vitest, Playwright

프로젝트

Cloud# (CloudSharp) — 셀프호스트 파일 서비스 플랫폼

백엔드 · 인프라 · 설계 담당

Space 단위 격리 저장 공간을 제공하는 셀프호스트 파일 서비스입니다. tus 기반 재개 가능한 대용량 업로드, 단명 다운로드 세션, Quota 정책을 설계했습니다.

  • ASP.NET Core Minimal API + Clean Architecture 기반으로 API/Core/Infrastructure 계층 분리
  • tus 기반 재개 가능한 업로드 파이프라인과 Finalize 상태 전이 구조 설계
  • Quota 예약 경쟁 조건을 SELECT ... FOR UPDATE와 상태 기반 CAS UPDATE로 제어
  • Opaque Session Token + Redis 세션 구조로 권한 변경 즉시 반영 가능한 인증/인가 구현
  • Docker Compose와 nginx 단일 진입점으로 API/tusd 서비스를 분리 배포

C# ASP.NET Core PostgreSQL EF Core Redis tusd Docker Compose nginx

Didit — GitHub 통합 팀 협업 플랫폼

백엔드 · 인프라 · AI 비동기 파이프라인 담당

GitHub 워크플로우를 OAuth2 인증, 화상회의, AI 이슈 분석, SSE 실시간 이벤트로 연결한 팀 협업 플랫폼입니다.

  • Spring Boot 기반 REST API 30+개 설계 및 구현
  • GitHub OAuth2와 repo/org 권한을 연계한 SPA 인증 흐름 구현
  • Redis List Queue와 Pub/Sub을 활용해 ML 추론 작업과 API 응답 흐름 분리
  • Redis Pub/Sub과 SSE를 활용해 비동기 AI 분석 결과를 요청 사용자에게 실시간 전달
  • Flyway 마이그레이션과 JPA validate로 스키마 정합성 검증

Java 21 Spring Boot Spring Security MySQL Redis SSE Flyway JPA OpenVidu

술통여지도 (Sulmap) — AI 기반 술집 추천 플랫폼

백엔드 · AI 추천 엔진 · 데이터 파이프라인 담당

위치·날씨·시간·요청사항을 바탕으로 주변 술집 Top 10과 추천 이유를 제공하는 지도 기반 웹 서비스입니다.

  • Spring Boot + JPA 기반 REST API와 16개 테이블 중심 도메인 모델 구현
  • 반경 내 최대 200개 후보를 2단계 Cascade Ranking으로 줄여 GPT 호출 토큰 약 70% 절감
  • Pipe-delimited Domain Format을 적용해 JSON 대비 프롬프트 토큰 약 40% 절감
  • Structured Output, 허용 ID 검증, fallback 전략으로 GPT hallucination과 AI 실패 상황 방어
  • .NET 9 + Qdrant + OpenAI Embedding 기반 공공데이터 ETL 파이프라인 구현

Java Spring Boot MyBatis MySQL Elasticsearch OpenAI GPT API Qdrant Vue 3

TusBlazorClient — Blazor WASM용 tus 클라이언트 라이브러리

단독 개발 · NuGet 배포

tus-js-client를 C# API로 감싼 Blazor WASM 대용량 업로드 라이브러리입니다. JS 작성 없이 재개 가능한 업로드를 사용할 수 있도록 설계했습니다.

  • TusClient, TusUpload, TusOptions 중심의 타입 세이프 Public API 설계
  • AddTusBlazorClient() 기반 DI 확장 메서드로 Blazor 프로젝트 통합 단순화
  • [JSInvokable]DotNetObjectReference를 활용해 JS 콜백과 .NET 델리게이트 연결
  • JS ES Module Lazy Loading과 IAsyncDisposable 기반 리소스 생명주기 관리
  • NuGet.org TusBlazorClient v1.0.1 배포 및 Selenium E2E 테스트 검증

C# .NET Blazor WASM IJSRuntime JS Interop tus-js-client NuGet Selenium

교육 및 경력

  • 삼성청년SW·AI아카데미 (SSAFY) | 2025.06 ~ 2026.06 예정
  • 한연 인턴 (우송대학교 학생 인턴) | 2021.06 ~ 2021.12
  • 태인 인턴 (우송대학교 학생 인턴) | 2021.03 ~ 2021.06
  • 우송대학교 비트아카데미 고급 과정 수료 | 2020.09 ~ 2021.01

학력

우송대학교 IT융합학부 컴퓨터정보보안전공 (4년제 졸업)

자격증

  • 정보처리기사 | 과학기술정보통신부 | 2023.09