[개발인] 백기선 “개발자는 끊임없이 공부하는 사람”

가 +
가 -

개발을 좋아하는 사람은 어떻게 프로그래밍 세계로 입문할까? 창작의 재미를 느껴 개발에 빠질까? 혹은 어렸을 때부터 재능을 보여 개발자의 길로 접어들까? 생각보다 더 간단한 이유도 있다. 이를테면 학점을 잘 받기 위해서 혹은 선배의 권유로 개발의 길로 들어서는 경우다. 네이버랩스 백기선 개발자도 비슷한 이유로 개발자의 삶에 매료됐다.

한국형 ‘깃허브’ 개발 중

백기선 개발자는 현재 네이버랩스 시스템컴퓨팅그룹 소속으로, ‘요비’라는 소프트웨어(SW)를 개발하고 있다. 요비는 오픈소스SW로 ‘깃허브’와 유사한 협업 SW 개발 도구다. 네이버는 과거부터 기계학습, 음성인식, 오픈소스SW 같은 선행 기술을 연구하고 있었는데, 올해 초부터 이러한 부서를 네이버랩스 아래에 두고 있다. 네이버 사내에서 사용하는 플랫폼이나 기술 연구 부서도 네이버랩스에 속해 있다.

Baek_developer_interview_02_yobi

▲협업 개발 플랫폼 ‘요비’

백기선 개발자는 2010년부터 네이버에서 일하고 있으며, 요비 프로젝트에선 서버 기술 지원을 주로 맡고 있다. 최근엔 프레임워크를 전환하는 일도 하고 있는데, ‘플레이‘ 프레임워크에서 ‘스프링‘ 프레임워크로 바꾸고 있다. 스프링은 엔터프라이즈 애플리케이션을 위한 프레임워크다. 자바언어 기반 개발을 좀 더 빠르고 쉽게 할 수 있도록 도와준다. 국내에는 특히 자바 개발자들이 많은데, 기업에서 자바를 접하면 한번씩 스프링을 만날 만큼 한국에서 많이 사용되는 기술이다. 스프링은 일종의 틀 역할을 하면서 라이브러리와 확장 가능한 환경을 제공한다. 개발 흐름을 잘 연결해주거나 여러 도구의 도움을 많이 받을 수 있는 장점도 지녔다.

스프링에 매료된 개발자

국내에는 스프링이 2006-2007년께 도입됐다. 백기선 개발자는 그때부터 꾸준히 스프링에 관심을 가지고 공부했다고 한다. 그럼에도 그는 “아직 그리 실력이 높지 않고, 공부하는 중”라며 “예전에 스프링에 관해 썼던 블로그가 자주 노출돼서 그런지, 실력이 조금 포장된 것 같다”라고 겸손을 떨었다. 훌륭한 개발자 여부는 객관적으로 측정하긴 쉽지 않지만, 일단 백기선 개발자가 성실하고 꾸준히 스프링을 공부한 사람인 건 확실해 보인다. 스프링 공부 모임 ‘봄싹’ 운영진으로 수년간 참여하기도 했고, 여러 커뮤니티에서 스프링을 주제로 세미나 발표도 자주 맡았다. 스프링 관련한 책 번역에 도움을 주거나 직접 저술한 책도 있다.

Baek_developer_interview_03_spring

▲스프링은 자바기반 엔터프라이즈 애플리케이션을 보다 쉽게 만들수 있게 도와준다.

백기선 개발자는 어떻게 스프링을 처음 접하게 됐을까. 그것도 스프링이 처음 도입되고, 충분한 검증이 안 된 시절에 말이다. 백기선 개발자는 대학시절 경영학부 학생이었다. 경영정보시스템(MIS)을 전공했다. 정보시스템과 경영을 동시에 배우는 학문이다. 3·4학년에는 좀 더 세분화된 과목을 들어야 했는데, 그는 전산 과목을 더 많이 수강했다. 학점이 잘 나온다는 이유에서다. 다른 경영학부 학생들은 C언어나 자바언어를 배우길 두려워했다. 백기선 개발자는 다른 동기보다는 프로그래밍에 대한 거부감이 적었고, 계속 공부를 이어나갔다.

또다른 동기부여도 있었다. 그건 바로 평소에 잘 알고 지내던 선배다. 그 선배는 외부 스프링 공부 모임을 주도하고 있었고, 백기선 개발자도 덩달아 모임에 참여하면서 스프링을 알게 됐다.

주변 지인을 본보기로

모임에서 만난 한 지인은 백기선 개발자에게 취업 자리를 제안하기도 했다. 그렇게 백기선 개발자는 ‘아키텍트’라는 직함을 가진 직업을 얻게 된다. 하지만 그는 그 일을 한 달 만에 그만뒀다. 코딩을 더 하는 직업을 찾기 위해서다. 아키텍트는 직접 코딩을 하면서 무엇인가 만들기보다 컨설팅 같은 기술 자문을 많이 한다. 현장에서 코딩을 하고 싶었던 그는 다른 직업을 찾던 중 다시 다른 공부 모임에서 만난 지인의 회사로 들어간다.

백기선 개발자는 “순전히 그 지인의 실력에 감탄하고 그 지인에게 많이 배우고 싶었다”라며 “그래서 그분이 일하던 회사라면 무조건 좋다는 생각으로 들어갔다”라고 설명했다. 실제로 그 기업은 전직원이 3명일 정도로 규모는 작았지만, 백기선 개발자는 많은 공부를 했던 시기로 기억하고 있다.

“학습 속도는 개발자의 중요한 역량”

현재 백기선 개발자는 서버분야를 개발하고 있지만, 프론트엔드나 모바일 등에도 관심이 많다. 결국 한 서비스는 한쪽 기술만으로는 만들어지지 않기 때문에 다 같이 공부해야 한다는 게 그의 지론이다. 그가 공부하는 기술 중에는 최근에 나온 기술들도 많다. 새로운 기술들을 어떻게 접하고 공부할까. 백기선 개발자는 “그냥 눈으로 읽는 게 아니라 직접 사용해보려고 한다”라며 “이 기술이 좋다 나쁘다는 식의 편견도 갖지 않으려고 한다”라고 말했다.

“한 서비스를 만들 때 자바스크립트만 알아도 물론 개발할 수 있죠. 그런데 최근 주목받는 ‘앵귤러JS’를 일부러 한번 써보기도 해요. 저는 개발자에게 필요한 역량 중 하나가 ‘얼마나 빨리 학습할 수 있느냐’라고 보거든요. 학습 속도도 중요하다는 거죠. 이 속도를 늘리기 위해선 스스로 새로운 기술을 접하고 배울 수 있는 기본기를 만들어놔야 합니다. 그래야 비슷한 기술들 중 어떤 것이 적합한지 직접 판단할 수 있겠죠.”

Baek_developer_interview_thum

▲백기선 개발자

백기선 개발자는 이러한 새로운 기술 소식을 대부분 사람들에게서 얻는다고 한다. 커뮤니티나 회사 내에서 사람들이 관심 있어하는 기술에 귀 기울이고 트렌드를 쫓아가는 것이다.

“예를 들어 ‘도커’ 같은 기술은 실제 제 업무에선 당장 쓰이는 기술이 아니에요. 하지만 많은 주변 사람들이 도커에 대해 이야기하면 저도 알아보려고 해요. 이것 역시 학습 속도를 높일 수 있는 방법이니까요. 그렇게 여러 기술에 관심을 가지면 주변 사람들과 대화할 수 있는 꺼리가 더 많아지기도 합니다.”

평생 현업에서 개발하고 싶은 개발자

그는 두 번째 회사에서 만났던 지인을 아직 ‘롤모델’로 삼고 있다고 한다. 전문성과 깊이 면에서는 따라갈 수 없다고 생각하기 때문이다.

“관리자나 임원 자리에는 별로 관심 없어요. 앞으로도 계속 현업에서 뛰는 개발자가 되고 싶어요. 그런 개발자라면 언젠가 자기 이름을 건 제품이 있어야 한다고 생각해요. 그때 필요한 게 바로 전문성이고요. 그래서 혹 지금 개발을 처음 시작하는 친구가 있다면 자기가 하는 기술을 좀 더 깊이 공부할 것을 권유합니다. 회사에 오면 당장 업무에서 필요한 기술을 개발하고 관리하느라 기본 기술이나 원리를 차분히 공부할 시간이 없거든요. ”

네티즌의견(총 3개)