머신러닝은 현재 IT 업계에서 가장 수요가 많은 기술이다. 개인화 소프트웨어 및 서비스 제공업체 세일쓰루(Sailthru)의 수석 머신러닝 엔지니어 카일 햄린과 머신러닝 경력에 관해 이야기를 나눴다.
인공지능의 하위개념이자 패턴과 추론을 통해 시스템이 특정 작업을 수행하도록 하는 통계학적 모델 및 알고리즘인 머신러닝은 오늘날 기술 구직 시장에서 가장 수요가 많은 기술에 속한다.
머신러닝 엔지니어라는 직업 전망이 밝은 것은 어쩌면 너무나도 당연한 일이다. 온라인 교육 플랫폼 스터디닷컴(Study.com)에 따르면, 머신러닝 엔지니어는 습득한 지식을 응용해 시스템과 기계를 개발할 수 있는 고급 전문가다. 머신러닝 엔지니어의 주요 업무는 기계가 특정 작업을 수행하도록 프로그래밍하는 차원을 넘어서 구체적인 지시를 내리지 않아도 알아서 행동하게 하는 프로그램을 만드는 것이라고 스터디닷컴은 설명했다.
예를 들면 자율주행차나 특정 개인의 관심사를 파악할 수 있는 프로그램을 개발하는 것 등이 머신러닝 엔지니어의 업무에 포함된다. 스터디닷컴은 “맞춤형 뉴스 피드부터 맞춤형 웹 검색에 이르기까지 머신러닝 엔지니어는 수많은 개인들의 일상생활과 기술 사용 방식에 일조하고 있다”라고 말했다.
머신러닝 엔지니어가 갖춰야 할 직무 역량에는 컴퓨터 프로그래밍(C++ 또는 자바와 같은 특정 언어에 대한 지식 포함), 수학, 데이터 애널리틱스, 데이터 마이닝, 클라우드 애플리케이션 지식, 원활한 의사소통 능력 등이 있다.
이밖에 구인구직 사이트 인디드(Indeed)에 따르면, 2018년과 2019년 사이 직무 설명에 ‘AI’나 ‘ML’ 같은 키워드가 많이 포함된 상위 10개 직종을 분석한 결과, 머신러닝 엔지니어가 속하는 것으로 나타났다. 또한 머신러닝 엔지니어는 인디드의 최고 연봉 직업 순위에서 2018년 3위를 차지한 데 이어서 2019년에는 1위에 올랐다.
머신러닝 엔지니어가 되려면 어떻게 해야 할까? 개인화 소프트웨어 및 서비스 제공업체 세일쓰루에서 수석 머신러닝 엔지니어로 근무 중인 카일 햄린과 이야기를 나눠봤다.
햄린은 2010년 콜로라도 주립대학교(Colorado State University)에서 인지심리학 학사 학위를 받은 후 바루크 대학(Baruch College)에서 통계학 석사 학위를 취득했다. 그는 대학에 다니며 장래 계획을 세우는 동안에는 IT업계에 종사할 생각이 전혀 없었으며, “애초의 포부는 상담사나 테라피스트가 되는 것이었다”라고 말했다.
물론 기계나 기술의 작동 원리에 관심이 없었던 것은 아니었다고 햄린은 밝혔다. 이어서 그는 “생각해 보면 기계이든 디지털이든 사물을 만지작거리는 것에 늘 관심이 있었다. 처음에는 몰랐지만 기술 분야가 적성에 잘 맞았던 것 같다”고 덧붙였다.
직장 이력
햄린의 첫 직장은 데이터 애널리틱스 및 데이터 웨어하우스 제공업체 테라데이터(Teradata)의 데이터 모델링 인턴이었다. 그는 “인턴이긴 했지만 현재까지도 유용한 데이터 엔지니어링 지식의 기초를 쌓을 수 있었다”고 전했다.
인턴 이후 그는 아동 및 가족 서비스 제공업체 셸터링 암즈(Sheltering Arms)의 애널리스트로 취직했다. 담당 업무는 성과 지표에 따라 이니셔티브를 총괄하고 효율적인 채용, 교육 및 관리 시스템을 주도하는 것이었다. 그 밖의 다른 업무로는 월별 데이터 보고서 작성, 성과 지표 분석, 연금 분석, 이직률 평가 등이 있었다.
“조직 관련 분석 능력을 발휘해볼 수 있었던 첫 기회였다. 해당 업체는 비영리 단체이기 때문에 소프트웨어에 투자할 만한 돈이 많지 않았다. 인력 운영과 관련해 더 나은 의사결정을 지원하는 그 어떤 것도 가지고 있지 않았다”라고 햄린은 당시 상황을 설명했다. 그는 ADP 데이터에 기반한 보고 시스템을 설계했다. 담당 팀에 대한 인사이트를 얻을 수 있는 보고서를 수백 명의 원격 관리자들에게 배포하기 위한 목적이었다.
“아마 해당 업체가 실시한 분석 작업 중 최대 규모에 속할 것이다. 나의 구형 데스크톱 컴퓨터로 전부 실행했다. 이런 프로젝트 경험을 내세워 나의 포부를 실현할 가능성이 더 높은 회사로 이직할 수 있었다”라고 햄린은 회상했다.
그러고 나서 그는 미디어 및 마케팅 서비스 회사 마인드셰어(Mindshare)의 디지털 인사이트 애널리스트로 이직했다. 그가 이룬 성과 중 하나는 서로 다른 수많은 데이터 소스를 하나로 연결해 수백 개의 유니레버(Unilever) 브랜드 보고서 생성을 자동화한 것이다. 햄린은 “그 프로젝트 덕분에 관심 있는 회사에 스스로를 분석 능력자로 내세울 수 있었다”라고 말했다.
곧이어 그는 마케팅 및 광고회사 로켓 퓨얼(Rocket Fuel)에서 리서치 애널리스트로 근무했다. 햄린은 “이 회사에서 내 경력이 제대로 도약했다고 본다. 무엇보다 로켓 퓨얼은 기술 회사였기 때문에 생각이 비슷한 사람들을 많이 만날 수 있었다”고 전했다. 이어서 그는 다양한 상용 머신러닝 및 빅데이터 시스템 작업도 할 수 있었다며, “로켓 퓨얼에서 얻은 것은 내가 접하고 작업한 모든 최신 시스템이었다”고 덧붙였다.
2016년 3월 햄린은 정보 분석 기업 닐슨(Nielsen)에 머신러닝 엔지니어로 입사했다. 그는 “로켓 퓨얼에서의 근무 경력과 뛰어난 빅데이터 경험을 갖췄기 때문에 온라인 학습 시스템 관리에 사용되는 웹 애플리케이션 확장 프로젝트를 진두지휘할 수 있었다”고 말했다.
데이터 과학자들이 모델에 대한 인사이트를 얻고 평가를 하는 데 있어서 해당 시스템은 필수적이었다. 햄린은 “분석 시스템을 구축한 경험이 있었고, 이제는 분석 시스템을 생산 환경으로 확장하는 방법을 배웠기 때문에 이는 내 경력에서 크게 내세울 만한 점이었다”고 설명했다.
현재 근무 중인 세일쓰루에는 2019년 입사했다. 그는 현재 데이터 엔지니어링 분야와의 정렬에 더 중점을 두고 있다면서, “기존 머신러닝 시스템을 현대화하는 한편 통합 데이터 레이크와 최신 딥러닝 기술을 활용하는 새로운 플랫폼의 핵심 기반을 구축하는 데 집중하고 있다”라고 밝혔다.
기억에 남는 순간들
커리어패스에서 가장 기억에 남는 순간을 꼽아달라는 질문에 햄린은 머신러닝 엔지니어로 첫 시작하게 된 계기를 전했다. 그는 “학부를 졸업하고 여러 대학원에 지원했다. 주로 상담 심리학 박사 과정이었다. 지원 결과를 기다리던 도중 박사 학위를 따느라 7년을 보내고 싶지는 않다는 결론에 도달했다”고 말했다.
햄린은 박사 학위가 있지만 실무 경력이 전무한 것보다는 5년간의 실무 경력을 쌓는 것이 더 가치가 있으리라 판단해 뉴욕 바루크 대학의 산업 및 조직 심리학 석사 과정에 진학하기로 했다.
그는 “바루크 대학에서 내 진로를 완전히 바꿔 놓은 두 가지 경험이 있었다”고 말하면서, “첫 번째는 친한 친구와 아이디어를 현실화했던 경험이다. 우리가 만든 음악을 공유하고 믹싱할 플랫폼을 만든다는 것이었다. 친구와 함께 루비 온 레일즈(Ruby on Rails) 앱 작업에 몰두하는 동안 디버깅하고 코드를 만지작거리면서(설사 아무 목적이 없다 하더라도) 시간을 보내는 것이 심리학 수업 공부를 하는 것보다 훨씬 더 좋다는 사실을 깨달았다”라고 언급했다.
이어서 그는 “두 번째 경험은 심리학 과정 첫 학기에 들었던 ‘사업상의 결정을 위한 응용통계분석’이라는 수업이었다. 우리들은 원칙에 따라 실험을 설계하고, 데이터를 수집하며, IBM SPSS 통계 소프트웨어로 분석해야 했다”라고 말했다.
햄린은 학부시절의 경험 덕분에 어려운 수업이었지만 동시에 익숙하게 느껴졌다고 전했다. 학부 과정에서 많이 했던 것 중의 하나가 실험 설계를 연구하고, 수집한 데이터를 SPSS에서 분석하는 것이었기 때문이다.
그는 “학기 말이 다가오면서 나는 소프트웨어를 좋아하고 분석을 잘한다는 점을 확실히 알게 됐고, 바루크 대학 통계학 석사 과정으로 편입했다. 내 인생에서 최고로 잘한 결정이 아닐까 싶다”라고 밝혔다.
그후 2년 동안 햄린은 다양한 언어로 프로그래밍하는 방법을 배우는 것에 전념했다. 그 당시 데이터 과학 분야가 급성장하는 중이었고, 그는 본인이 통계 분석에 능숙하고 프로그래밍 기초도 탄탄하다면 취직하기 매우 쉬울 것이라는 사실을 알고 있었다.
“확실히 내 인생과 경력이 더 나은 방향으로 바뀌는 결정적인 변화였기 때문에 매우 기억에 남는 추억이다. 하지만 당시에는 과연 내가 통계학 석사 학위를 마칠 수학적 능력이 있는지 고민했다. 매우 힘들기는 했지만 다른 것을 제치고 내 관심사를 따른 선택은 결국에는 옳았다”라고 그는 말했다.
기술과 자격증
햄린은 파이썬을 꼭 배워야 하는 것은 아니지만 “통계학 학위를 보완하는 차원에서 실력 있는 프로그래머가 되고 싶었다”라고 설명했다. 이어서 그는 “파이썬으로 프로그래밍하는 방법을 배운 덕분에 기회가 많이 열렸다. 또한 분석, 통계 또는 머신러닝 프로젝트를 시작하기에 앞서 소프트웨어 엔지니어처럼 생각하는 방법도 알 수 있었다”라고 전했다.
결론적으로 소프트웨어 엔지니어링에 투자한 시간은 햄린에게 큰 도움이 됐다. 더욱 효율적인 솔루션을 제공하는 데 있어서 탁월한 역량을 발휘할 수 있었기 때문이다. 그는 “머신러닝 엔지니어라면 머신러닝 시스템을 생산 소프트웨어 환경에 맞게 확장하는 법을 아는 것이 기본인데, 파이썬을 먼저 배우지 않았더라면 그렇게 할 수 없었을 것”이라고 말했다.
중단기 목표
햄린은 사이버보안 분야에 대한 개인적 관심이 커지고 있다고 밝혔다. 그는 “우리 사회의 디지털화가 지속되고 AI가 점점 더 널리 확산되고 보편화되면서 사이버 보안의 중요성이 계속 커지게 될 것”이라고 전망했다.
또한 햄린은 일을 시작한 지 거의 9년이 지난 지금도 여전히 소프트웨어 개발을 하고 있다고 말했다. 그는 “물론 9년 내내 소프트웨어 개발을 한 것은 아니지만 최근 웹사이트 구축 팀에게 빠른 시각적 피드백을 줄 수 있는 제품을 만들었다”라면서, “볼리(Volley)라고 하는 제품이다. 나의 장기적인 목표 가운데 하나가 바로 나만의 지속 가능한 비즈니스를 하는 것이다”라고 밝혔다.
조언
마지막으로 햄린은 “모든 것을 자동화하라”고 조언했다. 그는 “프로그래밍으로 쌓은 실전 경험 중 많은 부분이 몇 번 이상 해야 했던 작업을 죄다 프로그래밍하려고 시도하던 과정을 통해 얻은 것이다. 아무리 사소한 작업이라도 여러 하위 작업과 시스템을 연결하고 사용해야 한다는 것을 알게 됐다”라고 설명했다.
이러한 자동화 시도를 통해 햄린은 코드가 빨리 지저분해질 수 있다는 것과 적절한 정리 및 설계 패턴에 대해 더 자세히 배울 필요가 있다는 것을 깨닫게 됐다. ciokr@idg.co.kr