ROS 환경 개발 경험
Linux 기반 ROS 환경에서 로봇 센서 데이터를 처리하는 노드를 개발한 경험이 있습니다. 여러 센서에서 들어오는 데이터의 타이밍이 어긋나 동기화 문제가 발생했는데, 타임스탬프 기반으로 데이터를 정렬하는 로직을 추가해 해결했습니다. 실시간성이 중요한 환경에서는 일반적인 웹 개발과 다른 지연 시간 감각이 필요하다는 것을 배웠습니다.
면접관이 이 한 문장으로 확인하려는 것들. 각 갈래를 알면 답의 뼈대가 잡혀요.
Linux 기반 ROS 환경에서 로봇 센서 데이터를 처리하는 노드를 개발한 경험이 있습니다. 여러 센서에서 들어오는 데이터의 타이밍이 어긋나 동기화 문제가 발생했는데, 타임스탬프 기반으로 데이터를 정렬하는 로직을 추가해 해결했습니다. 실시간성이 중요한 환경에서는 일반적인 웹 개발과 다른 지연 시간 감각이 필요하다는 것을 배웠습니다.
Unix 환경에서 SAP 시스템을 운영하며 배치 작업 스케줄이 특정 시간대에 몰려 시스템 부하가 급증하는 문제를 발견했습니다. 배치 작업 순서를 리소스 사용량 기준으로 재배열해 부하를 분산시킨 결과, 피크 시간대 응답 지연이 크게 개선됐습니다. 대규모 시스템일수록 스케줄링 하나가 전체 성능에 미치는 영향이 크다는 것을 실감했습니다.
다양한 유닉스 계열 환경에서 작업하며 셸 스크립트 호환성 문제를 자주 겪었습니다. 특정 셸에서는 동작하던 스크립트가 다른 환경에서는 오류를 일으켰는데, POSIX 표준을 기준으로 스크립트를 재작성해 환경에 관계없이 동작하도록 만들었습니다. 이 경험을 통해 특정 환경에 종속되지 않는 코드 작성의 중요성을 배웠습니다.
같은 실수가 반복돼요. 이것만 피해도 절반은 갑니다.
진짜 면접은 두 번째 질문부터예요. 이 답 뒤에 따라올 법한 것들.