
신입 개발자 양현직
github.com/JiksGit
Tel. 010-2484-0654
yanghyunjik99@gmail.com
안녕하세요. 데이터의 안정성과 서비스의 신뢰성을 보장하는 신입 개발자 양현직입니다
가천대학교 컴퓨터공학과를 졸업하고 Java 기반 웹 기술을 중심으로 실무형 프로젝트와 교육을 이수한 신입 개발자입니다.
Spring Boot, Spring Framework, React, jQuery 등 다양한 기술을 다루며, 단순히 동작하는 코드가 아닌 트랜잭션 처리로 데이터 무결성을 보장하고 시스템 안정성을 확보하는 개발에 집중해왔습니다.
최근에는 K-POP 라이브 커머스 플랫폼 ‘Universe’ 프로젝트에서 상품 다중 이미지 업로드 시 실패했을 경우 단일 트랜잭션 구조를 적용해 데이터 일관성을 확보하였습니다.
앞으로는 새로운 기술을 적극적으로 도입함과 동시에 기존 서비스의 안정성과 신뢰성을 극대화하는 개발자로 성장하고자 합니다.
Skill
- Backend : Java, Spring Boot, Spring Framework, JPA, Spring Security, JWT
- Frontend : React, jQuery, AJAX, JSP, thymeleaf
- Database / Cache : MySQL, Redis
- Infra / DevOps : AWS (EC2, RDS), Naver Cloud, Docker, Nginx, GitHub Actions
- Version Control : Git, GitHub, SourceTree
- Tools : Postman, Swagger
Projects
[신세계I&C 교육 팀프로젝트] Universe – K-POP 굿즈 라이브 커머스 플랫폼
기간: 2025.09 ~ 2025.10 (7주)
인원: 4명 (팀장)
기술 스택: Spring Boot (3.5.5), Java (JDK 21), JPA, React (Vite), Eureka, Gateway, MySQL, Redis, Nginx, Naver Cloud, GitHub Actions
서비스: 라이브 방송 중 실시간 채팅으로 소통하며 상품을 바로 구매할 수 있는 플랫폼
담당 업무: 아티스트 굿즈 및 앨범(상품) CRUD, 채팅 서비스 기능 (채팅 욕설 필터링, 도배 방지)
주요 내용:
| 문제 내용 |
해결 방법 |
기대 효과 |
| 제한된 개발 기간(7주) 내 효율적 일정 관리 및 체계화 필요 (팀장 역할) |
WBS 기반 일정 및 역할 분담 관리 |
|
- 프로젝트 전반을 체계적으로 개발하기 위해 기능 단위로 일정과 우선순위를 세분화하고, 진행 상황을 시각화
협업 도구를 활용한 설계 및 산출물 관리
- Figma(화면 설계), Notion(산출물 및 회의록), Swagger(API 명세) 활용한 협업 체계 구축
GitHub 코드 리뷰 프로세스 주도
- Pull Request 기반 리뷰를 통해 코드 품질과 일관성을 유지, 모든 팀원의 승인 후 merge 진행 | - 체계적인 일정 관리로 예측 가능한 개발 진행 및 프로젝트 목표 달성
- 일정 지연 상황에서 빠른 대응으로 프로젝트 리스크 최소화
- Pull Request 기반 코드 리뷰를 통한 소통으로 코드 품질 향상 및 일관성 확보 |
| 프론트엔드 및 백엔드 개발 환경 통일 및 코드 스타일 통일 | Vite 기반 React, Spring Boot Gradle 프로젝트 초기 세팅
→ 전역 스타일/라우팅/컴포넌트 구조 템플릿 구축 및 공유 | - 개발 환경 표준화로 팀원들이 즉시 기능 개발에 집중 가능
- 중복 세팅 및 스타일 불일치로 인한 리스크 감소 |
| 라이브 스트리밍과 채팅이 동시에 발생하는 단일 화면에 순간적으로 대규모 트래픽이 집중될 가능성 | Spring Cloud Gateway + Eureka 기반으로 라이브, 채팅, 핵심 서비스를 독립된 서비스로 구성 | 트래픽 급증 상황과 일부 서버 장애 발생 시에도 지속적인 서비스 운영이 가능한 고가용성 확보 및 유연한 확장성 고려 |
| 상품 등록 및 수정 과정에서 데이터 불일치 가능성 발생 |
@Transactional 적용하여 단일 트랜잭션 처리
① 상품 DB 저장
② 상품 pk 기반 폴더 생성 및 다중 이미지 업로드
③ 상품 이미지 DB 저장
⇒ 어느 단계에서든 실패 시 전체 Rollback (생성된 폴더 및 업로드된 이미지 삭제) | 단일 트랜잭션 처리로 데이터 무결성 확보 |
| 채팅 서비스 기능 - 실시간 통신 및 빠른 송수신 필요 | WebSocket + STOMP 기반 실시간 통신 구현
Redis 캐시를 활용하여 저장 후 5분마다 MySQL에 동기화 | - Redis 캐시를 활용하여 RDB 대비 약 3~5배 송수신 속도 향상
- Mysql에 저장하여 채팅 데이터 유실 방지 |
| 채팅 서비스 기능 - 욕설 및 도배 방지 정책 필요 | Aho-Corasick 알고리즘 기반 욕설 필터링 + Sliding Window Rate Limiting으로 도배 제어
욕설 시 또는 5초 내 8회 이상 채팅 시 30초 mute, 3회 mute 시 해당 라이브 참여 제한 | 악의적 및 의도치 않은 채팅을 방지하여 클린한 채팅 환경 조성 |
| 채팅 서비스 기능 - 사용자 인증 및 제재 시스템 필요 | Gateway 단에서 JWT 기반 권한 인증 및 블랙리스트 관리 구현 | - 사용자 권한(Admin/User)에 따른 채팅 UI 차별화
- 악의적 사용자 접근 차단으로 서비스 안정성 향상 |