채용공고 올리기

김문진님을 응원해보세요!

이직/구직 중이에요

미리보기

기본 정보

이름
김문진
직업
백엔드 개발자
이메일
ace39418@gmail.com
간단소개

- "왜?" 를 고민하는 백엔드 개발자입니다. 기술을 적용할 때 단순히 동작 여부에 만족하지 않고, 왜 이 기술을 선택해야 하는지, 어떤 상황에서 가장 효과적인지를 깊이 이해하는 것을 중요하게 생각합니다. 다양한 레퍼런스나 블로그를 참고하더라도 단순히 코드를 가져오는 것이 아니라, 내부 동작 원리와 아키텍처적 배경을 파악한 뒤 서비스 맥락에 맞게 최적화하여 적용합니다. 단순한 구현을 넘어, 지속 가능한 구조와 더 나은 사용자 경험을 고민하며 개발합니다.

기술 스택

기술 스택

경력

회사명

라이프다이버전스

직책 • 부서

서버개발자

담당 업무

Express 서버 Nest 마이그레이션

• 기존 Express 기반 MVP 서버를 NestJS로 마이그레이션하여 구조적 아키텍처 도입

• 컨트롤러에 혼재돼 있던 도메인 로직과 use case를 서비스 계층과 도메인 계층으로 분리하여 책임 명확화

• 외부 API/모듈 의존성을 DI 기반으로 설계하여 테스트 환경과 운영 환경 간 설정 분리 가능하도록 개선

• 'jest', 'supertest', 'Test.createTestingModule', Fake 객체 및 mock을 활용해 800개의 단위/통합 테스트

코드 작성

• Swagger를 활용해 API 문서 자동화를 도입하여 개발자 커뮤니케이션 및 유지보수 편의성 향상

TCP -> MQTT 통신 구조 전환

• 기존 TCP 기반 세차 기기 통신 구조를 MQTT 프로토콜 기반으로 리팩토링하여 기기 연결 안정성과 메시지 전

송 신뢰성 향상• 시스템 전체의 수평 확장성을 고려한 브로커-서버 간 분산 메시징 구조 설계

• Redis Pub/Sub을 통해 MQTT 메시지를 수신한 후 내부 도메인 이벤트로 전환하여 서버 모듈 간 비동기 처리

• MQTT 두입 후 기기 연결 장애율 90% 감소

워시펀 서비스 포인트 기능 개발

• Insert 기반 설계를 통해 충전/사용 등 포인트 이력의 변경 내역을 완전하게 추적 가능하도록 구현

• 동시에 여러 요청이 들어와도 정확한 잔액 계산이 가능하도록, 트랜잭션과 다중 인덱스를 활용한 동시성 제어

적용

• 충전 포인트마다 유효기간이 상이하여, 포인트 잔액 테이블과 충전 이력 테이블을 분리하여 설계

• 포인트 사용 시 유효기간이 임박한 충전 건부터 차감되는 FIFO 정책 적용 (First-Expire-First-Out)

테스트 환경 분리

• docker-compose를 활용하여 테스트 전용 '.env.test', 별도 DB/Redis 컨테이너 구성

• 앱 배포 전 실제 테스트 서버에 연결하여 end-to-end 흐름 검증 가능하도록 구성

근무 기간 (근무 형태)
2024.03. ~ 재직 중

(1년 3개월 | 정규직)

회사명

라이프다이버전스

직책 • 부서

앱개발자 • 개발팀

담당 업무

워시펀 앱 개발

  • typescript + react-native기반의 CrossPlatform APP 개발

  • NFC/QR 기반의 세차 시작 기능 개발

근무 기간 (근무 형태)
2023.06. ~ 2024.02.

(9개월 | 정규직)

포트폴리오

타입

URL

깃허브
링크

깃허브

교육

소속/기관명

울산대학교

종류 | 전공

대학교(학사) | IT융합

재학 기간

2017.03. ~ 2023.08.

재학 상태

졸업

대외활동

소속/기관명

네이버

활동명

소프트웨어야 놀자

내용
  • 초등학생에게 SW·AI교육을 실천하고 싶은 3~6인으로 구성된 대학생 봉사단

연도

2022

소속/기관명

기타

활동명

USG 인공지능 경진대회

내용
  • 시계열 모델을 이용한 결과 예측

  • 회귀 모델을 사용한 결과 예측

연도

2022

자격증

자격증명

정보처리기사

점수 | 발급기관

합격 | 한국산업인력공단

취득연월

2024.06.

댓글