SW Engineering 서비스 플랫폼 설계∙개발 박단우 님
직무인터뷰
SK텔레콤의 서비스 플랫폼 설계·개발팀에서는 어떤 일을 하나요?

SK텔레콤의 인공지능(A.I.) 서비스 ‘NUGU’ 플랫폼을 설계하고, 운영합니다. NUGU는 음성 인식, 자연어 처리 및 이해, 음성 합성, 검색 등 여러 기술이 모여 작동하는 하나의 플랫폼이에요. 특히 서비스가 작동하려면 다양한 리소스(Resource)와 솔루션(Solution)이 필요하기 때문에 매우 복잡한 플랫폼이라고 할 수 있죠. 그리고 고객에게 더 나은 서비스를 제공하기 위해 이 플랫폼을 계속해서 발전시키는 게 중요합니다. 저희 팀은 이렇게 복잡한 NUGU 플랫폼에 쓰이는 리소스를 관리하고 솔루션을 개발해요. 또한 구현된 서비스를 계속 발전시키는 방향으로 플랫폼을 운영하고 있죠.

현재 단우 님이 담당하고 있는 일은 무엇인가요?

저는 현재 NUGU 플랫폼에서 사용자 관련 리소스를 설계하고, 제공하는 일을 맡고 있어요. NUGU를 통해 스마트홈 서비스를 이용하는 고객을 예로 들어볼게요. 고객이 스마트홈 기기를 등록, 수정, 삭제하고 이를 음성으로 제어하기 위해서는 관련된 모든 정보가 다른 서버의 컴포넌트(Component)에도 제공되어야 해요. 이렇게 NUGU 계정을 관리하고, 관련된 리소스들을 모아 다른 서버에 제공하기 위한 API(Application Programming Interface)를 개발하는 일이 저의 주요 업무입니다. 추가로, 서버에 문제가 생겼을 때 원인을 파악하고 해결하는 운영 업무도 함께 맡고 있어요.

*API(Application Programming Interface): 운영 체제와 응용 프로그램 사이의 통신에 사용되는 언어, 메시지 형식등의 프로토콜

서비스 플랫폼 설계·개발 직무의 매력은 무엇이라고 생각하나요?

복잡한 시스템을 이해하고, 이를 바탕으로 새로운 기능을 추가하는 일이 흥미롭습니다. 운영 중 발생하는 문제를 해결하는 일 또한 재미있어요. 전체 서비스 API(Application Programming Interface)의 호출 순서를 따라가며 분석해야 하는 일들이 많다 보니, 복잡한 시스템의 문제를 해결하면서 느끼는 보람이 크거든요. 또한 디버깅(Debugging) 실력이 나날이 향상되는 게 느껴져요. 앞으로 확장성 높은 새로운 플랫폼을 설계해보면 보람이 훨씬 크겠죠.

직무의 비전에 대해서는 어떻게 생각하나요?

서비스 플랫폼을 직접 설계, 개발하고 운영하는 경험은 비즈니스 영역에서 활동하는 개발자에게 필수적인 역량이 될 것이라 생각해요. 의료, 사물인터넷(IoT), 자동차 등 거의 모든 산업 분야가 인터넷과 연결되면서 플랫폼의 중요성이 더욱 커지고 있기 때문이죠. 미국의 나스닥을 대표하는 구글, 아마존, 애플, 페이스북 등의 기업들만 봐도, 플랫폼의 비즈니스적 파괴력을 알 수 있어요. 앞으로 플랫폼을 개발하는 능력은 더욱 중요해질 거예요.

역량인터뷰
서비스플랫폼 설계·개발 직무에 필요한 지식이나 역량은 어떤 것이 있을까요?

컴퓨터 공학(Computer Science)에서 배우는 기본적인 전공 지식이 많은 도움이 됩니다. 자료 구조, 알고리즘은 문제 해결을 위해 필요하죠. 그리고 데이터베이스(Database), 운영체제(OS), Network 등 기초적인 전공 지식이 새로운 걸 배우고 문제를 해결하는 데 큰 도움이 되요.

업무 역량을 쌓으려면 어떻게 준비해야 할까요?

기초적인 전공 지식을 열심히 공부한 후 ‘해커톤(Hackathon)’ 등 각종 개발 행사에 많이 참여해 보시기 바랍니다. 개발 프로젝트를 처음부터 끝까지 진행해 보는 경험이 큰 도움이 될 거예요. 이 과정에서 여러 개발자가 협업하는 방법도 익힐 수 있고요. 독립적으로 완결성 있게 일해 보고 싶다면 1인 프로젝트를 진행해보는 것도 추천합니다.

*해커톤(Hackaton): 마라톤처럼 일정한 시간과 장소에서 소프트웨어 개발 분야의 기획자, 개발자, 디자이너 등 참여자가 팀을 구성해, 프로그램을 개발하고 서비스 시제품을 완성하는 대회

서비스 플랫폼 설계·개발 담당자로서 이루고 싶은 목표는 무엇인가요?

개발자와 사용자 모두가 편리하게 이용할 수 있는 플랫폼을 직접 설계해 보고 동료분들을 보면 플랫폼 설계 단계에서부터 발생할 수 있는 문제를 정확하게 포착해 내는 분들이 많아요. 그리고 이를 설계에 반영해 문제를 사전에 방지하죠. 이렇게 만들어진 플랫폼은 사용자뿐만 아니라 운영을 담당하는 개발자 또한 편리하게 이용할 수 있어요. 저도 언젠가 편리하고 확장성 높은 플랫폼을 직접 만들어보고 싶습니다.