가상 이력서 예시입니다. 이름·재직 이력·성과는 설명을 위해 만든 내용이며 실제 직원의 기록이 아닙니다.
선동현
지도 아래 수집 테스트를 수행하고 로컬 이벤트 재생 프로젝트를 만든 컴퓨터공학 전공자입니다. 재현 가능한 실패 조건을 작성하고 Kafka 이벤트 흐름과 검증 결과를 정리했습니다.
경력
PostHog
EMEA 지역 원격근무 · 영국
백엔드 엔지니어 인턴
2026년 6월 - 2026년 8월
- 시니어 검토자와 Node.js 수집 테스트에 잘못된 이벤트·중복 ID 데이터를 추가. HTTP 상태만 보지 않고 Kafka 오프셋을 따라 실패를 추적하고 최소 재현 조건을 정리해 담당자가 수정 범위를 검토하고 병합할 수 있도록 구성
- 영향 시간대·민감정보를 제거한 페이로드·고객이 확인한 복구 결과를 담는 장애 인계 양식을 작성. 주간 지원 검토에 적용하여 개발팀이 같은 진단 자료를 다시 요청하지 않고 문제를 재현하도록 개선
- 테스트 데이터 생성기·벤치마크 설정·실패 유형표를 프로젝트 보고서에 정리. 엄격한 순서 보장과 별도 처리 경로를 비교하고 실제 배포 전에 변경해야 할 소비자 가정을 기록
- 지도 아래 API 처리부부터 경합이 발생한 데이터베이스 트랜잭션까지 타임아웃 원인을 추적; 잠금 범위 축소 후 동시 요청과 재시도 경로 테스트 추가
- 지도 아래 동시 요청 테스트를 활용한 PostgreSQL 재시도 경로 개선 책임; 수집 이벤트의 테넌트별 순서를 유지하며 중복 쓰기 제거
- 지도 아래 Kafka 수집용 Go 부하 시험 도구 배포 및 프로파일링을 활용한 잠금 병목 분리; 요청 p95 지연 310ms에서 190ms로 단축
주요 프로젝트
이벤트 재생·복구 테스트베드
영국 런던
모의 포트폴리오
2026년 3월 - 2026년 5월
- 멘토의 검토를 받는 모의 실습에서 Node.js 수집(ingestion) API에서 Kafka 발행 전 스키마 검증을 구현. PostgreSQL 대사로 성공 응답 뒤 누락된 이벤트를 찾아내고, 영속 저장 후 응답하도록 수정해 타임아웃 재현 테스트에서 데이터 손실을 방지
- 후속 지도 실습에서 재시도 폭주와 컨슈머 지연을 재현해 분산 시스템(distributed systems)의 신뢰성(reliability)을 개선. Redis 만료 범위와 실패 메시지 큐를 설계해 오류를 격리하고 복구 중에도 정상 고객 이벤트가 처리되도록 장애 전파를 방지
- 멘토 검토를 받는 로컬 모의 과제에서 초당 20,000건의 고정 재생 부하로 벤치마킹과 프로파일링을 수행해 Rust 수집 핸들러를 개선. 압축 해제 크기를 제한하고 메모리 할당 전에 검증하여 Kafka 영속화 이후 응답을 유지하면서 p95 응답 지연을 180ms에서 112ms로 단축
- 멘토 검토를 받는 로컬 모의 과제에서 프로젝트·distinct ID별 멀티테넌트 큐 제한을 설계. 대량 요청 고객을 별도 처리 경로로 분리하고 Kafka 오프셋과 PostgreSQL 식별 매핑으로 데이터 무결성을 확인하여 3배 트래픽 급증 중에도 다른 고객의 목표 지연시간을 유지
- 멘토 검토를 받는 로컬 모의 과제에서 소비자 지연·재시도 건수·전체 수집 지연을 연결하는 관측성 대시보드를 구축. 온콜 장애에서 멈춘 파티션의 잘못된 이벤트를 추적해 격리 배치를 재생하고 건수를 대조한 뒤 종료했으며, 재현 테스트를 카나리 배포 기준에 추가
- 멘토의 검토를 받는 모의 실습에서 Node.js 수집 API의 Go 부하 테스트 클라이언트를 구축하고, 타임아웃·중복 응답을 재현해 PostgreSQL 건수와 대조. 재시도 처리 조건을 수정하고 복구 배치에서 수락한 이벤트의 누락·중복 저장을 방지했는지 검증
- 합성 테넌트 트래픽, 제어 가능한 Kafka 장애, S3 보관함을 갖춘 로컬 이벤트 재생 도구를 구축. 복구 시간과 재생 전후 고유 이벤트 수를 비교해 CI에서 유실·중복 전송 실패를 재현할 수 있도록 구성
- 독립 입력을 활용한 개인 회귀 테스트 구성 책임; 경계 사례 오류 해결 및 기대 출력이 포함된 재현 시험 자료 배포
학력
University of Manchester
맨체스터 · 영국
컴퓨터과학 학사 · 재학 중
2024년 9월 - 2027년 6월
관련 과목: 알고리즘, 운영체제, 데이터베이스, 컴퓨터 네트워크
핵심 역량
언어·저장소
Rust · Node.js · Go · Kafka · PostgreSQL · Redis
시스템 설계
테넌트 분리 · 데이터 무결성 · 관측성
실행·검토
부하 테스트 · 회귀 테스트 · 오류 재현


