김효민

5년차 소프트웨어 개발자

김효민 프로필

소개

5년차 개발자 김효민입니다. 더 좋은 결과와 성장을 위한 피드백을 두려워하지 않습니다.

함께 고민하고 성장하는 팀을 만들어가고 싶습니다.

분야를 가리지 않고 모든 팀원과 의사소통하는 것을 즐기며, 알고 있는 것을 공유하고 설명하는 것을 좋아합니다. 여러 사람과 잘 어울릴 수 있는 융화력과 배려 있고 원활한 의사소통이 저의 장점입니다.

기술 스택

  • Languages
  • TypeScript
  • Frameworks
  • NestJS
  • Web
  • HTML, CSS, JavaScript
  • Databases
  • MySQL, MariaDB
  • DevOps & Tools
  • Docker, Docker Compose, Git, Sentry
  • Infrastructures
  • AWS, Nginx
  • Project Management
  • Jira, Confluence

경력

Wewake

2024.10 — 2025.09

Modem Service Manager 개발 참여

차량 소프트웨어 중 APN 테이블과 네트워크 연결 상태를 모니터링 및 관리하는 Application 개발 (Adaptive Autosar Application). 프로젝트 기간 후반에 참여하여 검증·배포 위주의 업무를 맡았으며, 반복 작업 최소화와 파편화된 문서 중앙화를 통해 프로젝트 진입 장벽을 해소하고 업무 환경을 개선했습니다.

  • 가이드 취합 및 정리
    • 프로젝트 각 프로세스의 담당 부서 연락처 정리
    • 흩어져 있는 가이드 취합·정리 및 지속적인 업데이트
      • 개발 환경 셋업: 에디터 remote 샘플, git·repo 계정 셋업 명령어, 빌드 환경 셋업 (패키지 설치, 소스 다운로드, 에러 해결 방법)
      • 검증 환경 셋업: 하드웨어 구성, Test Case 설명 보완, 차종별 특이사항, json 파일 각 필드 설명
  • 반복 작업 최소화
    • 검증 시 필요한 DLT 로그 검색 Filter 파일 생성 및 가이드 작성 (특정 모듈 프로세스 번호 검색 → kill, 두 단계를 하나의 명령어로 개선)
    • DLT Viewer 최신 버전 사내 공유 — 간헐적 로그 복사 버그 수정, 로그 검색 속도 2배 개선
    • Linux 자주 사용하는 명령어 Alias 정리 (폴더 이동, 빌드 실행, git fetch 등)
    • UML을 PlantUML 코드로 작성하여 사내 git에서 관리
  • GoogleTest 가이드 및 단위 테스트 베스트 프랙티스 사내 세미나 진행
    • ara 런타임 라이브러리 직접 의존으로 단위 테스트 불가한 상황에 대해 원인 분석 및 해결 방안 제시 (DI 설계 필요성, link-time substitution 등 모색)
    • 진행 중인 프로젝트 구조를 간소화한 샘플 프로젝트로 명확한 가이드 제공
사용 기술: C++, GTest/GMock, CMake, Jenkins, GitLab, Docker, Python

Vehicle Application System 2차 검수 및 통합

차량 소프트웨어 중 SOME/IP 프로토콜 메시지를 CAN 프로토콜 메시지로 변환하는 Application에 대하여 2차 검수 및 통합 배포

  • Vector사의 차량용 테스트 툴 CANoe와 CANoe Interface를 사용하여 TC 검증
    • 원청(현대) 협업하여 셋업부터 사용 방법까지 상세 가이드 작성 — 이후 추가 문의 및 방문 인수인계 0건
  • Smack 설정 및 Repo 관리

OJ (OJWare)

2023.05 — 2024.08

차세대 시스템 개발 프로젝트 리딩 및 백엔드 개발

미국 기업의 태양광 발전 프로젝트 통합 관리 시스템 차세대 개발 프로젝트

  • 클라이언트 요구사항 파악 및 기획
    • 기존 시스템의 기획자 및 개발자가 없는 상황에서 노코드 플랫폼으로 만들어진 시스템 분석
    • 클라이언트와 직접 소통하며 요구사항 파악 및 기획 (화상 미팅, 메일)
  • 프로젝트 관리
    • Jira & Confluence를 활용하여 업무 진행 상황 공유 및 작업 우선순위 설정
    • 빠른 업무 현황 공유를 위해 Daily Sync 도입
    • 상호 피드백 문화를 위해 1 on 1 및 면담 시간 도입
  • API 개발 / DB 설계 / 서버 관리
    • 태스크 자동 할당 기능 기획 및 개발 — 매니저가 하루 평균 1,000건 수동 할당하던 업무 자동화
    • 주문 통합 이력 시스템 설계 및 개발 (Project, Job, Scope, Task 모든 수정 사항 하나의 이력으로 통합 관리)
    • 주문 접수 → 작업 할당 → 작업 수행 → 납품 → 청구 → 결제까지 전체 비즈니스 프로세스 관리
      • 프로젝트 정보: 주소, 소유자, 고객 유형, 설치 유형(지상/지붕), 전력 용량 등
      • 프로젝트 지역에 맞는 AHJ(관할 기관) 정보 자동 연결
      • Job (서비스 주문): 7가지 상태 관리, 우선순위(작업 시간 경과율 기반 자동 계산), Due Date 자동 산출
      • Task: 라이센스 필요 여부(주(State)별), 선행 태스크 완료 여부에 따른 자동 할당 활성화
      • 서비스 가격 설정 (가정용/기업용 각각의 가격 정책, 외주 비용 설정)
사용 기술: TypeScript, NestJS, Prisma ORM, MySQL, AWS (EC2, CloudWatch), Docker, Docker Compose

아워튜브

2022.02 — 2023.05

백엔드 개발 — 유튜브 채널 광고수익금 지분 거래 플랫폼

유튜브 크리에이터의 광고수익금 지분 일부를 경매에 올려 사용자들에게 판매하고, 이용자들이 실시간으로 지분을 거래하거나 보유하면서 광고수익금을 공유 받을 수 있는 서비스. 서비스 출시 및 Seed 단계 투자를 받은 경험이 있습니다.

  • 서비스 핵심 기능 개발
    • 입출금 & 내역 조회
    • 옥션 입찰 & 분배
    • 상시거래
    • 유튜브 채널 정보 관리
    • 광고 수익금 분배 (지분 보유량 스냅샷, 수익금 분배)
  • Database Modeling
    • 데이터 신뢰성 보장을 위한 이력/내역 테이블 설계
    • 다양한 프로모션 관리를 위한 M:N 테이블 설계
  • general log를 이용하여 데이터베이스를 특정 시점으로 복구 경험
  • Docker 도입으로 API 서버 이전 효율화 — 투자 및 지원금 조건에 맞춘 잦은 서버 이전 상황에서 총 3번의 이슈 해결 (AWS → NAVER → Azure → Gabia)
  • 기획팀, 디자인팀과 활발히 의사소통 및 OKR 지표 등 팀에 필요한 정보 시각화

로고몬도

2021.02 — 2021.07

프론트엔드 직무 — 쥬얼리 몰인몰 플랫폼 코너스톤

처음 접하는 언어와 프레임워크를 익혀 레거시 시스템 트러블슈팅 (PHP, Angular)

  • 문서화되지 않은 상황에서 완성되지 않은 코드들로 인한 각종 버그 해결
    • 개발자 도구를 이용하여 데이터 분석 및 디버깅
    • GCP 환경의 서버 관리
  • 회사 프로젝트 문제를 스스로 고민하고 공유
    • GitHub 커밋 메시지 작성 문화 주도
    • 트러블슈팅 원인과 해결 과정을 공유·문서화 (추후 Notion 문서화로 이어짐)
  • Grid & Flex를 이용한 반응형 UI 작업

개인 활동 & 프로젝트

원티드×위코드 프리온보딩 백엔드 코스

2021.11 — 2021.12

기술과제를 통과한 80명만 참여할 수 있는 백엔드 코스. 처음 만난 다섯 명의 동료와 한 달간 참여 기업들의 과제를 진행하며 테스트 코드 작성과 리팩토링을 주도했습니다.

  • 에잇퍼센트 — 계좌 입출금 API
    • 계좌 생성 API 구현: 읽기 쉽고 유지보수하기 쉬운 코드 설계, unit/e2e 테스트 활용
    • 입출금 API 리팩토링: 도메인/서비스 계층 분리로 코드 중복 제거, DTO 활용으로 타입 추론 및 데이터 보호
    • 회고록 보기
  • 카닥 — 타이어 정보 저장 및 조회 API
    • 테이블 설계를 위해 주어진 정보 외에 타이어에 대한 추가 조사
    • NestJS Pipe 모듈 분석 및 커스텀
    • class-transformer를 이용해 API 응답 리터럴 객체를 상태와 행위를 가진 클래스로 관리
    • 회고록 보기