채용공고 올리기

박지수님을 응원해보세요!

지금 만족하고 있어요
성실함
책임감
학습 지향
자기 주도적
열정적

미리보기

기본 정보

이름
박지수
직업
백엔드 개발자
간단 소개

스타트업의 풀스택 개발자 박지수입니다. 개발 일정 관리부터 UX 리서치, 서비스 기획, 도메인 지식 학습까지, 제품 개발에 필요한 모든 활동에 참여하며 사용자에게 가치를 전달하는 데 집중하고 있습니다.

자기소개

자기소개

안녕하세요, 스타트업에서 제품 전반을 책임지는 풀스택 개발자 박지수입니다.

교육학과 철학을 전공한 저는 졸업을 앞두고 개발이라는 새로운 길을 발견했고, 이후 다양한 프로젝트를 통해 기술력과 문제 해결 능력을 키워왔습니다.

현재 스타트업에서는 재택의료 제품팀의 유일한 개발자로서 프론트엔드, 백엔드, 인프라를 모두 책임지고 있습니다.

또한 꾸준한 도메인 지식 학습을 통해 스스로 문제를 발굴하고 해결하는 도메인의 문제 해결사입니다.

김영한 님의 "열정은 식어도 시스템은 식지 않는다"는 철학을 기반으로 지속 가능한 코드효율적인 프로세스 구축을 개발 목표로 삼고 있습니다.

앞으로도 인문학적 소양, 새로운 기술에 대한 호기심과 사용자 중심의 사고를 바탕으로, 문제를 발견하고 해결하며 팀에 가치를 더하는 풀스택 개발자가 되고자 합니다.

기술 스택

기술 스택

Java, Spring Boot, JPA, mybatis, MySQL, TypeScript, Vue 3, Docker, k8s, Elasticsearch, Jenkins, rabbitmq

경력

회사명

플라잉닥터

직급 | 부서 | 근무 유형

개발자 | 개발팀 | 재직 중

근무 기간

2023.09. ~ 재직 중 (1년 6개월)

담당 업무

프로젝트

프로젝트명

재택의료 스케줄링 서비스

소속/기관명

(주)플라잉닥터

프로젝트 기간

2024.09. ~ 진행 중

프로젝트 내용

기술

  • 병렬 Stream, fetch join, 적절한 인덱스 설계를 활용해 API 호출 시간을 1초 미만으로 최적화.

  • 사내 코드 리뷰 요청을 통해

    • 위임 객체를 활용하여 where 조건의 반복 로직을 최소화.

    • 일급 컬렉션을 도입해 service 로직을 캡슐화하고 책임을 분리했으며, 단위 테스트를 통해 주요 로직의 안정성을 검증.

  • 메모리 최적화


    힙 덤프 분석을 통해 단기간에 unreachable 상태의 객체(전체 메모리의 10%)가 생성되는 문제를 발견함. 원인은 JPA가 내부적으로 검색 조건 변경 시마다 대량의 환자 데이터를 각각 캐싱하는 것이었음. 이를 해결하기 위해, 다운로드된 데이터를 재사용하는 구조로 개선하여 메모리 사용을 최적화함. 추가로 로그 출력 방식에서 성능 개선을 진행함. log4jdbc 드라이버를 MySQL 드라이버로 변경하여 오버헤드를 줄였으며, 로그 파일 대신 콘솔로 출력하도록 전환하여 불필요한 디스크와 메모리 사용을 제거함. 이를 통해서 메모리 사용량을 약 25% 줄임.

  • 기존 도메인 로직에서 환자의 방문 횟수를 계산하는 방식은 전체 환자 데이터를 메모리에 적재해야 했기 때문에, 방문 횟수 기준 정렬 및 페이징 처리 과정에서 심각한 시스템 부하를 초래했음. 이를 해결하기 위해, total_count라는 칼럼을 추가하여 방문 횟수를 사전에 저장하도록 데이터를 마이그레이션한 뒤, DB에서 해당 칼럼을 기준으로 정렬하도록 로직을 수정함. 이 최적화를 통해 힙 사용량을 500MB에서 200MB로 약 60% 감소시킴.

  • 엑셀 마이그레이션 로직 개선
    동료 피드백을 바탕으로 엑셀 데이터를 처리하는 로직을 개선함. 인터페이스를 활용해 데이터 유형에 상관없이 JSON 형태의 문자열로 변환 및 다운로드가 가능하도록 설계하고, 이후 필요한 객체로 매핑되도록 구조화함.
    이를 통해 엑셀 다운로드와 결괏값 출력 로직을 어디서나 재사용할 수 있는 유연한 구조를 구현함.

기술 운영

장애 대응 & 재발 방지

  • 쿼리 실수를 최소화하기 위해 Read-Write 테이블 분리, 적용한 쿼리를 문서로 기록, DataGrip 설정 등을 통해 실수 예방 환경을 시스템적으로 구축함.

  • drop 테이블 등 주요 장애 시 dump 데이터로 복구 시도했지만, dump뜬 시점부터 장애 발생 사이의 데이터 복구가 불가능했음. -> 바이너리 로그로 복구하는 방법 도입, 문서로 팀에 공유함.

  • 테스트 코드를 작성하여 주요 비즈니스 로직과 의존성 변경 사항을 배포 이전에 검증함으로써, 변경으로 인한 버그를 사전에 감지할 수 있도록 했음.(현재 주요 도메인 객체 테스트 커버리지: 22%) 또한, 서비스가 아직 변동이 많을 성장 시기라고 판단 + 개발자가 한 명인 점을 고려해서 핵심 로직만 테스트로 방어하고, 나머지 부분은 에러 발생 시 실시간 Slack 에러 알림을 통해 문제를 빠르게 인지하고 대응할

    수 있도록 알림 시스템을 구축했음.

프로젝트명

소속/기관명

프로젝트 기간

프로젝트 내용

로깅 & 메트릭스

  • ElasticSearch를 활용한 데이터 수집과 Kibana 기반의 커스텀 대시보드를 구축함. 트래픽 증가 시 네트워크 요청 정보, 힙 사용량, CPU 사용량, GC 횟수 등 주요 지표를 종합적으로 모니터링하여 문제 상황의 원인을 보다 명확히 이해할 수 있게 했음.

문제해결을 위한 과학적 검증

  • 템플릿 기능 도입으로 사용자의 환자 기록 입력 시간을 단축할 수 있다는 가설을 세우고 이를 기반으로 기능을 배포함. 배포 이후, 실제 사용자의 이용 시간을 추적하고 사용률을 분석하여 가설을 검증함. 검증 결과를 수시로 팀 슬랙에 공유하며 투명한 피드백을 유지함.
    환자기록 작성 시 소요 시간은 감소(하루 평균 50분 -> 42분)했으나, 템플릿 기능 사용률 감소(88.30%, 73.41%로 하락 추세)를 확인함. 인터뷰 결과 템플릿 작성 자체는 편하나, 프린트할 시 환자당 정보가 증가하여 가독성에 문제가 있다는 것을 확인함. 이를 보완하기 위해 모바일 버전의 대시보드 사용성 실험을 위해 프로토타입 개발을 시작함.

제품

지속 가능한 비즈니스 성장을 위한 고민과 실천

  • [린 스타트업]과 [Inspired]를 읽으며 과학적 실험 방법을 학습했고, 이를 실제 업무에 적용하기 위해 가설 - (프로토타입 구현)실험 - 검증 프로세스를 구축할 것을 제안함. 데이터 기반의 의사결정과 지속 가능한 비즈니스를 도모함.

  • 재택의료 협회 세미나에 참석하여 해당 도메인의 관계자들과 교류하며 업계 현황을 파악함. 이를 통해 경쟁사들이 준비 중인 전략을 참고하며 우리 서비스의 방향성을 논의할 수 있었음.

  • 지도기반 UI + 도메인 특화 필터조합을 제공해 방문할 환자 선정 시간 단축 (3-4시간 걸리던 스케줄링 시간을 20분으로 단축).

  • 병원 확장을 위해, Excel 데이터를 효율적으로 DB로 마이그레이션 하는 시스템 구축

  • 경영관리를 위한 방문 통계 대시보드 제작

커뮤니케이션

  • 모바일 기록 방식을 두고 음성 방식템플릿 기반 텍스트 기록 중 무엇을 선택할지 의견이 갈림. 이에 따라 음성 차트 구현 가능성을 검증하기 위해 실험을 진행함. 실제 진료를 음성 녹음 한 후, 녹음 파일을 클로바 노트를 통해 텍스트로 변환한 뒤, GPT를 활용해 데이터를 가공해 본 결과, 기대한 성능을 확인함. 이를 기반으로 300명 환자 기준으로 병원당 월 사용료를 계산함. 계산식은 방문당 소요 시간 × 월 평균 방문 횟수 × 시간당 API 요금으로 산출함. 부분 유료화를 고려하여 비용 대비 사용성을 인터뷰를 통해 측정할 예정임.

문화

  • 토스의 frontend-fundamentals를 사용해 다른 팀의 프론트앤드 개발자와 함께 '프론트-코드스멜-스터디'를 시작함. 이를 통해서 리팩토링하는 시간을 시스템화하는 것이 목표임.

  • 재택의료 주간 미팅에 C레벨의 피드백 반영. 주요 의사결정은 이전과 마찬가지로 재택 팀 내부 구성원끼리 데이터 기반으로 수행하지만, 사업적 방향성은 C레벨이 조언하도록 수정.

프로젝트명

공적처방전달 서비스 개발

소속/기관명

(주)플라잉닥터

프로젝트 기간

2023.12. ~ 2024.03.

프로젝트 내용
  • 팩스번호로 약 신청하던 기존 시스템을 지도기반 UI로 개편

  • 대한약사회에서 제공하는 공적처방전달 API 연동 경험

  • 빠른 장애 대응을 위해 ElasticSearch에 로깅 시스템 구축

포트폴리오

URL

link

블로그

URL 링크
link

GitHub

깃허브

교육

소속/기관명

제로베이스 백엔드 스쿨

종류 | 전공

사설 교육 | 백엔드

재학 기간 | 재학 상태

2023.06. ~ 2023.09. | 졸업

소속/기관명

구름

종류 | 전공

사설 교육 | 자연어처리

재학 기간 | 재학 상태

2022.09. ~ 2023.02. | 졸업

소속/기관명

연세대학교

종류 | 전공

대학교(학사) | 교육학과

재학 기간 | 재학 상태

2016.03. ~ 2022.09. | 졸업

대외활동

활동명

글또 10기

소속/기관명

글또

연도

내용
  • 일상의 경험을 글감으로 활용하며 주기적으로 글을 작성하고, 상호 피드백을 통해 자기 객관화와 글쓰기 실력을 꾸준히 향상.

  • 최신 기술 동향과 개발 트렌드를 학습하고, 이를 글로 정리하여 자신의 이해를 심화하고 공유.

  • 개발자 글쓰기 모임을 통해 다양한 분야의 전문가들과 교류하며, 각자의 경험과 인사이트를 공유하여 시야를 넓힘.

댓글