요약
- 원제(블로그 표기) "한화에어로스페이스 인턴십: 무인차량 통신 모니터링 프로토타입 개발" — 파일명 금지 문자(:)만 치환. 게시일 2026-02-09 · slug
hanwha-ugv-mon-internship-retro · 카테고리 "채용 · 면접 · 커리어 / 인턴 업무 회고" · 한국어·영어 병기 - 한화에어로스페이스 LS 사업부 자율SW팀에서 2026년 1월~2월 8주간 인턴으로 근무하며 무인차량(UGV) 통신 데이터 모니터링 프로토타입 UGV-MON을 단독으로 설계·구현한 회고. 과제: 기존 시스템에 절대 영향을 주지 않으면서 누구나 통신 품질을 볼 수 있는 실시간 대시보드. 요구사항은 수동 감시(제어 패킷 금지)·2초 polling·KPI와 이상 징후 분석, 환경은 폐쇄망 Linux·인터넷 불가·Python 3.10+.
- 정량 요약표: 8주 단독 개발, Python 모듈 31개, 코드 ~4,000줄(메인), 테스트 54개 100% Pass(ruff lint 0 errors, mypy), UI 실시간 패널 11개, KPI 7개(PPS·파싱성공률·체크섬 오류율·패킷손실·가용성·지터현재·지터P95), ML 특성 벡터 6차원, 갱신 주기 2초, 롤링 윈도우 1시간(deque 360,000 레코드), 기술 문서 9개 + 최종·인턴십 보고서, 4계층 아키텍처(Pipeline → Store → Service → UI), SRP 서비스 모듈 5개.
- 설계: 4계층 레이어드 구조로 PacketStore를 list에서 deque로 바꿀 때 상위 계층을 건드리지 않았고, DataProviderProtocol 인터페이스로 Mock/Live 듀얼 모드를 구현해 실장비 없이 개발·테스트. ServiceProvider 패턴으로 의존성 그래프 관리.
- 이후 절: 스레드 안전성, 바이너리 프로토콜 파싱, 지터 계산 정의, pandas 최적화; Isolation Forest 기반 6차원 특성 이상 탐지와 Cold Start 룰·ML 앙상블, 설명 가능한 이상 탐지(XAI); '객체 참조' 버그 디버깅; 솔직한 회고로
datetime.now() 기반 시계열의 한계, message type 미분리로 인한 ML 데이터 오염, ML 성능 정량 평가 체계 부재를 짚었다. - 수치·표기 규칙은 한화에어로스페이스 인턴 (UGV-MON)·UGV-MON 노트의
## 표기 규칙을 따른다(이 글의 수치는 블로그 게시값).
등장하는 것
- 한화에어로스페이스 — LS 사업부 자율SW팀 인턴
- 한화에어로스페이스 인턴 (UGV-MON) — 글의 주제인 인턴 경력
- UGV-MON — 글의 주제인 프로토타입
연결
- Writing · Experience · Projects
- 원자 노트: 인터페이스로 Mock과 Live를 갈라 실장비 없이 개발·테스트한다 · datetime.now() 기반 시계열과 message type 미분리는 ML 데이터를 오염시킨다 — 프로토타입의 솔직한 한계
- 개념: Isolation Forest · Mock·Live 듀얼 모드 · Scapy · UGV 통신 프로토콜 · i18n 다국어 · pytest·단위 테스트 · ruff·mypy · 기술 블로그 운영 · 레이어드 아키텍처 · 롤링 윈도우 · 설명가능 이상탐지 · 시계열 이상탐지 · 실시간 대시보드 · 앙상블 · 이상탐지 · 지터·패킷손실 · 콜드스타트 · 패시브 모니터링 · 폐쇄망·오프라인 환경 · 피처 엔지니어링