C포자, 스스로 코딩을 시작하다
담당자의 귀차니즘이 초래한 의외의 업무 성과
고등학생 시절, 윤리 선생님께서 꿈이 뭐냐고 물어보셨다. 나는 공학적인 뭔가를 만드는 사람이 되고 싶었다. 그때 선생님은 그럼 네 꿈은 '공학도'구나 하셨고 잘 못 알아듣자 단어의 뜻을 설명해주셨다. 돌이켜보니 청소년 시절 내게 꿈을 물어보신 선생님은 그분밖에 없었던 것 같다. 참 신기하기도 하지. 30대가 된 지금에야 그런 질문을 던져주셨다는 사실에 참 좋은 분이셨구나 하고 돌이켜 본다.
대학에서는 전자공학을 전공했다. 수능점수에 맞춰서 전공을 버리고 학교 간판을 선택하는 일 따위는 하지 않았다. 4년간 관심도 없는 공부를 해야만 한다니? 애초에 나는 원하지 않는 것을 견딜 수 있는 사람이 아니었다. 전자공학을 선택한 이유는 아빠가 기계공학을 전공하셨기 때문이었다. 그런데 왜 기계공학에 진학하지 않았냐고? 기계공학보다는 전자공학이 더 전망이 밝을 것만 같았기 때문이다.(난 08학번이다.) 그냥 아빠랑 같은 계열인 공학대학이면 되겠다고 생각했었다.
어렸을 적 집에 선풍기가 고장 났는데 아빠가 분해 후 PCB에 납땜을 해서 고쳐주셨던 장면은 아직도 기억이 난다. 아빠가 셀프로 뭔가를 고치거나 만들 때마다 나는 항상 옆에 붙어있었다. 당시에는 나이를 먹으면 나도 자동적으로 아빠처럼 이런 일들은 당연히 할 줄 알겠구나 했었다. 그러나 당시의 아빠보다 나이가 더 많은 지금, 집에 선풍기가 고장 나면 나는 새로 산다.ㅋㅋㅋ 아빠 사랑해요~
다시 대학생 시절 이야기로 돌아가서, 1학년 2학기 과목 중 C언어가 있었고 무려 3학점짜리 필수과목이었다. C언어란 'Computer'언어의 약자로 흔히들 사용하는 Java, C++, Python 등 Computer Science에서 사용되는 언어의 총칭이라고 이해하면 되는데, C언어도 엄연한 언어인 만큼 자주 사용해서 익숙해져야 잘 구사(코딩)할 수 있다. 수업시간에 이런저런 코딩을 해서 결과물을 만들어내는 걸 좋아하는 친구들도 있었는데 당시의 나는 수업시간이 끝나면 친구들이랑 얼른 술 마시러 나가는 게 훨씬 재미있었다. 그리고 공업수학 시험을 더 잘 보면 되지 뭐.라고 생각했고 결국에는 C학점을 받고 씨포자가 되었다. 안타깝게도 C언어는 2학년 이후에도 시스템 설계 및 실습 과목을 수강할 때 여러 번 사용되었는데 어찌어찌 졸업까지 잘 버텼다. 당시 교수님은 전자공학도가 C언어를 쓸줄 모르면 졸업 후에 아무것도 못할거라고, 망할거라고 확신에 차서 말씀하셨는데 나를 비롯한 내 동기들은 다들 잘 먹고 잘 산다.(교수님 말씀이라고 진리가 아니라는 사실)
그러다가 13년이 지난 지금, 수만 행의 data를 이용해 일정한 양식의 엑셀 파일로 만들어야 하는 업무를 담당하게 되었다. 약 3개의 엑셀 raw파일에서 vlookup함수 등을 조합하여 결과물을 만들어야 했는데 이건 뭐 너무 단순한 엑셀 노가다 작업이라 번거롭기만 하고 배울 수 있는 것도 없어서 하기가 싫었고, 부사수에게 이 업무를 설명하던 중 현타가 세게 왔다. 훌륭한 역량을 가진 내 후배에게 이런 원시적인 일을 가르치고 있다는 게 비참했다. 그때 결심하게 되었다. 이 업무를 코딩으로 자동화해서 버튼 하나로 끝내버리겠다고.
파이썬으로 구현해보려 했으나 내 친구 양은 VBA를 추천했다. VBA의 가장 큰 장점은 내가 코딩 용어를 모르더라도 컴퓨터가 나의 엑셀 프로그램상의 action들을 코드로 기록해주는 '기록하기' 기능이 존재하는 것이다. 기록하기 기능을 활성화시켜놓고 작업을 하면 컴퓨터가 (원시적으로)코딩을 한다. 그럼 나는 그 코드를 보고 문법을 이해해서 효율화만 하면 되는 것이었다!
오늘 코딩을 완료하긴 했지만 문법이 무거워서 그런지 렉이 많이 걸리고 때때로 계산이 누락되는 상황이다. 그래도 약 이틀만에 생각보다 빠르게 완료했다. 다음 주까지 본 업무를 100% 효율화, 자동화하는 게 내 목표다. 수술 전에 성과 하나는 가져가야겠다.