Python 데이터 처리 프로젝트를 성능 개선 중심으로 설명하기
센서 로그 데이터를 분석하는 개인 프로젝트를 Python으로 진행했습니다. 초기 반복문 기반 처리 방식이 데이터 10만 건에서 40초 넘게 걸려, 판다스 벡터 연산으로 바꿔 처리 시간을 3초대로 줄였습니다. 이후 결과를 시각화해 이상 패턴 구간을 표시하는 기능도 추가했습니다. 이 경험으로 언어보다 자료 처리 방식이 성능을 더 크게 좌우한다는 것을 배웠습니다.
면접관이 이 한 문장으로 확인하려는 것들. 각 갈래를 알면 답의 뼈대가 잡혀요.
센서 로그 데이터를 분석하는 개인 프로젝트를 Python으로 진행했습니다. 초기 반복문 기반 처리 방식이 데이터 10만 건에서 40초 넘게 걸려, 판다스 벡터 연산으로 바꿔 처리 시간을 3초대로 줄였습니다. 이후 결과를 시각화해 이상 패턴 구간을 표시하는 기능도 추가했습니다. 이 경험으로 언어보다 자료 처리 방식이 성능을 더 크게 좌우한다는 것을 배웠습니다.
팀 프로젝트에서 재고 관리 시스템을 Java와 스프링으로 개발하며 결제 모듈을 맡았습니다. 동시성 문제로 재고 수량이 음수로 떨어지는 버그가 있었는데, 원인을 추적해 트랜잭션 격리 수준 설정이 빠져 있던 것을 발견해 수정했습니다. 이 경험으로 코드가 동작하는 것과 안전하게 동작하는 것은 다르다는 것을 배웠고, 이후 모든 모듈에 테스트 코드를 추가했습니다.
불량 검출용 머신비전 프로그램 개발 과제에서 조명 변화에 따라 인식률이 크게 흔들리는 문제를 겪었습니다. 처음에는 임계값을 고정해 두었는데 오검출이 잦았고, 적응형 이진화 방식으로 바꾸고 나서 인식률을 72퍼센트에서 91퍼센트까지 올렸습니다. 이 경험으로 알고리즘 자체보다 촬영 환경 변수를 통제하는 것이 얼마나 중요한지 배웠습니다.
같은 실수가 반복돼요. 이것만 피해도 절반은 갑니다.
진짜 면접은 두 번째 질문부터예요. 이 답 뒤에 따라올 법한 것들.