미리보기
기본 정보

문제 상황을 찾아 해결하는 것에 보람을 느끼는 개발자, 김기창입니다.
자기소개
안녕하세요, 문제 해결과 시스템 설계에 강점을 가진 백엔드 엔지니어입니다.
저는 사용자 경험을 향상시키고, 안정적이며 확장 가능한 시스템을 구축하는 데 주력해온 개발자입니다. 오늘의집에서 대용량 트래픽을 감당할 수 있는 고가용성 아키텍처 설계와 MSA 기반의 서비스 Re-Architecting 과정을 통해 기술적 도전에 기여하고 싶어 이 자리에 지원하게 되었습니다.
주요 경험으로, 저는 NestJS와 TypeScript를 활용하여 RESTful API를 설계하고, 데이터 구조를 효율적으로 관리하며 서비스의 안정성을 강화한 프로젝트를 진행한 바 있습니다. 특히, RDBMS 스키마를 기존의 정적 구조에서 동적으로 확장 가능하도록 설계하고, 클라이언트의 다양한 요구사항을 반영하여 데이터 처리 속도를 약 20% 개선한 경험이 있습니다. 이러한 경험은 오늘의집에서 비즈니스 요구사항을 개발 로직으로 전환하고, 사용자와 데이터를 효과적으로 교환하는 시스템을 설계하는 데 중요한 기반이 될 것입니다. 비록 Spring Framework 경험은 없지만, 이와 비슷한 철학을 가진 NestJS를 통해 서비스 설계와 아키텍처 구성에 대한 경험을 지니고 있습니다. 빠른 러닝 커브와 적응력을 통해 새로운 기술도 신속히 습득하여 짧은 시간 안에 실질적인 업무에 투입될 수 있습니다.
또한, 성능 최적화와 안정성을 확보한 경험도 강점입니다. Redis와 메시지 큐를 활용한 분산 처리 시스템 설계를 통해 병목 현상을 해결하고, 시스템 응답 속도를 약 30% 개선했습니다. 이러한 경험은 오늘의집에서 대용량 트래픽을 감당할 수 있는 고가용성 및 확장성 있는 시스템 설계에 실질적으로 기여할 수 있다고 확신합니다.
저는 서비스의 전 과정을 이해하고, 단순히 문제를 해결하는 것을 넘어, 더 나은 구조와 효율적인 프로세스를 제안하는 것을 중요하게 생각합니다. 이전 프로젝트에서도 기획, 설계, 개발, 운영까지 모든 단계에 참여하며, 지속적으로 시스템을 개선하고 안정성을 강화한 바 있습니다. 관리자 페이지와 같은 운영 도구 개발 경험을 통해 서비스 운영의 효율성을 높이는 데도 기여해 왔습니다.
오늘의집은 단순한 인테리어 플랫폼을 넘어, 사용자들의 삶의 질을 높이는 라이프스타일의 혁신을 이끌고 있다고 생각합니다. 저는 오늘의집의 기술적 목표를 실현하기 위해 새로운 기술과 아키텍처 도입을 주도적으로 탐구하며, 사용자와 비즈니스를 모두 만족시키는 서비스를 개발하고자 합니다. MSA 기반의 Re-Architecting 과정에서 창의적이고 논리적인 해결책을 제시하며 팀에 긍정적인 영향을 주겠습니다.
오늘의집과 함께 기술적 도전을 해결하고, 새로운 가치를 창출하며 성장할 수 있는 기회를 주신다면, 저의 역량과 열정을 통해 실질적인 성과를 만들어 가겠습니다. 감사합니다.
기술 스택
Express, NestJS, TypeORM, Prisma, Docker, AWS
경력
더블유클럽
product solver | 더블유클럽 개발팀 | 재직 중
2024.03. ~ 재직 중 (1년)
매칭 솔루션 개발
결혼정보회사를 벗어나 IT 기술을 기반으로 온/오프라인 만남 플랫폼 서비스
Node 기반의 Restful API 개발
데이터베이스 설계
기술 스택 :
NestJs, AWS ECS, RDBMS ( mysql )
서버 코어 로직 개발 : Nestjs 커스텀 데코레이터 개발
Rxjs와, interceptor를 통한 transaction의 반복 코드 개선
Nestjs library의 DiscoveryModule을 분석하여 Caching 기능 개발
Entity, DTO, RO 메타데이터 제공
스웨거 자동화
Push, SMS, Email 알림 서비스 개발
매칭 알고리즘 적용 가능한 프로필 모듈 구축
앱 전반적으로 사용될 다양한 프로필 정보들을 다룰 수 있는 DB 구조 설계
CodEF API를 연동하여 정보 수집 기능 개발
매칭 알고리즘 설계 및 체계화
Builder 패턴을 적용하여 프로필 속성에 맞춰 매칭 알고리즘 정책을 선택할 수 있도록 개발
테스트 코드 작성 및 E2E 테스트 자동화
Supertest와 Jest를 활용하여 End-to-End(E2E) 테스트 구현
이지일렉트릭
BackEnd Developer | 서버 개발팀
2022.03. ~ 2023.08. (1년 6개월)
공학 자격증 필기/실기 문제 서비스를 제공하는 플랫폼 관리
기본 업무
Node 기반의 Restful API 개발
데이터베이스 설계
인프라 구축
기술 스택 : Express,
NestJs, AWS ECS, Mysql
Access Token과 Refresh Token을 통해 사용자 인증 프로세스 개선
자동 로그인에 대한 사용자 경험 향상
주관식 콘텐츠에 대한 새 도메인 구축
시험 분류 체계 마이그레이션 작업 및 데이터 동기화
주관식 문제 스키마 정규화 작업
사용자에 대한 권한 검증 로직 재사용을 위한 Auth Middleware 개발
사용자에 대한 auth middleware 구현
유료 콘텐츠에 대한 유저 filtering
사용자의 접속 end-point와 timestamp 로깅
유료 컨텐츠에 접속한 사용자에 대한 활동 로그 추적
기술 스택 전환
Javascript 기반의 express에서 Typescript 기반의 nestjs로 마이그레이션
최적화 및 성능 개선
Promise API를 사용하여 병렬 처리를 통한 성능 향상
기존의 데이터 조회 시 발생하는 n+1 문제 해결 ( Relation 설정 및 Prisma fluent API )
프로젝트
Mkoong (엠쿵)
DDD / dynamic_ddd
2024.06. ~ 2024.10.
서비스 배경
💡 나와 같은 유형의 사람들은 이럴때 어떻게 행동하고 생각할까?
엠쿵(엠비티아이 이러쿵 저러쿵)은 MBTI를 기반으로 한 소셜 네트워킹 플랫폼으로, 첫 인상을 판단할 때 가장 많은 표본으로 사용되는 MBTI 별로 어떤 생각들을 갖고 있는지 얘기할수 있는 커뮤니티입니다.
주요 기능
CRUD API 제공
DTO와 RO의 정의를 통한 데이터 구조의 명확화
Transaction 처리를 통한 ACID 보장
서버 코어 로직 체계화
서버의 무중단 배포 환경 구성
AWS ECS / Github actions를 사용하여 무중단 CI / CD 구축
공간 대여 호스트들에 대한 자동 알림 서비스
개인
2023.12. ~ 2024.07.
연습실 예약 알림 시 수동 안내 메시지를 자동화하기 위한 서비스
Redis와 Bull queue를 사용하여 확장성 있는 분산 환경 구축
AWS Elastic Beanstalk에 docker 파일을 기반으로 한 code pipeline 구축
개발 테스트 서버를 기준으로 Pipeline trigger 설정하여 안전성 확보
최적화 및 성능 개선
Puppeteer 기반의 크롤링 하는 방식에서 Ajax 통신을 통해 데이터를 요청 및 파싱하는 방법으로 변경
AWS CPU utilization 67% => 11% 개선
Third-Party API를 통해 안내 메시지 발송 기능 구현
기존에 15명의 호스트와 90여개의 프로덕트를 대상으로 서버를 운영 하다 현재는 서비스를 중지하였습니다.
포트폴리오
URL
교육
아주대학교
대학교(학사) | 소프트웨어학과
2017.03. ~ 2023.08. | 졸업
대외활동
DDD - Dynamic Developer Designer
IT 연합 동아리
DDD 11기의 Android팀 MBTI 소셜 커뮤니티 앱의 서버 개발자로 활동
DB 설계
인프라 구축
Rest API 서버 구축
외국어
영어
일상 회화 가능
자격증
OPIc
IM2(Intermediate Mid) | ACTFL
2023.07.