
미리보기
- 직업
- BackEnd Engineer
- 이름
- 김찬규
- 간단소개
자기소개
- 자기소개
- 목표를 세우고 구체화하는 개발자
- 근거를 가지고 코드를 작성하는 개발자
- 성능 개선을 위해 고민하는 개발자
기술 스택
- 기술 스택
- Java
- Spring Boot
- Spring Batch
- spring-jpa
- Docker
- MySQL
- REST API
- Redis
- github-actions
- querydsl
프로젝트
- 프로젝트명
- WashFit!! - 세차용품 성분 분석 및 추천 플랫폼
- 소속/기관명
- Kernel360
- 프로젝트 기간
- 2024.01. - 2024.03.
- (3개월)
- 프로젝트 설명
Web Application
개발- 멀티모듈-모놀리식 구조 설계
- Api, Batch, Global, Domain 등 역할에 따라 모듈로 구분
- 초록누리 API를 활용하여 세차 용품 안전 정보 저장
Spring Batch
를 사용하여 세차용품의 안전 정보를 읽어오는 배치 작업 구현- 제품 안전 정보를 서비스에 사용할 제품 정보로 변환하여 저장하는 배치 작업 구현
- 초록누리 제품 정보를 바탕으로 제품 검색, 제품 즐겨찾기, 제품 리뷰 기능 등을 포함한 웹 어플리케이션 구현
- API 엔드포인트 약 40여개 작성
- 제품 도메인에 대한 CRUD 기능 작성
SMTP
과Redis
를 활용하여 가입시 입력한 회원정보를 바탕으로 회원 아이디 찾기, 비밀번호 초기화를 하는 기능을 구현- 로그인 한 사용자의 IP를 수집하여 검증하는 기능 개발
- API 엔드포인트 약 40여개 작성
- 멀티모듈-모놀리식 구조 설계
개발 서버
와운영 서버
로 환경 분리- 개발 서버 :
docker-compose
를 활용하여,웹 어플리케이션과 데이터베이스를 하나의Vultr
인스턴스에 배포 - 운영 서버 :
AWS EC2
,AWS RDS
등을 활용하여 배포
- 개발 서버 :
Restdocs
+Swagger UI
를 활용한API 문서화
- Controller 테스트를 통과할 경우에만 API를 문서화
Grafana
+Prometheus
를 활용한 서비스모니터링
- 모니터링을 통해 확인한 전체 제품 목록 조회 API의 응답 속도를 30% (
748ms
->463ms
) 개선Pageable
->Slice
,JPQL
->QueryDSL
등의 변경 및 적용에 따른 결과
- 모니터링을 통해 확인한 전체 제품 목록 조회 API의 응답 속도를 30% (
세차와 세차용품에 깊은 관심을 가지고 있는 사용자들을 위한 위한 세차용품 안전 정보 제공 플랫폼 서비스
- 프로젝트명
- Kenel Engine - 성장하고 싶은 개발자를 위한 블로그 검색
- 소속/기관명
- Kernel360
- 프로젝트 기간
- 2023.11. - 2023.12.
- (2개월)
- 프로젝트 설명
Web Application
개발JWT
토큰과Spring Security
를 사용하여 회원 기능 구현Jsoup
을 활용하여 표적 블로그 크롤링 기능 구현- API 엔드포인트 40여 개 작성
Thymeleaf
템플릿 엔진을 사용하여 화면 구성- 주기적인 블로그 크롤링을 위한 배치 작업 작성
- 일간 가입자 수를 집계하는 배치 작업 작성
- 분석 및 개선
MySQL
의Like
검색은 속도가 느리고 큰 연관성이 없는 결과까지 모두 반환함Like
검색 대신Fulltext
검색을 활용하여 응답 속도를 개선 (약 1000여 개 피드 검색에 대하여100ms
->20ms
)
- 그러나
Fulltext
검색은 3자 이하의 너무 짧은 단어, 혹은 일상적으로 사용하는 단어를 무시하는 약점을 보임.Fulltext
검색 대신Elasticsearch
를 활용하여 검색 성능 비교.- 응답 속도는
Fulltext
검색에 비해서 대체로 증가하였으나,Like
검색과 비교하였을 때 비슷하거나 빠르고, 연관성이 높은 검색 결과를 반환하는 것을 확인
- 응답 속도는
원하는 내용이 아니거나, 평소 즐겨 찾는 블로그에 새 글이 올라왔을 때 즉시 확인하지 못함에 있어 불편함을 느끼고, 가입한 유저의 블로그 게시글과 관리자가 등록한 기술 블로그의 게시글을 키워드를 통해서 검색할 수 있는 웹 어플리케이션
- 프로젝트명
- Kernel Library - 도서 구입비가 부담스러운 크루들을 위한 도서 공유 서비스
- 소속/기관명
- Kernel360
- 프로젝트 기간
- 2023.10. - 2023.10.
- (1개월)
- 프로젝트 설명
Spring boot
를 활용하여Web Application
제작- 도서 관리와 대출/반납 등에 대한
CRUD
구현 Session
을 활용하여 회원 등록과 로그인 로그아웃 기능 구현- 브라우저가 지원하는 카메라 기능을 활용하여 바코드 인식/도서 조회 기능 구현
포트폴리오
교육
- 소속/기관
- 경희대학교
- 종류 | 전공명/전공계열
- 대학교(학사) | 전자공학과
- 재학 기간 (재학 상태)
- 2014.03. - 2021.08. (졸업)
- 소속/기관
- Fastcampus 오프라인 부트캠프
- 종류 | 전공명/전공계열
- 사설 교육 | Kernel360
- 재학 기간 (재학 상태)
- 2023.10. - 재학 중
자격증
- 자격증명
- 정보처리기사
- 점수/급 | 발급 기관
- 합격 | 한국산업인력공단
- 취득월
- 2022.09
- 자격증명
- SQLD
- 점수/급 | 발급 기관
- 합격 | 한국데이터진흥원
- 취득월
- 2022.06