Skip to main content
Youngmin Ko
HomeWritingProjectsPlaygroundKnowledge GraphCV
More ⌄
AboutNowCoursesLinksPrivacy
Search ↗
Wiki/WritingView in graph →
writing2026-09-12

Hanwha Aerospace Internship: Building a UGV Communication Monitoring Prototype

writingbloginternshiphanwhaanomaly-detectionpython

Local graph

Notes 2 · Links 1

Links

0

None

Backlinks

1
  • Hanwha Aerospace R&D SW/ML Interviews, Fall 2025writing

Source posts

1
  • Eight Weeks at Hanwha Aerospace: Defining a Communication Anomaly Before Detecting One
← Wiki
© 2023-2026 Youngmin. All rights reserved.
rhdudals0505@naver.comGitHubLinkedIn
Built with Next.js.Updated 2026.11.07

Summary

  • Original article title, translated: "Hanwha Aerospace Internship: Building a UGV Communication Monitoring Prototype." Only the filename's unsupported colon was replaced. Published 2026-02-09 · slug hanwha-ugv-mon-internship-retro · category "Hiring, interviews, and careers / Internship retrospectives" · source article recorded in Korean and English.
  • A retrospective on independently designing and implementing UGV-MON, a prototype for monitoring unmanned ground vehicle communication data, during an eight-week internship in January and February 2026 with Hanwha Aerospace's LS Division Autonomous Software Team. The task was a real-time dashboard that anyone could use to inspect communication quality without affecting the existing system. Requirements included passive monitoring with no control packets, two-second polling, KPI analysis, and anomaly analysis. The environment was isolated Linux without internet access, using Python 3.10 or later.
  • The article's quantitative overview: eight weeks of independent development; 31 Python modules; approximately 4,000 lines of main code; 54 tests, all passing, with zero ruff lint errors and mypy checks; 11 real-time UI panels; seven KPIs (PPS, parse success rate, checksum error rate, packet loss, availability, current jitter, and P95 jitter); six-dimensional ML features; two-second updates; a one-hour rolling window using a deque of 360,000 records; nine technical documents plus final and internship reports; four architecture layers (Pipeline → Store → Service → UI); and five service modules following the single-responsibility principle.
  • Design: the four-layer architecture allowed PacketStore to move from a list to a deque without changing upper layers. A DataProviderProtocol interface supported Mock and Live modes, enabling development and testing without the physical equipment. A ServiceProvider pattern managed the dependency graph.
  • Later sections cover thread safety, binary protocol parsing, the definition of jitter, and pandas optimization; Isolation Forest anomaly detection over six-dimensional features, a cold-start rules/ML ensemble, and explainability; and debugging an object-reference bug. The retrospective explicitly acknowledges limitations of datetime.now()-based time series, ML-data contamination caused by not separating message types, and the absence of a quantitative ML-performance evaluation framework.
  • Numerical claims and wording follow the "Wording rules" sections in the Hanwha Aerospace internship (UGV-MON) and UGV-MON notes. Numbers listed here are those published in the blog article.

Mentioned

  • Hanwha Aerospace: internship in the LS Division Autonomous Software Team.
  • Hanwha Aerospace internship (UGV-MON): the experience discussed in the article.
  • UGV-MON: the prototype discussed in the article.

Connections

  • Writing · Experience · Projects
  • Atomic notes: Separate Mock and Live implementations behind an interface to develop and test without physical equipment · datetime.now()-based time series and mixed message types contaminate ML data; acknowledge prototype limitations
  • Concepts: Isolation Forest · Mock/Live modes · Scapy · UGV communication protocols · i18n and multilingual support · pytest and unit tests · ruff and mypy · Running a technical blog · Layered architecture · Rolling windows · Explainable anomaly detection · Time-series anomaly detection · Real-time dashboards · Ensembles · Anomaly detection · Jitter and packet loss · Cold starts · Passive monitoring · Isolated and offline environments · Feature engineering