멘토지원
파트너스
현직자 클래스
멘토 찾기
Best 질문답변
머신러닝 개발자를 준비한다면, 이렇게 해보세요
네이버 · 검색시스템
약 5년 전
💬 멘티의 질문
멘토님, 안녕하세요. 저는 한 스타트업에서 백엔드 개발자로 약 2년간 일한 경험이 있는데요. 현재는 머신러닝에 관심이 생겨 해당 직군 쪽으로 이직을 알아보고 있습니다.


Ⓒronstik

 
이직을 준비하기 위해서 지금은 개인적으로 머신러닝과 관련된 온라인 강좌를 찾아보고, 수업 내용을 로컬에서 *Notebook으로 만들어 실행하는 등 학습을 하고 있습니다. 그런데 더 무엇을 준비해야 할지 감이 오질 않아 고민입니다. *캐글에서 문제를 풀거나 개인 프로젝트를 진행해 봐야 할까요?
 
멘토님의 조언 부탁드립니다. 감사합니다.
 


*Notebook : Jupyter Notebook. 대화형으로 프로그래밍 언어를 공부하고 실습해 볼 수 있도록 만들어진 개발/학습 환경

*캐글 : 캐글(Kaggle)은 2010년 설립된 예측 모델 및 분석 대회 플랫폼이다. 기업 및 단체에서 데이터와 해결과제를 등록하면, 데이터 과학자들이 이를 해결하는 모델을 개발하고 경쟁한다.

💬 이세린 멘토의 답변

멘티님, 안녕하세요? 머신러닝 분야의 개발 직군으로 이직을 준비 중이시군요.
 
사실 저도 처음부터 머신러닝 분야를 알았던 것은 아니에요. 원래 전공은 빅데이터 처리와 관련이 높은 데이터마이닝 알고리즘이었거든요. 그런데 제가 취업할 당시에는 머신러닝 분야가 그렇게 흔하지 않았기 때문에, 분야가 달라도 머신러닝과 관련된 팀에서 일을 시작하게 됐던 것 같아요.


ⒸREDPIXEL.PL

 

백엔드 개발 경력은 큰 장점이에요

하지만 요즘은 머신러닝 분야가 매우 많아지다 보니 많은 회사와 팀에서 이 분야의 석사 이상의 학력을 선호하는 것 같아요. 아무래도 학부 수준에서는 머신러닝을 깊이 배우지 못하기 때문이겠죠.
 
이런 상황에서 멘티님이 어필하실 수 있는 부분은 백엔드 개발 경력과 머신러닝에 대한 이해와 관심도인데요. 그중에서 백엔드 개발 경력은 매우 큰 장점이 될 수 있어요. 어느 회사를 가더라도 개발을 할 수 있고, 기초 네트워크, 데이터베이스 등의 지식을 갖추고 있다는 이야기이니까요. 또 현재 대부분의 서비스에는 백엔드 개발이 필요하기도 하죠.
 

개인 프로젝트를 해서 깃허브에 올려 보세요

그리고 두 번째 어필 포인트인 머신러닝에 대한 이해와 관심도는 멘티님께서 말씀하신 대로 온라인 강좌를 듣고 notebook으로 프로그램을 실행시켜 보면서 그 정도를 향상시킬 수 있어요.
 
여기서 더 나아가 개인 프로젝트를 해본다면 이직 시 어필하시기 좋을 거예요. 예를 들어 작은 꽃 검색 앱을 만들 수도 있고요. 글을 요약해 주는 웹 시스템을 만들거나, 자동으로 답장하는 채팅 프로그램을 만들 수도 있겠죠.


Ⓒfreepik

 
또 이런 개인 프로젝트를 깃허브(github)에 올리는 것도 좋은 방법인데요. 자소서에 해당 *레파지토리의 주소를 기입하면 어느 정도의 프로그래밍인지도 보여줄 수 있고, 어느 정도로 관심이 있는지도 드러낼 수 있을 거예요. 그리고 멘티님이 질문에서 언급하신 notebook을 깃허브에 올려도 좋을 것 같아요.
 
혹시 머신러닝 쪽으로 좀 더 잘 아는 지인이 있다면 함께 프로젝트를 하셔도 됩니다. 그 과정에서 많은 것도 배우실 수 있을 거예요.
 

도움이 될만한 강의와 사이트

참고로 도움이 될만한 강의와 소스를 몇 가지 공유해 드릴게요.
 
1. Coursera의 Machine learning 강의 : Andrew Ng 교수님이 머신러닝 입문 강의로 유명합니다. (www.coursera.org)

2. 모두를 위한 머신러닝/딥러닝 강의 : 한국말 동영상 강의라서 아마도 국내에서 가장 유명한 딥러닝 강의가 아닐까 생각됩니다. (http://hunkim.github.io/ml/)

3. 깃허브 Kiho Hong 페이지 : 가르치는 것을 잘하시는 분으로 각종 논문과 책 정리한 곳입니다. (http://norman3.github.io/)

4. reddit의 ml 게시판 : 머신러닝의 트렌드와 인기도를 알 수 있는 사이트로 많은 수의 투표를 받은 글은 어느 정도 믿으셔도 됩니다. 들어가 보시고 자료를 보는 습관을 들이시면 이 분야의 흐름과 신기술을 빨리 파악하실 수 있을 거예요. (https://www.reddit.com/r/MachineLearning/)
 
이 외에도 검색하면 정말 많은 유튜브 강의와 자료, 블로그가 있으니 잘 맞는 매체를 정해서 준비하시면 좋을 것 같아요.
 

Ⓒyanalya


그리고 한 가지 더 말씀드리면, 아마도 실습하신 것이 tensorflow, caffe2, torch 등 라이브러리일 텐데요. 제가 일하고 있는 팀은 이 중에서 tensorflow를 가장 많이 사용하고 있어요.
 
무엇을 사용하든 크게 상관은 없지만, 한 가지를 정해서 오픈소스를 보는 공부 방법이 큰 도움이 될 거예요. 또 여러 라이브러리들을 사용하면서 비교해 보는 것도 준비하시는 데 도움이 될 것 같네요.
 

머신러닝과 딥러닝, 이제는 기본 기술이 되었어요

끝으로 제가 다니고 있는 N 사의 경우 실제로 거의 대부분의 팀이 머신러닝 중 딥러닝 기술을 서비스에 포함하고 있다는 이야기를 드리고 싶어요. 그만큼 이제 이 분야는 어떤 특수한 분야라기보다 개발자라면 어느 정도 알고 있어야 하는 기본 기술이 되었다는 생각이 듭니다.
 

Ⓒfreepik


따라서 이번 기회에 깊이 공부해 보시는 것이 커리어에 도움이 될 것 같아요. 이렇게 많이 사용되는 만큼 딥러닝을 연구하고 코어를 개발하는 개발자에게 원하는 수준도 매우 높아지고 있으니까요.
 
그렇다고 해서 낙심하실 필요는 없어요. 딥러닝 기술을 이용한 서비스를 만드는 팀에서는 백엔드 개발을 하면서도 딥러닝 기술을 접하고 응용해 보실 수 있을 테니까요. 그런 팀 입장이라면 머신러닝을 이해하고 다룰 수 있으면서 백엔드 개발자이기도 했던 멘티님이 꼭 필요한 인재가 될 수도 있어요.
 
정말 딥러닝 기술 개발을 원하시는 것이라면 철저한 준비와 조사가 더욱 필요하겠지만, 그 정도가 아니라면 지금부터 조금씩 지원해보면서 멘티님의 이런 장점들을 어필하시면, 비교적 빠른 시간 안에 좋은 결과가 있지 않을까 생각됩니다.
 
나중에라도 궁금하신 것이 있다면 언제든 편하게 다시 질문해 주세요. 멘티님을 응원합니다!
 


*레파지토리 : repository. 데이터 집합체가 보관되고 조직적인 방식으로 유지되는 컴퓨터 저장 장치 내의 주요 장소.

이세린 멘토
네이버 · 검색시스템
IT개발/데이터
이미지 검색 팀에서 일하고 있습니다.
개발자
같은 직무를 다룬 글
IT개발/데이터
약 4년 전
IT개발/데이터
약 3년 전
인기 있는 글
연구/설계
약 5년 전
잇다의 멤버가 되어주세요 🚀
직무, 취업 콘텐츠를 담은   뉴스레터를 받아볼 수 있어요.
멘토에게 직접   질문할 수 있어요.
현직자 클래스를 무료로 수강할 수 있어요.