About Me
Profile
권혁태(Larry Kwon)
KAIST
•
전기및전자공학
•
산업공학 (복수전공)
•
기술경영 (부전공)
Contact & Channel
•
Email | koallarry11@kaist.ac.kr
•
GitHub |
GitHubLarryKwon - Overview

•
LinkedIn | www.linkedin.com
Course Project
시스템 프로그래밍
multi-pipeline, signal handling을 지원하는 Shell 구현
•
멀티 파이프라인, 시그널 핸들링, command 실행 기능 구현
Details
•
C언어 소켓 프로그래밍을 이용한 Echo Server-Client 구현
HTTP Proxy Server 구현
Router 구현
TCP 프로토콜 구현
•
Machine Code 레벨에서 CPU가 명령어를 어떻게 처리하는지에 대한 공부
•
ISA, pipeling, Hazard, Virtual Memory에 대한 개념 학습
•
Modelsim을 활용해 Single-cycle, Multi-cycle, Pipeline, Cache 구현
Details
빅데이터 분석 개론
item,user based 추천 시스템 구현(Netflix Challenge)
•
spark를 이용한 potential friends 마이닝
•
A-priori, node2vec 알고리즘 구현
Personal Experience & Projects
군 내 면회신청관리체계 개발
2021.03~2022.05
•
수기로 관리되던 면회신청을 전산화한 면회신청관리체계를 개발하였으며 그 편의성을 인정 받아, 공군 병사들만 사용하던 것을 넘어 2021.06월부터 계룡대 3군 대상 시행, 2022.01월부터 20비행단 확대 시행 되었음.
•
병사 및 간부용 로그인 기능, 면회 신청과 신청서 Validation, 인터셉터를 이용한 IP 제한 기능, 게시판 CRUD와 페이징 처리 권한에 따른 접근 제한 기능 구현
•
Interface의 활용성에 대한 고민으로부터 출발하여 ‘객체 지향의 사실과 오해’, ‘헤드퍼스트 디자인 패턴’, ‘오브젝트’ 등의 책을 읽으며 공부하였으며, 이후 면회신청관리체계 리팩토링을 진행
•
게시판 종류가 추가되면 중복된 코드가 다수 등장하는 문의사항과 공지사항을 데코레이터,스트래티지, 팩토리 패턴을 사용하여 재사용성을 높임.
CLASSUM 백엔드 개발
2022.07~2023.02.24
•
서버리스 아키텍처에서 백엔드 서버 및 계약 관리 스케줄러를 운영하여 시스템 안정성을 보장하였으며, CloudWatch 알림 및 Log Insight를 활용한 체계적인 사후 분석을 통해 2시간 이내 100% 사고 해결률을 달성함.
•
사용자 프로필 맞춤 필드 기능 개발 시 데이터베이스 비정규화 및 Protobuf을 활용한 효율적인 직렬화를 통해 API 응답 시간을 80% 단축함.
•
커스텀 필드 구현 시 다른 종류의 커스텀 필드 객체의 Method 구현을 추상화하기 위해 Strategy 패턴을 사용하였음.
•
이전 면회신청관리체계 개발 시 동일한 신청서가 중복으로 들어오는 문제를 경험했기에 테이블 모델링 시 UK를 설정하거나, Increment,Decrement로 동작하는 통계 데이터 조작 시 베타적 락을 걸어 정합성을 맞춤.
E-Room 프로젝트
2022.07~2023.05
•
사회 초년생을 위한 자취방 리뷰 플랫폼 기획 및 개발하였으며 취지를 인정받아 AWS Startup Activate에서 $5000의 크레딧을 지원받음
•
KAIST 및 경희대학교에서 실운영하며 100명의 사용자 및 60여개의 리뷰를 수집하였음.
•
Jenkins 기반 자동배포를 구축하였으며, 크레딧 지원 후에는 Elastic Beanstalk 기반의 자동배포로 구축 및 운영하였음
•
AWS S3에 이미지 파일을 올리는 로직 구현 시 동기 처리로 인해 response time이 느린 점을 개선하기 위해 ExecutorService를 이용하여 비동기로 처리함.
•
프로필, 리뷰, 썸네일 등의 사진 종류에 대해서 공통 로직을 분리하고, 개별 로직을 자유롭게 구현하기 위해 abstract class를 사용한 추상화와 Command 패턴을 사용하여 쉽게 개별 파일 업로드 로직을 구현할 수 있음.
SPARCS OTL
2023.03~Current
•
KAIST 학생들을 위한 강의 리뷰 서비스 OTL KAIST(otl.kaist.ac.kr)의 백엔드 개발 리드로 활동 중.
•
서버 API를 Django 2.2에서 NestJS 및 Prisma로 마이그레이션하였으며, 1) Node.js의 비동기 처리 활용 2) 쿠키 기반 인증으로 변경 및 수평 확장 설계 3) connection pool 적극 사용 4) 쿼리 분석 후 DB Index 설정 등으로 API 응답 속도를 최대 10배 향상시켰으며 TPS 40 이상을 서비스함.
•
NestJS Out-of-Memory(OOM) 문제를 조사하며, 일시적으로 Docker 컨테이너 내 PM2 클러스터를 실행하여 크래시를 완화함.
•
마이그레이션 배포 전 로그 비교를 통한 API 테스트 검증을 위해 1) nginx mirror를 이용한 네트워크 트래픽 복제 2) replica DB로 NestJS 연결,3) API 요청/응답을 비교하는 아키텍처를 설계하였으나, 1) 인증 방식의 변경 2) nginx mirror directive의 에러의 전파 3) 촉박한 배포 일정 등으로 최종적으로 불발;
•
이를 회고하며 1) ELK 스택을 통한 로깅 시스템 구축 2) 레거시 서버 미들웨어에서 Message Queue로 요청 전달 3) 이를 Consume하여 응답을 비교하는 새로운 아키텍처를 제안하며 1) 느슨한 결합 2) API 시각화 측면에서 장점을 가진다 판단함.
•
현재 Docker 기반 배포 진행 중이며 지속적 배포(CD) 환경을 논의 중.
•
OOM 문제 해결 과정 중 모니터링 시스템의 필요성을 느끼고 Prometheus 기반 모니터링 시스템을 Dev 환경 구축 완료; Prod 배포 예정.
•
현재 interface 기반으로 Response Type이 작성되어있어 Swagger를 적용하기 어려운 상황 속에서, AST 파싱을 활용하여 NestJS 컨트롤러 분석을 수행하는 API 인터페이스 생성기를 제안 및 개발함. 이를 통해 메서드, URL, 인증 방식, 쿼리 파라미터, 요청/응답 본문을 const와 타입으로 변환하여 프론트엔드-백엔드 간 통신 효율성을 개선함.
•
학사 정보 동기화 스크립트를 NestJS-schedule을 활용하여 bastion 서버에서 실행하도록 구현함. 이를 메인 백엔드와 분리하여 모노레포 구조에서 코드 관리가 용이하도록 설계함. 최근 전체 학사 시스템 개편으로 과목 코드가 변경되는 상황 속에서도 관련 CS 0건 달성
•
KAIST 연구 논문을 색인화하고, ML을 활용한 키워드 추출 및 분류 체계를 구축하여 검색 기능을 향상시키는 "Lab Tab TF” 리드 중
•
알림 서버 구현 시, 내부 타 서비스 로그를 분석하여 fcm 사용시 응답이 700ms 이상 넘어가는 경우를 확인하였고 이에 Message Queue + worker 기반의 구조를 제안하여 현재 설계 중
•
SPARCS에서 2년간 데이터베이스 및 백엔드 세미나 강사로 활동하며, SQL, ORM, NestJS 관련 온보딩 자료 및 과제를 제작함.
Omelet
2024.07~2025.02
•
Elastic Beanstalk에서 PyTorch 기반 AI 모델을 사용하는 Django 프로젝트의 오토 스케일링 시 발생하는 타임아웃 문제를 해결하기 위해, 멀티스테이지 빌드를 적용하여 Docker 이미지 크기를 9GB에서 3GB로 줄임. (CPU 버전은 1GB 미만)
•
Next.js 프로젝트를 컨테이너화하여 AWS Lambda에서 실행함으로써 비용 최적화 및 절감함.
•
AWS API Gateway를 활용하여 프론트엔드와 백엔드를 단일 도메인으로 통합하여 제품 데모 및 사전 영업(Pre-Sales) 워크플로우를 개선하고, 영업팀의 접근성을 향상시킴.
•
Spring Boot를 활용하여 헥사고날 아키텍처(Hexagonal Architecture) 기반의 웹 API를 개발함.
Skills
Backend
•
Java, JavaScript, TypeScript
•
Spring Boot, Spring MVC, NestJS
•
JPA, TypeORM, Prisma
•
Maven, Gradle, npm, yarn
DevOps
•
OracleDB, MySQL
•
AWS
◦
Lambda, EC2, CloudFront, LogInsight, API Gateway, ElasticBeanstalk, ECR
Etc.
•
C/C++
•
verilog