Full-stack Developer
강동윤
어떤 도메인이든 호기심과 책임감을 가지고 깊이 파고드는 것을 즐기는 엔지니어입니다. 어느새 프론트엔드, 백엔드, 인프라, 보안까지 폭넓게 경험하며, 기술적 깊이와 넓이를 동시에 갖춘 T자형 풀스택 개발자로 거듭나고자 합니다.
Skills
Frontend
React컴포넌트 기반 선언형 UI 설계와 상태 관리 패턴 적용
Next.jsApp Router 기반 서버 컴포넌트로 렌더링 전략(SSR·SSG·ISR) 최적화
TypeScript정적 타입으로 런타임 오류를 컴파일 타임에 조기 차단
Tailwind CSS유틸리티 클래스로 웹·인쇄 이중 레이아웃을 단일 코드베이스에서 구현
Backend
Java객체지향 설계 원칙 적용 및 Spring 생태계의 기반 언어
Spring Boot의존성 주입 기반 레이어드 아키텍처 구성과 RESTful API 설계
JPA / Hibernate엔티티 연관관계 설계, N+1 탐지 및 JOIN FETCH 쿼리로 해결
MySQL정규화된 스키마 설계와 인덱스 전략으로 슬로우 쿼리 성능 개선
Infra · Security
AWS EC2배포 환경 프로비저닝 및 Blue-Green 전략으로 무중단 배포 구현
Nginx리버스 프록시 구성과 배포 전환 시 트래픽 라우팅 게이트웨이
Docker컨테이너 기반 빌드 표준화로 환경 차이에 따른 배포 오류 제거
E2EEWeb Crypto API(PBKDF2·HMAC-SHA256·AES-GCM)로 클라이언트 사이드 E2EE 파이프라인 구현
Selected Projects
TimeTogether
상세 아키텍처 보기 ↗2024.03 — 2025.10Frontend 단독 구현
Next.js 16 · TypeScript · Zustand · TanStack Query · Web Crypto API
- 그룹 약속의 시간 조율 · 장소 선정 · 일정 확정을 한 흐름으로 묶은 모바일 웹 클라이언트를 단독 구현
- 외부 암호 라이브러리 없이 Web Crypto API(PBKDF2 · HMAC-SHA256 · AES-GCM)만으로 클라이언트 사이드 종단간 암호화 파이프라인을 구성, 아이디 · 비밀번호 · 이메일 · 전화번호가 평문으로 서버에 도달하지 않는 구조 확보
- TanStack Query 의 refetchInterval 을 드래그 입력 상태로 제어하는 Smart Polling 으로 WebSocket 없이 다중 사용자 시간표 실시간 조율을 구현
Result
원본 자격증명·개인정보 서버 전송상시0 회
DB 평문 PII 저장평문AES-GCM 암호문
실시간 조율 인프라WebSocket스마트 폴링
Monimentoom
상세 아키텍처 보기 ↗2023.09 — 2024.02Backend · Infra
Spring Boot · JPA · MySQL · Nginx · AWS EC2 · S3 · Docker · GitLab CI
- 단일 EC2 위에서 Nginx upstream을 sed로 원자 치환하고 reload하는 Blue-Green 파이프라인 설계 — 헬스체크 실패 시 자동 롤백까지 포함
- 이미지 업로드를 S3 Presigned PUT URL로 분리해 업로드 트래픽이 WAS를 경유하지 않도록 구성; 호스트 suffix 검증으로 SSRF·타 버킷 삭제 방지
- JPA 지연로딩으로 발생하던 N+1을 JOIN FETCH 쿼리로 해결, 도메인 엔티티에 validateOwnership(userId) 불변식을 내재화해 IDOR 차단
Result
배포 다운타임수 분0 분
댓글 목록 쿼리N+1 회1 회
이미지 업로드 경유WASS3 직접
BlockGuard
상세 아키텍처 보기 ↗2025.07 — 2025.08Frontend (공동 구현)
React 19 · TypeScript · Vite · TanStack Query · Tailwind 4 · Lottie
- 노인 대상 보이스피싱·금융 사기 예방 모바일 웹 — 13단계 사기 분석 설문부터 결과 위험도 표시·실전 시뮬레이션·뉴스·보호자 긴급 신고까지 한 흐름으로 구현 (KUIT 5기 다학제간 팀 프로젝트, 최우수상)
- useFraudSurvey · useImageSave · useDelayRender 등 다단계 입력·이미지 첨부·시간차 메세지 렌더링을 커스텀 훅으로 분리하고, React Query 결과 캐싱(staleTime 5분 · refetchOnMount: false) 으로 결과 페이지 재방문 시 재요청 차단
- iOS 모바일 호환성에 집중 — 100dvh 레이아웃, overscroll-none 으로 스크롤 고무줄 효과 제거, 스크롤 위치에 따른 헤더 색상 전환으로 안전 영역과 콘텐츠 가독성 동시 확보
Result
사기 분석 결과 재요청재방문마다5분 캐시
이미지 미리보기 URL메모리 누수수동 revoke
시뮬레이션 메세지즉시 노출1.5~3초 stagger
Other Projects
Charcoal
중단2023.12 — 2024.05FrontendNext.js · React Hook Form · Zod · TypeScript
- RHF + Zod 기반 폼 유효성 검증 및 에러 처리 아키텍처 설계
- Config 객체 기반 동적 폼 생성으로 UI 컴포넌트 재사용 구조 확보
Experience
Community & Leadership
2025.09 — 2025.12
Web 파트 튜터KUIT 6기
- 코드 리뷰 및 프로젝트 멘토링
- 웹 개발 스터디 주도
2025.03 — 2025.08
Web 파트KUIT 5기
- 기획·디자인·개발 다학제간 팀 프로젝트 '블락가드' 진행
- 최우수상 수상
Education
2025.12 — 2026.06
SW 스쿨 3기현대오토에버
- 풀스택 실무 교육
- '모니멘툼' 프로젝트 인큐베이팅
2019.03 — 2026.08
소프트웨어학과 졸업예정건국대학교
Awards
2025.06
교내 커리어 로드맵 경진대회 우수상