(앞으로 10년안에) 머신러닝 엔지니어의 종말

학습 차원에서 틈틈이 해외 전문가들이 블로그나 미디어 그리고 책에서 쓴 글을 정리하고 있습니다. 이번 포스팅도 그중 하나고요. 거칠고 오역된 부분이 있을 수 있습니다. 제대로 번역되지 않은 부분은 확인주시면 반영토록 하겠습니다. 이번 글은 루케 포세이 Spawner.ai 창업자가 미디엄에 쓴 글을 정리한 것입니다. 시간이 가면서 머신러닝 엔지니어의 역할인 일반적인 소프트웨어 엔지니어와 가깝게 바뀔 것이란데 초점을 맞추고 있습니다.

 프라이스매틱랩스에서 이더리움2.0 관련 기술을 개발하고 있는 이반 마르티네즈가 미디엄 블로그에 이더리움2.0에서 적용될 변화들을 대해 소개한 것입니다.

머신러닝은 모든 소프트웨어 엔지니어들이 쓰는 툴킷들 중에서 흔한 존재로 바뀔 것이다.

초기 단계에서 특별한 역할을 하는 모든 영역은 시간이 가면서 흔한 역할로 대체된다. 머신러닝은 또 다른 케이스처럼 보인다.

분석해보자.

역할로서의 머신러닝 엔지니어는 기업에서 AI나 데이터 사이언스 같은 버즈워드에 기름을 부은 광풍의 결과다. 초창기, 머신러닝은 필요한 역할이었다. 그러나 머신러닝 엔지니어들은 당신이 누구에게 묻느냐에 따라 다양한 개성들을 취했다.

우리들 중 순수 주의자들은 머신러닝 엔니지어는 실힘실에서 모델을 가져와 프로덕션(production)으로 가져가는 사람이라고 말한다.

머신러닝 엔지니어들은 머신러닝 시스템을 확장한다. 레퍼런스로 구현된 것을 프로덕션 레디(production-ready) 소프트웨어로 바꾼다. 종종 머신러닝 엔지니어는 데이터 엔지니어링과 크로스오버가 있다. 머신러닝 엔지니어들은 전형적으로 그들이 작업하는 모델들에 대한 기반 지식 또한 가진 강한 프로그래머들이다.

그러나 이것은 일반적인 소프트웨어 엔지니어처럼 보인다.

일부 톱 테크 기업들에게 머신러닝 엔지니어들이 어떤 의미인지 물어보라. 10가지 다른 대답을  10명의 조사 참가자들로부터 얻을 것이다. 이것은 놀라운 일은 아니다. 머신러닝 엔지니어는 상대적으로 새로운 역할이다. 이들 직업을 포스팅하는 이들은 수십여녀난 머신러닝 분야를 이해하기 위한 시간을 갖지 못한 매니저들이다.

일부 톱 테크 회사들이 올리는 구인 공공에서 볼 수 있는 몇몇 요구사항들이다. 이것들이 얼마나 다른지 주목하라.

첫번째는 약간 충격적이다. 이게 연구원이 아니라고 확신하나? 어떻게 이게 머신러닝 엔지니어인가?

수학, 통계, 박사학위. 오퍼레이션 리서치(수학적 분석 방법을 이용한 경영 관리, 군사 작전, 정책 등의 효과적 실행 방법의 분석 연구), R에 대한 지식, SQL, 모던 머신러닝 기술들 보유.

다음은 머신러닝이라는 브랜드 이미지에 들어 맞는다.

컴퓨터 과학 분야 BS 또는 MS. 소프트웨어 개발 분야에서 1~5년 실제 경력 및 학제 경험.  컴퓨터 비전, NLP, 기타 부문도 접한자.

그리고 마침내  정형화된 ML 엔지니어 포스팅이다.

컴퓨터 과학에서 BS/MS. 3년 이상  프로덕션 머신러닝 시스템 빌딩. 효과적인 코드, 빅데이터 등 경험자.

일부 회사들은 새로운 잡근을 시작했다. 나는 대부분이 이걸 따를 것이라고 생각한다. 이 접근은 핵심 요구사항으로 머신러닝에 노출된 경험이 있는 소프트웨어 엔지니어링 역할을 리스트하는 것이다. 몇년간의 경험에 우선 자격을 부여한다. 고용주들은, 머신러닝이든 일부 다른 기술 기반이든 상관없이  시스템을 개발하고 확장해 본 경험이 있는 엔지니어들을 선호할 것이다.

머신러닝 이해가 어렵고 높은 진입장벽이 있는한 머신러닝 엔지니어는 반드시 필요하다.

나의 진심 어린 생각은 머신러닝 엔지니어가 하는 역할은 일반적인 소프트웨어 엔지니어 의해 완전히 접수된다는 것이다. 머신러닝 엔지니어하는 표준 엔지니어 역할로 바뀔 것이다. 엔지니어들이 상류 누군가로부터 스펙이나 레퍼런스 구현을 얻을 수 있고 그것을 프로덕션 코드로 바꾸고 출하하고 애플리케이션을 확장하는 표준 엔지니어링으로 전환될 것이다.

당분간 머신러닝 역할에서 많은 것들은 우리가 머신러닝으로 전에는 대처하지 못했던 문제들에 대처하는 지금의 기묘한 공간에서 존재한다.(For now, much of many Machine Learning roles exist in this weird space where we’re attacking problems with ML that just haven’t been attacked before.)  결과적으로 머신러닝 엔지니어들은 많은 경우 절반은 연구자, 절반은 엔지니어다. 나는 전체 스택을 다루는 머신러닝 엔지니어의 상당한 비중을 보았다. 좁은 스킬셋을 갖고 연구 논문을 읽는데 보다 많은 시간을 보내며, 이것들을 사용할 수 있는 코드로 바꾸는 이들도 보았다.

우리는 우리 팀 멤버들은 퍼즐의 어디 부분에 들어가는지 정의하는 기묘한 교차로에 서 있다.

우리가 작업하는 방법의 결과로 우리는 스스로를 논쟁에 밀어넣고 우리 전문성에 이것이 핵심인지 무관하게 미팅에 앉아 있고는 한다. 머신러닝 엔지니어는 레퍼런스 구현체 개발의 가장 끝에 속하며, 그것을 프로덕션 코드로 바꾼 뒤 소유한다는 것이 나의 생각이다.

조만간 모든 기업들은 그들의 프로젝트가 목표 지점에 이르도록 하기 위한 연구에 노력을 기울일 필요가 거의 없을 것이다. 틈새 유스 케이스와 깊은 기술적인 노력들에만 특별한 스킬셋이 필요할 것이다.

엔지니어들은 API를 소비할 것이다. 세계는 계속 움직일 것이다. 머신러닝은 모든 새 엔지니어들의 툴킷에서 아주 흔한 도구가 될 것이다. 우리는 머신러닝 기술들이 대학에 점점 노출되면서 이것을 이미 보고 있다.

도구가 될 것이다. 모든 새로운 엔지니어의 툴깃에서. 우리는 이미, 이것을 보고 있따. 점점더 머신러닝 도구에 눛로되고 있다. 대학으로. 대학 머신러닝 코스를 보라. 거의 대부분의 졸업생들은 머신러닝에 일부 경험을 갖고 대학을 떠날 것이다.

이것은 열기가 달아올랐던 블록체인과도 비유할 수 있다. 나카모토 백서 이후 블록체인 프로젝트들 다수가 기반 기술과 인프라 개발에 노력을 쏟아부었다. 이를 위해 당신은 상당히 강력한 엔지니어링 스킬을 갖고 있어야 했다.  이 같은 역량은 종종 분산 시스템 엔지니어로 묘사됐다. 당신은 마침내  일들이 추상화되는 변화를 보고 있다. 엔터프라이즈들은 유스 케이스들을 찾기 시작했다. 엔지니어들은 이제 블록체인을 사용해 새로운 유스케이스들을 개발할 수 있다. 우리는 같은 전반적인 전환을 인공지능/머신러닝에서도 보고 있다.

유효한 체크 포인트

모든 것을 지배하는 하나의 API라는 실리콘밸리 테마는 거짓일 가능성이 있다. 머신러닝은 인프라 레벨에선 항상 어느 정도 최적화 수준을 요구할 것이다. 허깅페이스(HuggingFace:  NLP계에서 표준)는 NLP라는 것은 모든 다른 도메인에서 일어날것이다. 간단한 API로 대다수 유스 케이스들을 정복할 수 있을 것이란게 나의 생각이다.

그것은 단지 타이틀이다. 머신러닝 엔지니어는 단지 평균적인 컴퓨터 과학 졸업자보다 수학과 통계에서 좀더 많은 백그라운드를 가진 누군가를 의미한다. 완전히 동의한다. 그것은 단지 타이틀이다. 역할이 더 이상 필요하지 않은데, 타이틀은 존재감이 있을까? 당신이 많다. 그것은 단지 타이틀이다.

테크잇 뉴스레터를 전해드립니다!

오피니언 기반 테크 블로그 'TechIt'
테크 비즈니스를 보는 다양한 통찰들을 이메일로 간편하게 받아 볼 수 있습니다.

About the author

endgame
endgame

테크 블로거 / 공유할만한 글로벌 테크 소식들 틈틈히 전달하겠습니다

No more pages to load


TechIT

테크 비즈니스를 보는 다양한 통찰 '테크잇'

독자 여러분들께서 좋은 의견이나 문의 사항이 있으시면 아래 양식에 따라 문의 주시기 바랍니다.

Contact