
미리보기
- 직업
- 서버 개발자
- 이름
- 강해성
- 이메일
- koh1260@naver.com
- 간단소개
- 현재 실시간 메타버스 플랫폼을 거의 1인으로 직접 개발하고 운영 단계에 있습니다. 자신이 좋아하는 것보다는 프로젝트의 성공을 위해 해야할 일을 합니다. 서버 개발자로 참여한 프로젝트에서 서버 및 인프라 작업 뿐만 아니라 웹뷰 앱, 웹 프론트 및 게임 엔진 작업등 익숙하지 않은 기술을 단기간에 독학하여 프로젝트를 성공적으로 완수한 경험이 있습니다. 서비스의 안정성을 위해 항상 테스트 코드를 작성하며, 타입 안전성을 중요하게 여깁니다.
기술 스택
- 기술 스택
- TypeScript
- NestJS
- Jest
프로젝트
- 프로젝트명
- 리브아일랜드 (픽셀 감성의 메타버스 플랫폼)
- 소속/기관명
- 토이프로젝트
- 프로젝트 기간
- 2025.02. - 진행 중
- (4개월)
- 프로젝트 설명
백엔드:
TypeScript
,NestJS
,Prisma
,Socket.IO
,Jest
,Supertest
프론트엔드:
Phaser
(웹 기반 게임 엔진),Next.js
인프라:
EC2
,CloudFront
,CloudWatch
,RDS(PostgreSQL)
,ElasticCache(Redis)
,Route53
,S3
전체 데이터베이스 스키마 설계.
Socket.IO 기반 실시간 이벤트 처리 전반 설계 및 구현, 방 참여 및 이탈, 공격, 채팅, 이동 등 핵심 기능 100% 담당.
실시간 데이터의 영속화를 위해 Redis를 도입하고 서버 시작 시 로컬 메모리에 필요한 데이터를 적재하는 기능을
구현하여 서버가 재시작되어도 서비스의 연속성 최대한 유지.
Redis 비관적 락을 기반으로 한 Transaction Manager를 직접 구현하여 인원 제한이 있는 실시간 방에서
Race Condition을 방지하고 중복 입장 문제 해결.
- 블로그 포스팅: https://velog.io/@a001206/redis-race-condition실시간 회원 및 방 정보를 저장하는 메모리 스토리지를 인터페이스 기반으로 추상화하여 로컬 메모리 구조를 구현체만
바꾸어 Redis 기반으로 간편하게 교체.
AWS 과금 구조를 고려하여 실시간 웹소켓 브로드캐스트의 전송 주기를 조절하고 바이너리 포맷을 적용하여
네트워크 송신 비용 절감.S3 Presigned URL을 활용하여 이미지 업로드 시 서버 I/O를 제거하고 네트워크 비용 절감.
공용 DTO 타입을 NPM 패키지로 분리 및 배포하여 프론트엔드 개발 시 중복 타입 정의 제거 및 생산성 향상.
Jest와 Supertest를 활용한 E2E 및 단위 테스트 작성으로 리팩토링 내성 및 시스템 안정성 향상.
AWS 환경에서 서비스 전체 인프라를 구성.
Cloudwatch를 활용한 모니터링 및 알림 시스템을 구축하여 장애 대응 능력 향상.
Next.js와 Phaser간의 이벤트 기반 통신 구조에 타입 안전성 높은 EventBus를 구현하여 타입 오류 방지 및 유지보수성 향상.
서비스 전체 기획.
서비스 전체 디자인 설계.
Phaser 기반 전체 게임 로직 직접 구현.
Next.js와 Phaser의 통합 구조 설계 및 UI 구현.
맵 제작 및 간단한 픽셀 아트 애니메이션 작업까지 직접 수행.
#서비스 중 #프론트엔트 100% #백엔드 실시간 관련 기능 100% 기여
기술 스택
백엔드 개발자로서 기여
서비스의 구성원으로서 기여
- 프로젝트명
- Lighty(라이티) 프라이빗 sns
- 소속/기관명
- 토이프로젝트
- 프로젝트 기간
- 2025.12. - 진행 중
- 프로젝트 설명
백엔드:
TypeScript
,NestJS
,Prisma
,Jest
,Supertest
프론트엔드:
Phaser
(웹 기반 게임 엔진),Next.js
인프라:
EC2
,CloudFront
,CloudWatch
,RDS(PostgreSQL)
,Route53
,Sentry
,S3
전체 데이터베이스 스키마 설계.
50여 개의 API 전체 설계 및 구현
전형적인 3레이어 구조에서 객체지향 설계 원칙에 따라 4레이어 구조로 리팩토링하여 비즈니스 로직의 책임을 명확히 분리하고 유지보수성과 테스트 용이성을 개선.
- 블로그 포스팅: https://velog.io/@a001206/3layer-to-4layerFirebase Cloud Messaging(FCM)을 활용한 푸시 알림 기능 구현.
비즈니스의 관심사가 아닌 알림 기능을 이벤트 기반 구조로 분리하여 비즈니스 로직과의 결합도 최소화.
이벤트 발행 로직에서 구현체를 외부에 노출하지 않도록 추상화하고 제네릭 타입을 활용하여 타입 안전성 확보.
AWS의 Lambda + EventBridge를 활용해 하루 한 번 실행되어야 하는 스케줄 기능을 구현하여 스케줄 기능과 서버의 프로세스 분리.
Jest와 Supertest를 활용한 E2E 및 단위 테스트 작성으로 리팩토링 내성 및 시스템 안정성 향상.
AWS 환경에서 서비스 전체 인프라 구성.
웹과 통신하는 React Native 기반 웹뷰 앱 개발.
IOS 앱스토어 심사 및 등록 전 과정.
#서비스 중인 프로젝트
기술 스택
백엔드 개발자로서 기여
서비스의 구성원으로서 기여
포트폴리오
자기소개
- 자기소개