“복잡할수록 Back to the Basic, 사용자를 생각하는 인터페이스를 만듭니다” — MLOps제품화팀 프론트엔드 개발 리드 신현석 님

Hyelim Jung
We’re Team MakinaRocks!
13 min readJan 16, 2023

--

출퇴근길의 동반자 포털 뉴스, 친구들과 일상을 나누는 SNS, 쇼핑몰의 길찾기를 돕는 사이니지까지. 이 모든 온라인 서비스가 선보이기 위해서는 프론트엔드 엔지니어의 마지막 손길을 거쳐야 합니다. 이 때문에 프론트엔드 엔지니어는 온라인 기반 비즈니스에서 빼놓을 수 없는 직무입니다. 백엔드에서 나오는 데이터의 입출력이 서비스로 구현되는 로직과 인터페이스를 개발하는 프론트엔드 엔지니어는 “최종 사용자가 보는 제품의 모든 것”을 개발한다고도 할 수 있습니다.

또한 프론트엔드 엔지니어는 채용시장에서 가장 뜨거운 직군이기도 합니다. 앞서 말했듯 이제 온라인 비즈니스를 하지 않는 곳이 없는데다가 산업의 도메인, 비즈니스 모델 등에 얽매이지 않고 프론트엔드 엔지니어가 필요하기 때문입니다. 직무의 범용성, 높은 채용 수요로 인해 스타트업에서 “실력있는 시니어” 프론트엔드 개발자를 모시는 것은 쉽지 않습니다. 하지만 그 어려운 걸 마키나락스가 해냈습니다(!)

마키나락스 MLOps제품화팀 프론트엔드 개발 리드 신현석 님

그 주인공은 바로 이번 인터뷰에서 소개해드릴 MLOps제품화팀 프론트엔드 개발 리드, 신현석 님입니다. 현석 님은 20년 동안 네이버·카카오 등 빅테크부터 AI 테크 스타트업까지, 다양한 서비스와 제품을 만들어온 “실력있는 시니어” 프론트엔드 엔지니어입니다. 이제는 널리 통용되는 ‘웹 퍼블리셔’라는 개념을 한국에서 처음으로 사용한 장본인이기도 한데요. 20년차 프론트엔드 엔지니어의 커리어, 그리고 마키나락스 프론트엔드 엔지니어가 하는 일이 궁금하다면 지금부터 함께하세요!

마키나락스 블로그 구독자 여러분께 간단한 소개를 해주신다면.

안녕하세요. MLOps제품화팀 프론트엔드 엔지니어 신현석 입니다. 2002년 웹 에이전시에서 커리어를 시작해 웹 디자이너, QA 엔지니어, 퍼블리셔, 디벨로퍼까지 다양한 이름 아래 커리어를 쌓아왔는데요. 결국 하는 일은 다 똑같았어요. 회사와 조직 구성에 따라 이름만 달랐을 뿐 브라우저 위에 올라가는 콘텐츠와 기능을 만드는 ‘웹’에 관한 일을 20년 동안 해왔습니다. 마키나락스에는 ‘프론트 엔지니어’로 올해 6월 조인해 벌써 6개월차가 되었네요.

프론트엔드 파트 리드로 Opera, KT, SK, Kakao, Naver 등 많은 주니어 개발자들이 꿈꾸는 여러 Tech 기업을 거쳐오셨어요. 그동안의 커리어를 조금 더 자세히 들려주세요!

지난 커리어를 돌아보면 특별할 것은 없지만 항상 ‘시대와 맞는 일’을 하는데 중점을 뒀던 거 같아요. 아이폰이 처음 출시됐을 때는 Opera에서 모바일을 위한 브라우저를 만들었고, 모바일 중심 환경으로 넘어갈 때는 SK 플래닛과 KTH에서는 모바일을 위한 웹과 앱을 개발했어요.

다음에 입사해서는 다음카카오, 카카오를 모두 거쳤는데요. (웃음) 그 때는 애자일한 개발 문화에 대한 관심이 높아지던 때였어요. 빠른 사이클로 제품을 만들고, 출시해서 시장을 탭핑하고, 빠르게 개선하는 것이 중요하다는 인식이 생겼었죠. 그 때는 UX팀에 소속돼서 빠른 사이클을 만드는 역할을 중점적으로 수행했어요. 국회의원 총선, 세월호 참사, 삼풍 백화점, 신해철 추모 등 사회적인 이슈를 인터랙티브한 콘텐츠로 구현해 최종 사용자들에게 제공하는 업무를 맡았었는데요. 예를 들면 총선 때는 정책, 경력, 나이 등 후보자들의 많은 정보가 잘 보여지게 구현을 해야 했어요. 실무자들의 업무 효율을 제고하기 위해서 스프레드시트에 정보를 입력하면 사이트에 자동으로 반영되도록 하고 디자이너도 저장소에 애셋과 코드를 커밋 하는 등 모두가 동시에 작업할 수 있는 환경을 구현하려고 많이 노력했던 거 같아요. 다음이 예전엔 ‘미디어’라는 것을 많이 내세웠었는데, 최근에 그 논조를 버린 거 같더라고요. 도메인도 바뀌고. 그 때 가슴이 좀 아팠습니다. (웃음)

네이버랩스와 오드컨셉(Odd Concept)에서는 AI를 직간접적으로 배울 기회가 많았어요. 데이터 사이언티스트와 머신러닝 엔지니어를 대상으로 하는 세미나와 문서들을 보면서 AI를 서비스하는 과정에서 어떤 기술이 필요할지를 배우는 시간들이었죠.

개인적으로 국내 테크 기업 스토리는 많이 접해왔는데, Opera는 조금 생소해요. 그 때의 이야기를 조금 들려주실 수 있을까요?

Opera Software의 한국사무소에 일하며 삼성, SK 등 국내 통신/제조사가 만든 디바이스에 탑재된 Opera의 호환성을 높이는 업무를 맡았었어요. 2010년은 두번째 브라우저 전쟁이 한창이면서 ‘웹 표준’이 대두되던 시기였는데요. 당시 국내 많은 수의 사이트들은 ‘웹 표준’을 잘 따르고 있지 않았어요. Opera는 웹 표준을 중요시 하는 브라우저였지만, 클라이언트에게 “사이트가 웹표준이 아니라서 오류가 난다”고 이야기 할 수는 없잖아요. (웃음) 그래서 한국 사이트들이 표준 브라우저에서 잘 나오도록 패치를 하고, 커스터마이즈를 하고, 품질을 보증해주는 일을 주로 했었습니다.

오페라는 노르웨이 오슬로(Oslo)에 본사를 둔 엔지니어 팀이 굉장히 강한 회사였어요. 당시 CTO였던 호콘 비움 리(Hakon Wium Lie)는 지금 널리 사용되고 있는 CSS를 만든 사람이기도 하고요. 실력이 좋은 동료들이 많아서 굉장히 많이 배웠던 시기 같아요. 지금까지도 좋은 경험으로 남아있고요.

‘웹 퍼블리셔’라는 개념을 우리나라에서 만드셨다고 들었어요. 웹 퍼블리셔라는 말을 어떤 계기로 사용하게 되셨는지, 웹 퍼블리셔와 프론트엔드 엔지니어는 어떤 점이 다른가요?

‘웹 퍼블리셔’라는 개념을 만들었다기보다, 이미 국내에도 존재하던 개념에 이름을 붙였다는 게 맞을 것 같아요. 퍼블리시(publish)라는 단어의 사전적 의미는 ‘출판’이라는 뜻인데, 실제로 이 단어는 MS, Adobe 등에서도 든 웹 저작툴에서도 이미 사용하고 있는 단어였어요. 결국 웹에서의 퍼블리시란 최종적으로 고객에게 보여지는 페이지를 내보내는 작업이라고 할 수 있어요.

이 말을 만들었을 때가 2005년이었는데요. 그때는 주로 HTML로 웹 사이트를 만들고, CSS는 폰트 크기를 조절하는 역할 정도로만 사용되고 있었어요. 당시는 개발자와 디자이너 직군만 있어서 디자이너가 HTML을 만들면 이를 개발자가 받아 ASP, JSP, PHP 등으로 웹 페이지를 구현하는 환경이었어요. 또 JavaScript 기능은 프로그램 언어를 사용하는 서버 개발자가 개발을 하던 시기였거든요. 이렇게 웹 작업을 나눠서 하다보니 업무 효율 측면에서도, 완성도 측면에서도 결과가 좋지 않더라고요. 그래서 브라우저에서 돌아가는 전부를 개발하고, 웹페이지를 최종으로 내보내는 사람이라는 뜻에서 ‘웹 퍼블리셔’라는 용어를 사용하게 됐습니다.

이 개념이 생소해서 클라이언트에게 보내는 견적서에 포함을 시키면 ‘웹 퍼블리셔가 뭐냐?’고 항상 전화가 왔었어요. (웃음) 클라이언트 입장에서는 기존에 없던 항목이 더 추가된 거였으니까요. 이 역할에 대해 당시 같은 팀이었던 분들이 필요성을 공감해주신 덕에, 결과적으로도 웹 퍼블리셔의 역할이 퀄리티 높은 웹 사이트를 만드는데 기여할 수 있었던 것 같습니다.

개인적으로 저는 프론트엔드와 웹 퍼블리시의 개념이 동일하다고 생각하는데요. 이제 ‘퍼블리셔’라는 말은 업계별로 다르게 쓰는 용어가 된 것 같아요. 콘텐츠 중심의 제품을 만드는 회사는 퍼블리셔라고 하고, 문제 해결을 위한 앱 제품/서비스는 프론트엔드 엔지니어라고 하는 경우가 일반적이긴 한 것 같아요.

프론트엔드 파트에서 굉장히 많은 경험을 갖고 계신데요. 마키나락스에 합류하게 되신 계기는 무엇인가요?

사실 프론트엔트 엔지니어의 장점은 도메인에 크게 영향을 받지 않는다는 거에요. 이제는 거의 모든 비즈니스가 사용자를 위한 웹을 갖고 있잖아요. 계속 웹 서비스와 관련된 업무를 하더라도 새로운 것을 해볼 수 있는 회사, 경험해보지 못한 제품을 만들어보고 싶었습니다.

그동안은 불특정 대중을 대상으로 하는 서비스를 주로 해왔었는데요. 이런 서비스들은 사용자들이 웹 페이지에 머물면서 시간을 소비하게끔 만드는 게 주요한 목적이거든요. 어떤 사람이 올지 모르는 상태에서 추천 시스템과 같은 편의 기능을 제공해서 사용자들의 체류시간을 늘리고, 노출과 광고를 통해 방문을 늘리는 게 일반적인 목표라고 할 수 있어요.

Runway 소개 영상

반면 마키나락스의 Runway와 Link는 특정한 사용자들을 대상으로 제공되는 특화된 제품이잖아요. 들어오기 전 살펴보았을 때 제품력도 좋아보였고, 제조 및 산업 기업에서 일하는 사람들에게 실질적인 변화를 일으킬 수 있겠다는 생각이 들었습니다. 그래서 막연히 재미있게 일할 수 있을 것 같다는 생각에 합류하게 되었어요.

마키나락스에 조인한지도 어느덧 6개월이 되셨어요. 마키나락스가 다른 회사들과 다르다고 느낀 점이 있나요?

마키나락스에는 데이터 사이언스를 공부한 분들이 많고, 그리고 창업자들도 공부를 엄청 많이 한 사람들이잖아요. 그래서 확실히 분위기나, 나누는 이야기들이 다르다고 느껴요. 사실 그 이야기들이 재미있을 때도 있고 재미없을 때도 있는데요. (웃음) 어쨌든 굉장히 똑똑하고 다들 자기 분야에서 깊게 탐구했었던 사람들이 많다보니 사내에서 기술 세미나들을 들어보면서 많이 배울 수 있는 것 같아요.

프론트엔드 개발 파트(이하 Dev-F)에서 만드는 제품, 그리고 업무를 소개해주세요.

Dev-F는 마키나락스의 대표 제품인 엔터프라이즈 MLOps 플랫폼 ‘Runway’와 AI/ML 모델 개발 도구 ‘Link’가 사용자와 만나는 최종 접점을 만드는 일을 하고 있어요. 프론트엔드 개발 관점에서 보면 Runway는 웹앱 기반의 서비스이고, Link는 설치형 웹 어플리케이션인데요. React, Typescript, HTML, CSS, SVG 등의 기술을 사용해 2개 제품의 개발을 진행하고 있어요.

사실 Runway와 Link는 복잡도가 굉장히 높은 제품들이에요. 아무래도 마키나락스가 산업 현장의 수많은 난제를 해결하고자 만든 제품들이기에 제품의 구조가 단순할 수는 없어요. 인공지능이라는 특수한 목적의 기술에 특화된 사용자들을 위한 제품이다 보니, 프론트 엔지니어가 만드는 사용자 인터페이스 역시 복잡도가 높아요.숙련된 데이터 전문가부터 넓은 범위의 시민 데이터 과학자(citizen data scientist)에 이르기까지, 더 많은 사용자들이 더 쉽고 빠르게 AI/ML 모델을 만들고 운영할 수 있도록 쉬운 인터페이스를 만드는 것이 Dev-F의 역할이라고 할 수 있습니다.

Dev-F가 지향하는 개발문화는 무엇인가요?

좋은 개발문화라고 하면 통상 ‘애자일’이라고 이야기해요. 저희도 방법론적으로는 그중 일부를 차용해서 쓰고 있어요. 스프린트를 한다거나, 데일리 스크럼을 한다거나, 회고를 하고 코드 리뷰를 체계화 하는 방식들이죠. 하지만 한편으로는 ‘좋은 개발문화=애자일’이라는 틀 자체가 애자일의 진정한 개념에 상충한다는 생각도 들어요. 그래서 애자일한 개발문화을 도입해서 애자일해졌다고 이야기 하기보다는 진짜 우리답게, 회사의 상황에 맞게, 우리 파트의 팀원 모두가 성장할 수 있는 문화를 함께 찾아가는 것이 ‘진정한 애자일’이라고 생각해요.

‘진정한 애자일’은 거창한 게 아니에요. 일할 때는 집중하고, 쉴 때는 쉬면서도 최종 퍼포먼스를 엔지니어 스스로 증명할 수 있는 문화를 만드는 것이 가장 이상적인 문화잖아요. 이런 문화를 만들기 위해 회사는 이상적인 업무 환경을 만들어주고, 팀원 개개인은 스스로 훈련하다 보면 우리만의 좋은 개발 문화를 만들 수 있지 않을까 해요.

프론트엔드 엔지니어들은 AI에 대한 매력보다, 사용자가 많은 서비스를 경험하는 것에 더 매력을 느낀다고들 해요. 그럼에도 불구하고 마키나락스 MLOps제품화팀 Dev-F에서만 느낄 수 있는 성장 경험, 커리어적인 베네핏에는 어떤 게 있을까요?

SaaS와 설치형 제품을 모두 경험해볼 수 있다는 것이 커리어적으로 장점이 될 수 있을 것 같아요. 보통 웹 서비스의 경우 출시 이후에도 바로 버그를 고칠 수 있어서 문제를 빠르게 해결할 수 있는 반면, Link와 같은 설치형 제품은 한번 배포를 하고 나면 돌이키기 어려운 부분이 있어요. 그런데 프론트엔드 엔지니어가 설치형 제품을 경험할 기회가 흔하지는 않거든요. 저 역시도 이런 설치형 제품을 개발하는 것은 오랜만이라, 프로세스 측면에서 Link가 많이 흥미로웠거든요.

Link 소개 영상

그리고 프론트엔드 엔지니어로 일하다 보면 주기적인 개편업무가 있고 속도나 기존 기능의 개선에 초점을 두고 많은 프로젝트가 진행이 되는데요. 개발 조직이 몇 천명이 되는 큰 회사들은 한 소프트웨어를 가지고 오랫동안 고민하고 개발하는 경험을 할 수 있지만, 보통의 스타트업에서는 프로토타입을 만들고 없애고 다시 만들고를 반복하게 되는데요. 마키나락스에서 만드는 제품들은 복잡도가 높고, 오래 지속되는 형태이다 보니 장기적인 시각에서 기능을 설계하고 구현하는 경험을 할 수 있다는 것도 하나의 매력이에요.

Dev-F에 합류하고 싶은 분들은 어떤 역량이 필요할까요?

최근에 “기술 스택이 많으면 잘하는 사람”이라는 인식이 많아진 것 같아요. 하지만 프론트엔드의 기술 난이도가 올라가고 복잡해질수록 좋은 프론트엔드 엔지니어는 “사용자 중심”의 근본적인 사고를 해야 해요. 프론트엔드 개발 자체가 최전방에서 사용자가 직접 만지고, 쓰는 부분을 만드는 작업이잖아요. 특히 Runway와 Link는 특수한 사용자들이 사용하는 제품이고, 그러다 보니 이들의 행태와 업무 복잡성을 이해하는 것이 중요해요. 그래서 넓은 기술 스택을 가진 것도 좋지만 사용자와 사용자 환경에 집중하는, “back to the basic”의 사고방식을 가진 분들이 저희와 함께 더 많은 시너지를 낼 수 있을 것이라 생각합니다.

🚀Career 🧭Homepage 🗣️️LinkedIn 📍Facebook 🖥️TechBlog 🎬Youtube

마키나락스는 산업용 AI 솔루션을 개발하는 스타트업입니다. 반도체, 에너지, 자동차, 화학 등의 분야에 특화된 AI 솔루션과 제조 및 산업을 위한 MLOps 플랫폼(Runwayᵀᴹ)으로 AI를 통한 산업의 지능화를 실현해갑니다. 산업 현장의 문제 해결을 통해 사람이 본연의 일에 집중할 수 있게 만드는 것, 그것이 우리가 하는 일입니다.

--

--