기술 스택 나열 + 가장 자신 있는 부분 중심으로 푸는 결
MES(Manufacturing Execution System) 개발 경험에서 가장 많이 다룬 스택은 백엔드 쪽에서 Java와 Spring Boot, 화면단에서 React였습니다. 공정 데이터를 실시간으로 수집해서 이상 감지 알림을 띄우는 기능을 담당했는데, 설비에서 올라오는 데이터가 불규칙적이어서 파싱과 정규화 처리가 까다로웠습니다.
MQTT 프로토콜로 설비 데이터를 받아 Kafka로 넘기고, Spring에서 소비해서 PostgreSQL에 저장하는 구조를 팀과 함께 구성했습니다. 가장 자신 있는 부분은 이 데이터 파이프라인 구성입니다. 설비마다 메시지 포맷이 달라서 어댑터 패턴으로 각 설비를 추상화하는 방식을 제안했고, 이후 신규 설비를 추가할 때 코드 변경 없이 설정만으로 대응할 수 있게 됐습니다.
운영 중 처리 지연이 발생했을 때 Kafka 파티션 수와 컨슈머 그룹을 조정해 처리량을 약 2배 늘렸고, 그 경험으로 파이프라인 튜닝에 대한 감각이 생겼습니다.