Github. https://github.com/hojooo
Blog. https://bird-j.tistory.com/
Resume. 문호주_이력서
About Me
몰입을 통한 성장을 즐기는 서버 개발자 문호주입니다.
- 현재 리소스를 고려하여 완벽보단 먼저 일이 되도록 합니다.
- 커뮤니케이션을 중시하며 함께 성장하는 분위기를 지향합니다.
- 단순히 동작하는 코드를 목표하는 것이 아닌 근본적인 기술의 이해를 위해 노력하며 학습합니다.
- 챌린징한 환경에서 몰입하며 성장하는 것을 즐깁니다.
Activities & Projects
Open Source Contribution - Spring Boot
-
Log4j2의 롤링 정책 프로퍼티 개발
- log4j2의 Rollig Policy 표준 프로퍼티를 추가하고 시스템 프로퍼티로 읽어갈 수 있도록 매핑을 개발하였습니다.
- Log4j2 커스텀 플러그인 SpringBootTriggeringPolicy 도입으로 자주 사용하는 rolling 전략을 단일 엔트리로 위임하도록 설계하고, log4j2-file.xml에서 시스템 프로퍼티로 연동하였습니다.
- Link. https://github.com/spring-projects/spring-boot/pull/47260
- Article. 회고 1편, 회고 2편, 회고 3편
-
buildBootImage의 멀티 아키텍쳐 플랫폼 불일치 수정
SpringBoot의 buildBootImage Task를 통해 Docker 이미지를 빌드할 때 멀티 아키텍쳐 플랫폼 불일치로 인한 오류가 발생하는 이슈를 해결하기 위해, Docker 플랫폼 처리 로직을 수정하여 멀티 아키텍처 환경에서도 안정적으로 동작하도록 개선하였습니다. (관련 이슈: #46665, #46674)
원인 분석
- Multi-arch manifest 처리 시 tag와 RepoDigest 만으로는 실제 이미지 아키텍처를 보장할 수 없는 구조적 한계가 있었습니다.
- Spring Boot가 호출하는 inspect(이미지 조회)와 이미지 레이어 export 단계에서 플랫폼 정보 누락으로 호스트 아키텍쳐로 잘못 해석되고 있었습니다.
해결 과정
- inspect와 export시 요청된 플랫폼에 대한 정보를 전파하도록 보강하여 Docker 데몬이 호스트 아키텍처로 잘못 해석하던 문제를 차단했습니다.
- Manifest Digest를 확보하기 위해 Docker Api 응답에서 Descriptor 필드를 추출하고 Manifest Digest로 고정하여 멀티 아키텍쳐 이미지에서 정확한 플랫폼의 Digest를 확보할 수 있게 했습니다.
- 수정된 Spring Boot 빌드를 mavenLocal에 배포하여 다양한 시나리오를 테스트 검증했습니다.
- Link. https://github.com/spring-projects/spring-boot/pull/47292
- Article. 회고
Steamers
(2025.08 ~ 2025.10) / 개인 프로젝트
프로젝트 소개
Steam 게임 데이터를 통합하여 랭킹과 개인화 추천을 제공하는 웹 서비스입니다. 사용자가 겪는 정보 비대칭과 추천 피로감 문제를 해결하고자 기획부터 개발, 배포까지 전 과정을 주도적으로 진행했습니다. 프로젝트 기획 단계의 리서치부터 코드 생성, 리팩토링, 테스트 케이스 작성 및 문서화 과정에 AI 어시스턴트를 활용하여 생산성을 높이고 개발 사이클을 단축하여 짧은 시간 안에 MVP를 완성할 수 있었습니다.
장애와 문제도 많이 만들었지만 서비스를 운영하며 마주친 여러 문제들을 리서치하고 직접 해결해나가면서 쿼리 튜닝, 캐싱 등 사용자가 원활히 서비스를 이용할 수 있도록 최적화할 수 있는 방안들을 고민해보며 성장할 수 있었던 프로젝트였습니다.
- DDD 및 모듈러 모놀리식 아키텍쳐 설계 및 구현
- Steam API 연동 및 후보군 분리로 API 호출 제한에서의 효율적인 데이터 수집 파이프라인 개발