제조업의 엔지니어는 단순 반복적인 업무가 많다. 하지만 Data 처리와 통계적 분석이 필요하기 때문에 주로 훈련된 엔지니어가 그런 업무를 담당했었다. 그러던 중 프로그램 개발자들과의 독서모임을 통해 내가 가진 생각의 틀을 깰 수 있었고, 엑셀 VBA 코딩으로 업무 효율을 480배 향상할 수 있었다. 하지만 이것으로 끝이 아니다. 그동안 비일비재했던 부서 내 단순 반복 업무를 별도의 투자 없이 내가 직접 해결할 수 있는 발판을 마련했다. 개인적으로도 업무 역량 강화를 위해 프로그래머의 길로 한발 나아갈 수 있는 좋은 기회가 되었다.
내가 가진 생각의 한계를 깨고 불안 지대로 한발 나아갈 힘을 얻는 것. 그것이 바로 '느슨한 유대의 힘'이라고 생각한다.
제조업의 엔지니어는 내부 상황 파악을 위한 자료와 고객에 발송할 정기적인 자료들을 주기적으로 작성해야 한다. 그런 자료를 작성하기 위한 절차는 다음과 같다. 시스템 서버의 Data를 본인의 PC로 Download 후 Data 전처리를 통해 원하는 형식으로 가공한다. 그렇게 가공된 Data를 통계 분석 Tool이나 Graph Builder를 통해 시각화해서 자료를 작성하는 것이 일반적이다.
이런 업무들을 처리하기 위해 엔지니어들은 엑셀과 같은 스프레드 시트를 사용하는데, Data 전처리에 드는 수고와 노력이 70%에 달할 정도로 많은 비중을 차지한다. 이런 Data 전처리 작업은 문서의 종류에 따라 다르지만 적게는 30분에서 많게는 2시간이 걸리기도 한다. 심지어 정규화된 Format 중 일부가 달라지면 작업을 처음부터 다시 해야 하는 경우도 생기고, 주기적으로 업데이트해야 하는 경우는 동일 작업을 반복해야 하는 문제도 있다.
이런 불합리를 해결하기 위한 시스템 개발은 현실적으로 어렵다. 왜냐하면 엔지니어가 필요한 Data는 다양한 종류의 시스템에 흩어져 저장되어 있고 그것들을 한 번에 모아서 처리할 수 있는 시스템을 구축하기는시간적 비용적으로 많은 자원이 소요되기 때문이다. 그래서 엔지니어들은 각종 시스템에서 Data를 직접 다운로드하여 Data 전처리를 수작업으로 진행한 후에 문서를 작성하거나 분석업무를 진행했었다.
하지만 이런 경우 문제점은 크게 2가지가 있다.
첫째는 인력의 비효율적인 운용이다. 동일한 업무를 계속 반복하기 때문에 부가가치가 큰 다른 일을 할 시간을 뺐는다. 두 번째는 해당 인력 부재 시 대체가 힘든 점이 있다. 비록 Data 전처리와 Data 분석이 단순 반복 업무지만 스프레드 시트를 복잡하게 사용하기 때문에 특정 인물 외에 이런 업무를 할 때 별도의 교육이 필요하고, 초기 투입 시 작성하는데 시간이 많이 걸린다.
이런 현실을 알고 있었지만 어쩔 수 없다고 생각했다. 대신 스프레드 시트와 파워포인트, 통계 프로그램을 효율적으로 사용하기 위해 연습하고, 새로운 수식들을 적용하며 최대한 업무 효율을 높이는 방법을 선택했었다. 이런 일을 하는 나와 내 동료는 이미 해당 Tool의 숙련도가 높은 상태이기 때문에 다른 방법을 찾기는 어려웠다.
하지만 독서모임에서 만난 사람들과 대화를 통해 나의 고정관념을 깨버릴 수 있었다. 씽큐베이션 만담을 통해 스타트업 이사, 프리랜서 개발자, 카카오 프로그래머, 삼성 시스템 납품 개발자, 디자이너 등 IT업계의 대단한 인재들과 함께 약 3달간 독서 모임을 해왔다. 평소 IT업계에 대한 궁금증과 향후 맡게 될 AI 및 Data Science 업무를 위해 씽큐베이션 만담에 지원했던 것이 도움이 되었다.
그들은 나와 다른 세상의 사람들이었다. 자신이 불편하면 스스로 프로그램을 만들었다. 예를 들어 여러 사이트를 연결하는 프로그램을 만들어 원하는 책이나 물건을 검색하거나, 자신에게 꼭 맞는 시간 관리 프로그램을 만들고, 게시판의 문서들을 자신이 원하는 형태로 쉽게 크롤링하는 일을 자연스럽게 했다.
그들은 불편한 일이 있으면 프로그램 개발을 통해 불편을 해결하는 것을 당연하다고 생각했다. 그 얘기를 듣고 스스로 반성을 했다. 나는 그동안 단순 반복 업무를 당연하다고 생각하고 바꾸려는 노력을 전혀 하지 않았다. 좋은 시스템이 나오기를 기다리며 의미 없는 반복 행동을 계속한 것이다.
사실 Data 전처리 시간을 줄이기 위해 컴퓨터 프로그램을 만들거나 엑셀 VBA를 사용하여 코딩하면 효율이 올라가는 것을 예전부터 알고 있었다. 하지만 실행에 옮기는 것은 전혀 생각하지도 못했다. 프로그램을 만드는 것은 나와 다른 세상의 일이라고 생각하고 포기했었다. 직장생활 13년 동안 컴퓨터 프로그램을 배워서 업무에 적용했다면 절약했을 시간들이 안타깝게 느껴졌고, 앞으로 Data 전처리를 위해 사용할 시간들이 아까웠다.
나는 safety Zone에서 한 발짝 벗어나 불안 지대로 나아가기 시작했다. 파이썬을 배우고 엑셀 VBA 책을 사서 실전 코딩에 들어갔다. 책과 유튜브, Stack Overflow를 보며 공부했다. 실력이 바닥인 상태에서 조금씩 발전을 거쳐 여러 사이트에서 코드를 베끼고 수정해서 현재 부서의 업무 중 가장 많이 쓰이는 Data전처리에 대해 코드를 만들어 실행했다. 그 결과기존에 숙련자의 경우 1시간, 비숙련자의 경우 2시간이 소모되는 Data 전처리 시간이 15초로 줄어들었다. 효율이 480배 향상된 것이다.
VBA 코딩 전/후 Data 전처리 소요 시간
물론 그 과정이 쉽지는 않았다. 나뿐 아니라 부서에서는 엔지니어 스스로 프로그램 개발을 통해 Data 전처리를 한다는 것에 대해 생각해본 사람이 없거니와 만약 그런 프로그램을 만들더라도 외부 업체에 의뢰하여 개발하는 것을 생각했었다. 부서 내 지원 없이 남는 시간과 출퇴근 시간, 정규 업무 시간 후에 눈치 보면서 공부해서 프로그램을 만든 것이 실제로 가동되는 것을 본 순간 그동안의 노력을 다 보상받은 기분이었다.
출처 : Stack Overflow
나는 컴퓨터 프로그램 개발을 통한 업무 효율화를 이제 겨우 시작한 상태다. 하지만 부서 내에는 아직도 비효율적으로 Data 전처리를 하거나 단순 반복적인 업무를 하는 경우가 많다. 앞으로도 컴퓨터 프로그램에 대한 지식과 경험을 쌓아서 부서 내 업무 효율을 위해서 노력할 것이다.