메이코더스 최새미 대표

 

바야흐로 대학교는 기말고사 시즌. 인문계 전공생들이 너댓장씩 쉽게 답안을 채워내던 교양수업 기말 고사 때, 단 한 장을 채우는 것도 버거웠던 경험은 나를 비롯한, 이공계생들에겐 흔한 트라우마 아닐까?

'인문계열 학문은 세밀한 상황을 다양한 언어로 ‘풀어내는’ 데 탁월하다. 자연계열 학문은 같은 상황을 보다 ‘단순화 계량화’ 하는 분야이다.' 당시엔 이같은 편견(?)에서 나 역시 자유롭지 않았다. 문과이든, 이과이든, 모든 과학에는 구상화 추상화 단계가 있고, 예술 또한 그러하다는 깨달음은 한참 시간이 흐른 뒤였다.

이런 심리적 진입 장벽 때문일까, 스타트업 창업 후, “문과생도 개발자가 될 수 있을까요?” 질문을 자주 받는다.

코딩 적성과 추상화 능력

코딩 적성이란 무엇일까. 가장 중요한 것은 ‘추상화(Abstraction) 능력’ 보유 여부 아닐까 싶다. 구체화의 반댓말. 복잡한 실제의 것들을 단순화해서 구현하는 것. 빈센트 반 고흐의 작품에서나 봤던 그 추상화.

 

현실세계에 중요한 것들을 뽑아 적합한 이름을 붙이고, 속성을 부여하는 것이 코딩의 시작이다. 예를 들어 온라인 상점을 설계한다고 하면, ‘상점’은 ‘이름’ ‘주소’ ‘사업자번호’를 가지고 여러 개의 ‘상품’을 가진다. ‘상품’은 ‘이름’ ‘분류’ ‘무게’ 등의 정보를 가지게 된다. 상점이나 상품 이름은 짧은 단어로 표현해도 되지만, 주소는 긴 문장으로 표현해야하고, 사업자번호는 일정한 양식을 가져야 한다. 당연해 보이는 현실세계의 것들을 코딩할 때에는 반드시 이름과 속성을 붙이는 추상화 과정을 거처야 한다.

추상화 능력이 코딩 적성과 연관된다면, 문과생들이 개발자가 되지 못할 이유도 없다. 기획이나 제안, 마케팅을 하는 영역이 추상화 능력과 무관하지 않기 때문이다. 많은 문과 진로에서 프로젝트를 제안하며 타깃과 비지니스 주체들을 도식화하고, 필요한 내용만 뽑아 강하게 어필하는 훈련을 거치고 있으니 말이다.

시작하세요, 파이썬부터는 어때요?

문제는 단순히 ‘고용이 잘 되는 사람’이 되기 위해 개발자 진로를 희망하는 경우다. 보통 그런 경우엔, 실무에 진입하지 못하거나 회사의 조직적 한계로 본인의 추상화 능력을 키울 상황에 놓이지 못한다. 추상화 능력이 전제되지 않으니 코딩 적성을 언급하기도 애매하다.

개발자는 분명 좋은 직업이다. 하지만 적성에 맞지 않으면, (심지어 전공이 컴퓨터 공학이라 하더라도) 한 줄 한 줄 짜며 그렇게 고통스러운 직업도 없다.

주변에는 고객 데이터를 추출해 마케팅 방안을 짜다가 개발자로 전향한 문과생 출신도 있고, 심지어 기술 스타트업에서 구현을 넘어 딥러닝 연구를 수행하고 있는 문과생들도 있다. 기획, 마케팅 업무에서 기른 추상화 능력을 십분 발휘하고 있기 때문이리라.

추상화 능력이 잘 발달된 사람이라면 가상세계에 현실을 구현하는 데 재미를 느낀다. 그리고 재미만 느끼면 코딩을 도구삼아 더 어려운 문제도 충분히 풀 수 있다.

그래서 “문과생도 개발자가 될 수 있나요?”라는 질문에 나는 일단 조금씩 배워보기를 추천한다. 수학을 잘 알지 못하더라도, 인간의 언어에 가까운 언어로 시작할 수 있는 것이 코딩이기 때문이다.

2000년대 연예인 팬페이지를 만들며 웹프로그래밍에 진입했다. 서울대에서 산림과학과 컴퓨터공학을 전공하고 졸업 후 동아사이언스에서 기자로 활동했다. 이후 바이오인포매틱스를 석사 전공하고 연구개발용 소프트웨어개발 회사 메이코더스를 창업했다. 최근에는 국내에서 쌓은 경험을 기반으로 동남아시아 대상 케이뷰티 추천 알고리즘과 이커머스 플랫폼을 개발 중이다. 육아와 창업을 병행하며 고된 일상을 보내고 있다.