채용공고 올리기

문성현님을 응원해보세요!

지금 만족하고 있어요

미리보기

기본 정보

이름
문성현
직업
이메일
msunghyun@gmail.com
간단 소개

안녕하세요, 대규모 서비스 속에서 복잡한 문제를 해결하며 성장해온 개발자 문성현입니다. 문제를 추상화하여 정의하고 해결하는 과정은 힘들고 강한 끈기가 필요하지만, 해결했을 때 얻는 큰 성취감이 저의 원동력입니다. 최근에는 프론트엔드 성능 최적화를 통해 매끄러운 사용자 경험을 제공하는 데 기여하고, 공통 프레임워크화를 통해 코드의 유지보수성과 확장성을 높이는데 주력하고 있습니다. 이를 통해 사용자 경험을 개선하고, 비즈니스 목표에 부합하는 최적의 솔루션을 제시하는 데 집중하고 있습니다.

기술 스택

기술 스택

JavaScript, TypeScript, React, MobX, HTML/CSS, scss, Java, Spring Boot, Kubernetes, Jest, JUnit, Puppeteer

경력

회사명

티맥스가이아

직급 | 부서 | 근무 유형

연구원 | 오피스 | 재직 중

근무 기간

2019.09. ~ 재직 중 (5년 9개월)

담당 업무
  • 비정형 문서 데이터를 DB화하고 동시 편집이 가능한 웹 기반 오피스 애플리케이션 개발

  • Frontend

    • 담당 기능

      • 오피스 제품 개발, 성능 최적화, 댓글 기능, 인쇄/썸네일, z-index, 텍스트 검색 기능 설계, 구현 및 유지보수

    • 성능 최적화

      • 대용량 워드 문서 편집 시 발생하는 메인 스레드 블로킹 문제를 해결하기 위해 JavaScript 동시성 처리 아키텍처 설계. 이를 통해 끊김 없이 작업할 수 있는 매끄러운 사용자 경험 제공

      • MobX의 상태 관리 구조 분석 및 최적화를 통해 빈 문서 로딩시 메모리 사용량 20% 절감

      • React Suspense 구조에서 fetch 전에 실행되던 비동기 작업들을 fetch 이후로 재배치, Code Splitting, Tree Shaking을 통해 첫 화면 로딩 시간을 5초에서 2초로 단축

    • 공통 프레임워크화

      • 워드 제품의 댓글 기능을 다양한 모듈(워드, 셀, 포인트)에서 공통적으로 사용 가능하도록 리팩토링

  • Backend

    • 다양한 문서 포맷 호환 기능 구현 및 배포

      • 서버에서 오픈소스 라이브러리를 활용하여 다양한 문서 포맷(ODF, PDF, HTML)을 DOCX로 변환하고, Kubernetes 환경에서 라이브러리 실행 환경 구축

    • 텍스트 검색 서비스 개발

      • PL/SQL 프로시저를 사용하여 문서 데이터 내 텍스트 검색 서비스 구축

      • Client에서는 RESTful API를 통해 검색 결과를 받아, 문서상의 순서대로 정렬해 관리

프로젝트

프로젝트명

문서 데이터 통합 관리를 위한 다양한 문서 포맷 호환

소속/기관명

과학기술정보통신부, 정보통신기획평가원(IITP)

프로젝트 기간

2024.10. ~ 2024.11.

프로젝트 내용
  • 다양한 문서 포맷(ODF, HTML, PDF)을 DOCX로 변환하는 서버 기능 개발. Libreoffice와 pdf2docx 오픈소스 라이브러리 활용

  • Kubernetes 환경에서 영구 볼륨과 PATH 설정을 통해 파드 재가동 시에도 일관된 라이브러리 실행 환경 보장하며 안정성 강화

  • QA 문서 호환 테스트 성공률 95%를 달성 및 IITP 과제를 성공적으로 완료하며 안정적이고 확장 가능한 배포 구조 구축

프로젝트명

오피스 댓글 기능 공통 프레임워크화

소속/기관명

서울시 교육청

프로젝트 기간

2024.08. ~ 2024.09.

프로젝트 내용
  • 기존 워드 모듈에서만 사용 가능했던 댓글 기능을 셀 및 포인트 모듈에서도 사용할 수 있도록 공통 프레임워크화

  • Typescript Mixin 패턴을 적용해 다양한 객체(슬라이드, 도형 등)에서 댓글 기능을 손쉽게 확장하도록 구현

  • Mixin이 적용된 클래스의 타입을 정의해 정적 타입 안정성을 강화하고, 해당 타입에 대해 타입 가드를 정의해 런타임 안정성 확보. 코드의 신뢰성과 유지 보수성 향상

  • 공통 프레임워크화 과정에서 PPT 발표, Git Wiki, 코드 주석 설명을 통해 각 모듈 담당자들이 쉽고 명확히 이해할 수 있도록 지원하며 프로젝트를 성공적으로 이끌었음

프로젝트명

MobX 분석을 통한 메모리 및 성능 최적화

소속/기관명

대한민국 육군본부

프로젝트 기간

2023.10. ~ 2023.11.

프로젝트 내용
  • 객체 지향 모델 구조에서 MobX 사용 시 메모리 사용량 증가와 성능 저하 문제 해결을 목표로 프로젝트 진행

  • MobX의 Observable, Observer, Action 구조를 분석하여 상태 관리 개선

  • observable 옵션(deep, shallow, ref 등)에 따른 메모리 사용량 테스트 및 최적화

  • Action을 상위 함수에만 설정해 리렌더링 요청을 최적화

  • 빈 문서 로딩 시 약 20% 메모리 절감 및 성능 개선 달성

프로젝트명

오피스 로딩 성능 개선

소속/기관명

대한민국 육군본부

프로젝트 기간

2023.08. ~ 2023.09.

프로젝트 내용
  • 오피스 font 초기화 등 시간이 오래 걸리는 비동기 작업들을 fetch 이후로 재배치해 React Suspense의 fallback UI 표시 시간을 최소화

  • FCP(First Contentful Paint)와 무관한 라이브러리를 dynamic import로 분리해 초기 로딩 성능 최적화

  • 라이브러리의 소수 메서드만 사용되는 경우를 분석해, 불필요한 의존성을 제거하고, 필요 메서드만 직접 구현하도록 가이드해 번들 크기를 최적화

  • 첫 화면 로딩 시간을 5초에서 2초로 단축, 사용자 콘텐츠 접근 속도와 서비스 응답성을 크게 향상

프로젝트명

워드 레이아웃 성능 최적화

소속/기관명

대한민국 육군본부

프로젝트 기간

2023.03. ~ 2023.07.

프로젝트 내용
  • 대용량 문서 편집 시 워드 페이지 레이아웃으로 인해 브라우저 메인 스레드가 과부하되어 사용자 이벤트 처리 지연 문제가 발생

  • 자바스크립트의 동시성을 지원하는 브라우저의 이벤트 루프와 태스크 큐를 이용한 레이아웃 최적화 아키텍처 설계 및 구현

  • 사용자 이벤트에 즉각 반응하며, 대용량 문서에서도 이벤트 처리 지연 없이 매끄러운 UI를 제공해 사용자 경험을 크게 개선

교육

소속/기관명

한국과학기술원

종류 | 전공

대학원(석사) | 전자전기공학부

재학 기간 | 재학 상태

2016.03. ~ 2019.02. | 졸업

소속/기관명

부산대학교

종류 | 전공

대학교(학사) | 전자전기공학부

재학 기간 | 재학 상태

2013.03. ~ 2016.02. | 졸업

댓글