무슨 일을 어떻게 하느냐에 달려있다
이 글은 비전공자를 위한 IT 커리어 바이블 시리즈의 3번째 이야기입니다.
이전 글: 현재의 안락함을 버려라
어떤 회사를 가든 무슨 일을 하든 항상 같은 일을 반복하다 보면 매너리즘에 빠지게 되어있다.
혹은 내가 하는 일의 가치를 느끼기 어려울 때가 많다. 물론 무슨 일을 하느냐도 중요하지만, 어떻게 하느냐가 가치 실현의 가장 큰 비중을 차지한다. 그리고 그 가치 실현은 끊임없이 효율적인 방법에 대한 생각과 고찰에서 출발된다.
LG에서 근무할 때의 일이다.
당시 했어야 했던 일 들 중에 하나는 LG.com에 등록된 특정 카테고리의 제품 정보를 검수해야 하는 일이 있었다.
하지만 TV라는 제품만 봐도 카테고리 종류가 여러 가지가 있고, TV 만 검수하는 것이 아니라 상당히 많은 제품의 상위 카테고리들이 있는데 이 모든 페이지를 수동으로 일일이 검수하는 일이란 쉽지 않을뿐더러 사람이 하는 일이기 때문에 충분히 실수를 유발할 수 있는 일이었다. 솔직히 누가 보면 굉장히 막노동과 다를 게 없는 수작업이었다.
때문에 이일을 효율적이고 빠르지만 재활용 가능하며 정확한 방식으로
처리하고 싶었다. 물론 검수를 빠른 시일 내에 마쳐야 하는 프로젝트 일정도 있었기 때문에 여유 부리면서 방법을 고안해낼 수 있는 상황은 아니었다.
때문에 처음에는 다음과 같은 간단한 리서치를 했다.
자동화하여서 검수할 수 있는 방법이 있는지
방법이 있다면 어떤 개발 언어로 쉽게 개발할 수 있는지
웹페이지를 자동으로 스크래핑해서 원하는 데이터를 추출해 낼 수 있는지
스크래핑하고자 하는 웹페이지가 반복된 패턴으로 구조화되어있는지
상기 조건이 만족된다는 것을 파악한 뒤에는 작은 PoC ( Proof Of Concept ) 작업을 돌입했다.
Python 프로그래밍 언어 기반의 웹 스크래핑 프레임워크인 Scrapy를 이용해서
단 1개의 페이지에 해당되는 제품의 유일한 아이디를 추출해서 총 특정 카테고리의 제품 개수를 파악하는 프로그램을 개발했다.
1개의 페이지가 가능했고 Scrapy에서는 일정한 패턴으로 여러 개의 Page를 Navigate(순환하면서 검색) 할 수 있는 동적 URL 변경을 지원하고 있었기 때문에 LG.com의 제품 카테고리에서 여러 개의 페이지에 걸쳐서 제품 목록이 있는 경우에도 쉽게 한 카테고리의 전체 제품 개수를 파악할 수 있었다.
그렇다면, 현재까지 한 개의 카테고리에 해당되는 여러 개의 제품 페이지를 순환하면서 제품 개수를 파악할 수 있었다면, 여러 개의 카테고리에 해당되는 제품 페이지를 순환하며 검수하는 것이 최종 목표였다.
즉, 카테고리 별 첫 페이지의 URL 주소만 가지고 있으면 모든 제품 페이지의 순환 검수가 가능하다는 논리적인 유추가 가능했고 전체 페이지의 URL 주소는 LG.com의 데이터베이스에서 추출이 가능했다.
결국, 내가 해야 했던 일은 "무수히 많은 카테고리의 모든 제품 페이지의 정보가 제대로 입력되었는지를 확인" 하는 일이었고, 그것을 하는 방법은
수동으로 일일이 제품 개수를 세어본다.
다른 사람의 도움을 구하여 같이 세어본다.
제품 정보를 자동으로 검수하는 프로그램을 개발한다.
와 같은 선택지로 좁힐 수 있었고 그중에서 가장 나에게도 도움이 되며 장기적으로도 동일한 업무가 생겼을 때 누구나 효율적으로 일할 수 있는 생산성을 가져다주는 프로그램 개발이라는 방법을 선택한 것이다.
아니나 다를까, 제품 정보의 확인이 수시로 필요했던 상황이 그 이후로도 발생했고 나는 그럴 때마다 프로그램을 실행해서 단 몇 분만에 문제를 해결할 수 있었다.
나는 이러한 업무 방식을 2차례 이직 후에도 계속 고수하고 있다.
처음 하는 일
앞으로도 계속할 수 있는 가능성이 있는 일
나뿐 아니라 누군가에게 생산성을 가져다줄 수 있는 방식
으로
모든 업무를 전체/일부 자동화하거나 자동화할 수 있도록 프로세스를 정리해놓는다.
혹자는 이렇게 이야기할 수 있다.
그럼 바로바로 해결해야 하는 일들은 조금 늦어질 수 있지 않나요?
지금 바로 해야 할 일들도 산더미처럼 많은데 언제 그런 걸 고민하고 있나요?
나도 동의한다. 하지만 효율 적인 업무 방식을 계속해서 반복하다 보면 그러한 두려움들이 사라지고 궁극의 효율성을 얻게 된다.
지금 개발자로서 업무를 하는 동안에도 항상 나만의 Code Library를 만들어 놓고 코드의 재사용과 업무의 생산성을 높인다.
매일 똑같은 방식으로 일하고 있는가?
남들이 했던 방식으로 일하고 있는가?
더 나은 방식, 두렵지만 도전해보고 싶은 방식을 생각해본 적은 없는가?
무슨 일을 하든, 좀 더 효율적인 방식을 잠시 1분이라도 생각해보아라.
두렵거든, 왜 두려운지 생각해보고 확인해볼 것들을 정리해보아라.
그리고 다면 그것은 두려움이 아니라 몰랐기 때문에 막연한 망설임이었다는 것을 알게 될 것이다.
다음 글: 영어는 왜 공부해야 하는가?
시리즈 처음부터 보기: 비전공자 출신 7년 만에 미국 대기업 개발자로 취업하기