Who? We are Machine Learning Team of wanted!

 

Who?

Machine Learning TEAM

원티드에서 이공계열과 브레인을 맡고 있는 머신러닝팀입니다.

 

 

 

 

 

 

 

(머신러닝팀 TMI: 프로젝트마다 키보드를 바꿔서 작업하는 키보드 덕후들이 많다고 합니다)

 

 

 

원티드 최신상팀 여러분. 어떤 일하고 있는지 말씀 주시면서 시작하시죠!


Ross 앱 팀으로 인터뷰한 지 얼마 안 된 것 같은데 또 하려니 뭔가 쑥스럽군요? 저는 각종 데이터로 예측, 분류 등을 하고 관련 데모 기능과 제품을 만들고 있습니다.

Ji 출근하면 원티드 머신러닝팀의 상징인 레쓰비를 마시며 하루를 시작합니다. 머신러닝으로 학습된 결과물을 통해 서비스 자체나 서비스 운영에 도움 되는 엔지니어링 활동을 하고 있습니다.

ino 원티드 서비스에 접목할 수 있는 인공지능 기술을 리서치합니다. 주로 텍스트, 음성 관련 인공지능 기술을 리서치 하고 있습니다.

HC 안녕하세요! 딥러닝을 활용해 원티드가 가진 데이터로 정보를 만들어내는 일을 하고 있습니다. 지금은 텍스트를 대상으로 한 모델에 초점을 맞추고 있고 향후 음성이나 다른 분야의 데이터들도 활용 대상으로 보고 있습니다.


(레쓰비 이모지도 있고)

(팀 컨플루언스 대문마저...)

 

 

원티드 머신러닝을 모델들을 개발하는 고오급 툴이나 기술에 대해


Ji 저는 만들어진 모델을 활용하는 휴먼이라 Flask 서버를 띄우는 PyCharm 고오급 버전, React 클라이언트를 만드는 VSCode, Flutter 클라이언트를 만드는 Android Studio를 씁니다. 머신러닝은 배워가는 중이라 아직 많이 부족하지만 keras, scikit-learn을 사용하며 AWS sagemaker, lambda, ECR 같은 지원도구도 종종 쓰곤 합니다.

Ji 고오급진 툴과 기술은 다음 분이 더 잘 알려주실 거예요.

Ross 고급은 아니고 (…)

Ross 그냥 일반적으로 많이들 쓰시는 Tensorflow, Pytorch, Keras, Scikit learn 등을 사용하고 있습니다. 데모 개발에는 Python/ Flask/ SQLAlchemy, Javascript, React/Redux, Dart/ Flutter 등을 사용, DB는 mysql, aws aurora 등을 쓰고 있습니다.

ino TensorFlow, PyTroch 등을 상황에 맞게 쓰고 있습니다. 다른 도구들은 위에서 언급해 주시는 걸 쓰고요.

HC 머신러닝 분야에서는 일반적으로 다들 언급하셨던 Python, tensorflow, pytorch, Keras 등을 사용하시는 것 같습니다.

HC IDE는 pycharm을 사용하고 있고 Docker를 매우 사랑합니다. 저같이 환경 잡는 것이 어렵고 귀찮은 사람한테 Docker는 매우 매우 좋은 툴입니다.

HC 사실 머신러닝이라는 게 너무 빨리 바뀌는 분야라 필요에 따라 커뮤니티가 활성화된 툴을 계속 쫓아가는 게 중요한 것 같아요.

 

(그만 알아보자 (이미지=구글))

 

 

현재 원티드에서 머신러닝을 적용한 부분과 곧 적용될 부분은?


Ji 선택받은 자들만 볼 수 있다는 포지션별 매칭 점수 표시 기능. 선택받지 못한 기분이 든다면 이력서를 업데이트해봅시다!

Ross 이건 좀 옛날 모델이라 조만간 갱신됩니다.

Ji 기업용 서비스에도 활용할 게 많은데 아직 정확도가 높지 않아 열심히 키우는 중입니다.

ino 각 서비스의 베이스가 되는 Language Model을 학습하고 튜닝하는 작업을 하고 있는데 이를 기반으로 여러 가지 서비스가 나올 것 같습니다. 그리고 음성인식 관련 연구도 병행하고 있어서 음성인식 관련 서비스도 출시되지 않을까 기대해보고 있어요.

HC 입사한 지 얼마 안 되었지만 지금까지 많은 시간을 쏟은 것이 Language model을 학습시키는 것이었어요. 이 모델은 다양한 텍스트 데이터를 이해하고 처리할 수 있는 베이스가 되는 모델입니다. 가볍게 돌릴 수 있는 모델 학습에 관심을 두고 있어요.

 

(포지션 별 매칭 점수 표시 기능. 이 포지션에 지원했을 때 내가 서류 통과할 확률을 보여준다)

 

 

구인·구직이라는 분야에서 머신러닝을 접목하기 위해 고난과 역경의 시간이 있었을 것 같아요.


ino ‘인공지능 기술을 어떻게 원티드 서비스에 잘 녹여내 유저에게 유의미한 기능을 제공할 수 있을까?’

ino 이 고민에 대한 끊임없는 질문과 답을 찾아가는 과정이었죠.

ino 원티드에는 다양한 형태의 데이터가 존재하므로 데이터 전처리에 많은 시간과 공을 들였습니다. 머신러닝, 딥러닝 모델을 잘 학습시키기 위한 아주 중요한 과정이기 때문인데요. 정형 데이터의 스케일링은 어떻게 할 것인가, 텍스트 같은 비정형 데이터의 경우 자연어 처리는 어떻게 하는 게 효율적인가 등등.

ino 그리고 이런 다양한 데이터를 융합해 모델에 어떻게 적용할 것인가에 대한 로직을 만드는데 많은 고민이 있었습니다.

ino 서류 합격 예측 모델(=포지션별 매칭 점수)의 경우 굉장히 도전적인 태스크였습니다. 순전히 인공지능 모델을 이용한 서류 통과율 예측 모델이나 적용 사례는 국내는 물론 해외 사례도 찾기 힘들어 리서치하는데 굉장히 힘들었던 기억이 나네요 (아련)

ino 수많은 논문을 연구해 모델에 적용하는 과정을 수없이 반복하여 모델을 구축하였습니다.

Ross 초기에는 Reagan 님이 고생해주셨는데…

Reagan (입장)

Reagan 원티드 초기인 2016년에는 머신러닝 불모지와 다름없는 상태였습니다. 데이터 사이언스, 딥러닝 사내 스터디부터 시작해서 여기까지 왔네요.

Reagan 서류 합격 예측 모델(=포지션별 매칭 점수) 하나를 제대로 만들기 위해 2년 넘게 연구를 지속해 왔어요. 이제 3년이 되어 가네요 (아련)

Reagan 대기업에서 머신러닝에 대대적인 투자와 인재 유치를 하는 와중에 어떻게든 전문 인력을 채용하기 위해 밋업도 개최하고, 외부에 가서 사례 발표도 하고, 직접 이직 제안도 해보고, 최종 면접과 처우 협의까지 했으나 다른 회사로 이직하여 채용하지 못하고

Reagan ㅜㅜ

Reagan 그 와중에 고군분투하신 B 님(원티드 1호 머신러닝 엔지니어로 현재는 이직). 그 뒤를 이은 ino 님. ino 님이 떠나고 풀타임 머신러닝 엔지니어로 보직 변경하신 Ross 님 고군분투.

Reagan 머신러닝팀 안정화를 위해 팀부터 만든 뒤 사내 직무 변경으로 인원 늘리고, 합격했는데 다른 회사 가신 분이나 떠나신 ino 님 잘 지내는지 2개월마다 안부 연락드리고…

Reagan ㅜㅜ…

Reagan (퇴장)

글쓴이 지금은 팀까지 구축되었으니 정말 뿌듯하시겠군요.

 

 

앞서 Reagan 님이 말씀하셨듯 Ross 님과 Ji 님은 올해 직무 변경이 있었어요. 머신러닝으로의 직무 변경 이유? (두 분 모두 앱팀에서 머신러닝 팀으로 이동)


ino 우왕 (원티드 2호 머신러닝 엔지니어, 원티드 복귀 1개월 차)

Ross 몇 년 전 딥러닝 붐이 일면서 궁금증 차원에서 재미로 공부를 시작했는데 공부할수록 매력적이고 신기한 것들이 많더라고요. 우연히 직무 변경 기회가 생겨서 팀을 옮기게 되었습니다.

Ji 앱 팀에서도 행복했지만, 앱 외에도 더 다양한 분야의 개발을 해보고 싶었습니다. 머신러닝 모델을 활용하는 프로토타입을 만들거나 제품화 시키는 데에 저의 잡지식이 큰 보탬이 될 수 있을 거라는 Ross 님의 꼬드김에 넘어가 버렸죠.

Ji 아직 머신러닝 쪽 지식은 머글에 가깝지만, 팀에서 제가 할 수 있는 일이 많아서 기쁩니다. 이렇게 직무 변경을 할 수 있게 해준 회사에도 감사하는 마음이 큽니다.

HC 개발 고수님들과 같은 팀이 되어 행복합니다. (신규 입사자, 철학 전공)

HC ❤︎

 

 

머신러닝의 매력은 무엇입니까?


Ross 데이터만 충분히 있다면 상상 이상으로 예측을 잘한다는 점

Ross 하루가 다르게 기술이 발전해 몇 달 전 기술은 구닥다리가 되어버리는 최첨단 기술을 사용한다는 점

Ross 다양한 아이디어를 적용하고 실험해보기 좋다는 점

Ross 데이터&통계의 신비함 같은 것 등이 있습니다.

ino 여러 가지 도메인의 데이터로 아주 다양한 서비스를 고안하고 실현할 수 있다는 것이 가장 큰 매력이지 않나 싶네요.

ino 그리고 인고의 시간 끝에 찾아오는 고통 혹은 희열…

HC 저는 출근 혹은 잠에서 깨어나면 전날 돌려놓은 모델이 잘 자라고 있는지 확인하는 것부터 시작해요. (=직업병)

Ji 기계 키우기. 반려동물 같은 느낌. 데이터만 잘 먹여주면 놀라운 결과물을 내어주는 마법사 같은 녀석(´・ω・`)

HC 예상이나 의도와 다르게 이 녀석의 성장이 퇴화하고 있거나 더는 성장하지 않고 있으면 그날 최우선 업무가 그 이유를 찾아내는 것으로 바뀌어버립니다! 반대로 의도대로 잘 성장하고 있으면 너무너무 뿌듯하고 자라나는 모습을 지켜보고요!

 

(이런 거...? (이미지=YTN))

 

 

원티드에서 머신러닝 엔지니어로 일하는 것의 장점은 무엇이 있습니까?


Ji 그것은 바로 Ross 님과 일한다는 것입니다. 함께 일하며 정말 많이 배웁니다.

Ross ^^ ;;;

Ji 근무 환경을 보면, 제약 없이 AWS를 활용하게 해주고 공용 딥러닝 워크스테이션과 개인별 장비 지원도 나름 훌륭한 편입니다. 언젠가 TITAN RTX 머신에서 고사양 게임 한번 돌려보고 싶네요.

Ji 하지만 그 머신이 노는 일은 없겠지.

Ross 무엇보다 다른 곳에서 찾아보기 힘든 데이터들을 회사에서 수집, 보유하고 있다는 점이 최고 매력입니다.

Ross 장비는 많으면 많을수록 좋으므로 충분하다고 할 수는 없지만, 회사에서 많이 지원해주고 있으며 관련 서적 구매도 충분히 지원해줍니다.

Ross 자유로운 분위기의 근무 환경도 참 좋습니다. 아이디어를 구현하고 시도해볼 충분한 기회가 주어지는 것도 좋은 것 같네요.

ino 빠방한(?) 장비 지원, 자유로운 연구 분위기 등 연구 여건과 근무 환경이 참으로 좋습니다.

ino 그리고 무엇보다 든든한 팀원들이 있다는 게 가장 좋은 점인 것 같네요 하핫.

HC 원티드 서비스에 맞는 모델을 연구할 수 있어서 좋아요. 머신러닝이 빠르게 발전하고 있고 신기한 모델들이 많이 나오고 있지만, 이를 실제로 어떻게 적용할지가 많은 회사의 고민거리거든요. 이게 잘 안 잡히면 ‘그냥 뭔가 만들어와!’ 이렇게 요구가 내려와 막연합니다. 이 부분을 같이 상의하고 고민할 수 있는 팀이 있어서 좋아요.

 

(TITAN RTX 머신. 원티드에서 가장 비싼 장비로 수냉식임)

 

 

지금 원티드에서 행복하신가요?


Ji 힘들었던 시간도 있었지만, 지금의 업무 만족도는 아주 높습니다 데헷 (*ૂ❛ัᴗ❛ั*ૂ)

Ross 지금의 업무 만족도는 매우 높습니다.

HC 저도 ㅋㅋ 원티드 분위기 좋아요!

ino 돌아오는덴 다 이유가 있지요.

글쓴이 여기서 잠깐! ino 님의 연어설 공개 가능합니까?

ino ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

글쓴이 어쩌다 원티드로 다시 돌아오시게 되신 거죠.

ino 탑다운 없는 나름 바텀업의 문화. 그리고 원티드 좋잖아요.

 

*연어설: 연어는 강에서 태어나 바다에서 살다가 다시 강을 거슬러 올라와 상류에서 알을 낳는 회유성 어종이다. 이 독특한 회유 습성으로 인해 떠났다가 돌아오는 것을 비유하여 사용되기도 한다.

 

 

봄이 어디 있는지 짚신이 닳도록 돌아다녔건만, 돌아와 보니 봄은 우리 집 매화나무 가지에 걸려 있었다.

– 연어 소개사, 원티드 마케터로부터

 


(돌아온 ino 님을 품에 안은 원티드★)
(이런 건 아닙니다)
(ino 님 복귀하실 때 신난 원티드 사람들 (이미지=https://www.instagram.com/wanted.jobs))

 

 

2020년이 코앞입니다. 내년엔 어떤 일에 집중하실 예정이신가요?


Ji 우리 서비스에서 적용할 수 있는 부분에 자동 변환 모델을 작동시키자. 그 외 아직 엠바고 걸린 것이 많습니다.

Ji 그 와중에 개인적으로는 머신러닝 지식 늘리기.

HC Ji 님과 함께하겠습니다!

Ross 이직, 합격 예측이나 AI 면접 관련 기능 및 도구를 만들자.

ino language model 알차게 만들자.

 

 

 

댓글 달기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다