To view more jobs from this company, please visit their other roles at:
Hinge Roles
Sr. Machine Learning Software Engineer
Hinge (View all Jobs)
Seoul
Interview Process
1. Hiring manager screen 2. Take-home project 3. Discussions via Zoom that include pair-programming to iterate on homework and culture-fit interview
Programming Languages Mentioned
SQL, JavaScript, Java, Python
하이퍼커넥트 Machine Learning Software Engineer (MLSE)는 사람과 사람 사이를 연결하는 서비스에서, 소프트웨어 엔지니어링을 통해 머신러닝 기술을 서비스에 적용하고 사용자 경험을 혁신하는 일을 합니다. 사내 AI 조직에서 만든 영상/음성/문자/추천 등을 포함하여 다양한 도메인의 수많은 모델을 프로덕션에 적용하고, 모바일 및 클라우드 서버를 통해 안정적으로 제공하면서 마주하는 엔지니어링 문제들을 해결하며, 우리가 만들어 내는 기술이 실제 서비스의 성장에 기여하는 것을 목표로 합니다.
이러한 목표 아래 하이퍼커넥트의 ML Software Engineer는 아자르, 하쿠나 등 하이퍼커넥트의 여러 제품들에 기여하는 머신러닝 기술들을 수년간 발전시켜 나가고 있으며, 이렇게 축적된 기술들을 S&P 500 편입사인 매치그룹의 다양한 글로벌 비즈니스 서비스에도 손쉽게 활용하기 위한 기술을 개발하고 있습니다.
ML Software Engineer는 우리가 보유한 모든 AI 기술을 제품에 적용하여 비즈니스 임팩트를 낼 수 있도록 하며, 지속 가능한 시스템을 개발하여 AI 기술의 적용이 가속화 되도록 하는 것을 목표로 합니다. 이 목표를 달성하기 위해 (1) ML 모델 기반의 확장성 있는 백엔드 서버를 개발하며, (2) ML 모델 추론을 위한 실시간 데이터 파이프라인을 개발/운영하고, (3) 다른 팀들과 협업하여 공통으로 관리할 수 있는 ML 컴포넌트를 플랫폼화하는 작업까지 수행합니다. 그 과정에서 다른 직군과도 밀접하게 협업하면서 KPI 달성에 도달하기 위해 필요로 하는 모든 과정(문제 정의, 가설 설정, 실험 설계, 분석 및 피드백)에 참여하며 주도적으로 업무를 진행하고 있습니다. 일하는 모습에 대한 조금 더 자세한 이야기는 다음의 내용을 참고하시면 좋습니다.
업무 환경
[국내 최상위 수준의 AI 조직]
탑티어 AI/ML 학회에 논문을 주기적으로 출판하는 Machine Learning Engineer 및 Machine Learning Research Scientist 들과 함께 일하고 있습니다. 하이퍼커넥트에서 출판한 논문은 여기서 확인해보실 수 있습니다.
[풍부한 MLOps 노하우]
50개 이상의 모델을 프로덕션에서 사용하고 있을 만큼, MLOps에 대한 노하우가 풍부한 조직에서 일할 수 있습니다.
담당 업무
하이퍼커넥트는 제품에 머신러닝 기술을 적용하기 위해 다양한 방면으로 노력하고 있습니다. 하이퍼커넥트의 ML Software Engineer는 크게 다음과 같은 4가지 분야 중 한 가지 이상의 업무를 수행하게 됩니다.
[머신러닝 기반의 백엔드 어플리케이션 설계 및 구현]
하이퍼커넥트와 매치그룹에서 운영 중인 서비스들의 품질을 높이기 위한 다양한 머신러닝 기반의 백엔드 서비스 (FastAPI, Spring)를 개발합니다. 글로벌 스케일에서 실시간 동작이 가능하도록 성능 관점에서의 많은 고민과 함께 설계되고 있으며, 팀에서 운영 중인 마이크로서비스들은 전사 내에서도 가장 높은 수준의 트래픽을 처리하고 있습니다.
• 개인화 추천 시스템 및 검색 시스템 (Azar, Hakuna, 매치그룹 내의 서비스들)
• 지속적으로 모델을 개선하는 AI Flywheel 시스템 개발
• Trust & Safety를 위한 모더레이션 시스템 및 플랫폼 개발
• 영상, 음성 및 자연어 등의 비정형 데이터를 해석 가능한 형태로 변환해 주는 사내 API 서버
[모델 추론을 위한 실시간 데이터 파이프라인 개발]
실시간 이벤트를 가공하여 모델 추론에 활용할 수 있게 하는 파이프라인(Apache Flink, KSQL)을 개발합니다. 피쳐를 빠르고 안정적으로 수집, 가공, 서빙하기 위한 시스템(ex. streaming application, feature store)을 고민하고 설계합니다. 때로는 파이프라인 개발 과정에서 모델 성능을 향상시키는 피쳐를 선제적으로 발굴하기도 합니다.
[머신러닝 기능이 탑재된 클라이언트 SDK 개발]
하이퍼커넥트와 매치그룹의 모바일 어플리케이션에 탑재되는 머신러닝 SDK를 개발하고 운영합니다. 하이퍼커넥트에서 개발하는 SDK는 전 세계 각지에서 사용되는 수많은 디바이스에서 동작할 수 있어야 하기에, 매우 높은 안정성을 목표로 하며 개발되고 있습니다. 더불어 최고 성능의 머신러닝 API를 제공하기 위해 지속적으로 업데이트될 수 있어야 하며, 이를 위해 Scalable 한 백엔드 플랫폼도 함께 개발하고 있습니다.
[머신러닝 기반의 신규 서비스 PoC]
하이퍼커넥트는 제품에 기여하는 다양한 머신러닝 기술을 연구 및 개발하고 있습니다. 사내에서 개발된 새로운 머신러닝 모델의 비즈니스 임팩트를 측정하기 위해서는 Proof of Concept(PoC)가 필요한 경우가 많은데, MLSE는 PoC 프로덕트를 개발하는 역할을 하기도 합니다. PoC 프로덕트 개발을 통해 개발 사이클을 짧게 줄이고 더 많은 이터레이션을 돌게 함으로써, 모델 개선이 더 빠르게 이뤄지도록 합니다.
Sr. Machine Learning Software Engineer는,
위 4가지 업무 이외에도 다양한 기술 프로젝트를 리딩하고 비즈니스 지표를 상승시키기 위한 작업들을 수행합니다. Sr. MLSE는 팀의 시니어로서 퀄리티 높은 코드 리뷰, 페어 프로그래밍, 확장성 있는 시스템 설계, 팀에 모범이 되는 기술 문서 작성, 안정성을 위한 모니터링 시스템 구축하는 등의 작업에 책임이 있습니다. 이 밖에도, 팀의 소프트웨어 엔지니어링 역량을 한층 끌어올리기 위한 다양한 작업을 제안하고 수행합니다.
Sr. MLSE는 엔지니어링 작업 이외에도 회사의 성장을 위해 다양한 역할을 수행합니다. Cross-team 프로젝트에 참여하면서 다양한 팀의 구성원들과 커뮤니케이션하여 프로젝트의 성공을 이끌어 나갑니다. 팀의 주니어 엔지니어들이 성장할 수 있도록 다양한 방면으로 고민하고 기여하는 것 또한 Sr. MLSE의 중요한 역할 중 하나입니다.
하이퍼커넥트가 채용하는 포지션에 지원하는 경우, 개인정보 처리에 관하여서는 본 개인정보처리방침이 적용됩니다: https://career.hyperconnect.com/privacy
Please mention No Whiteboard if you apply!
I'm a one-man team looking to improve tech interviews, and could use any support! 😄
Get weekly alerts of new jobs from companies not using whiteboard interviews!