"스타트업 그냥 가면 망한다"…개발자가 살아남을 '진짜 무기'는? [긱스]

개발자들은 이제 우리나라에서 대표적인 ‘귀한 몸’이 됐습니다. 수년 전까지만 해도 과거 시스템통합(SI) 분야 대기업과 네이버·카카오 등 일부 빅테크 기업, 게임사에 들어가는데 목을 맸지만, 지금은 ‘디지털 트랜스포메이션’과 맞물려 제조·유통·금융 등 분야를 가리지 않고 ‘러브콜’을 받고 있습니다.
특히 스타트업의 부상이 개발자 위상을 변화시켰습니다. 기업공개(IPO)나 인수합병(M&A) ‘성공 신화’가 터져 나오며 개발자들을 흡수했죠. 컴퓨터공학 전공자는 부족해졌고, 비전공자가 개발자로 전직하는 경우는 흔해졌습니다. 하지만 덮어놓고 개발자로 나선다고 해서 성공 기회가 보장되는 것은 아닙니다. 개발자에게 필요한 무기는 무엇이고 어떻게 준비해야 할까.
한경 긱스(Geeks)가 매출액 100억 이상인 코딩 교육 스타트업의 대표 3인방(김인기 코드스테이츠 대표·이범규 팀스파르타 대표·김재원 엘리스 대표)을 만나 얘기를 들었습니다.
드럼통 난로에 사람들이 모여 불을 쬐고 있습니다. 프로그래머로 보이는 남자의 표정은 따분하기만 합니다. 난로 속엔 또 다른 프로그래머가 ‘불타고’ 있습니다. 마치 사람이 땔깜처럼 쓰이는 무시무시한 장면이네요. 이때 다가온 승합차 문이 열리며, 군밤장수 모자를 쓴 한 남자가 말합니다. “자바(JAVA) 두 명 타세요.”개발자가 대세에 오른 최근, 온라인 커뮤니티에는 이미지의 의미를 묻는 글들이 심심찮게 보입니다. “자바 개발자 비전이 없다는 뜻인가요”부터 “용역 프로그래머가 그만큼 넘친다는 것”이라는 말까지 다양한 해석이 나오고 있습니다.

지금이야 이런저런 풀이가 덧붙지만, 사실 이 이미지는 나름대로 역사를 지니고 있습니다. 2000년대와 2010년대 초반 컴퓨터공학과에 입학했던 이들에겐 학과 선후배들을 인근 전자공학과로 ‘방출’시킨 주범이기도 합니다. “너 학과 잘못 왔다”를 대변하던 우스갯소리 자료였습니다.
10년이면 강산이 변한다는데, 산업계를 둘러싼 채용 환경은 더 급변하고 있습니다. 취업의 바탕에도 철저히 수요와 공급이 작용함을 고려하면, 과거 몇몇 대기업 시스템통합(SI)업체 취업에 목매던 컴퓨터공학과 학생들에게 최근 주어진 선택지는 너무나 다양합니다. 전과를 해가며 노리던 전자·자동차계열 대기업뿐만 아니라, 정유·건설·유통 등 전 산업군이 스스로를 정보기술(IT)기업으로 칭하기 때문입니다.여기서 또 한 가지 강조되는 점이 스타트업의 부상입니다. 초기에 합류하면 서비스 개발을 이끌 수 있을뿐더러, 기업공개(IPO)나 인수합병(M&A) 등으로 적층된 성공신화는 이젠 타과생들을 개발자의 영역으로 이끌고 있습니다. 전공자를 넘어 ‘문과생 개발자’가 어느덧 익숙해진 이유입니다. 경계가 흐려진 셈입니다.

하지만 전공자든 비전공자든, 실무에서 무엇이 강조되는지를 알기란 쉽지 않습니다. 무엇을 배워야 살아남을지는 그래서 중요합니다. 방대한 전산학을 모두 배워낼 수 없다면, 취사선택만이 해답이겠죠.

프론트엔드, 백엔드, 데이터·인공지능(AI) 3대 직무에 대해 코딩 교육 스타트업 대표들에게 물었습니다. 대학이 아닌, 실수요 중심 시장에서 살아남은 업체들입니다. 이들은 “전산학 필수 ‘5대 과목’과 각 직무의 ‘언어 기본기’”를 강조했습니다. 특히 인력 규모가 적은 스타트업에선, 한 직무에 매몰되기보다 서비스 개발의 전체 흐름을 조망할 수 있는 능력이 필요하다고 전했습니다.

"HTML·CSS·JS…프론트엔드, 기본기 간과 말라"

김인기 코드스테이츠 대표
“문과생이라고 해서 불리하다는 생각을 하는 순간 잘못된 프레임이 시작됩니다. 하루빨리 ‘비전공자’라는 틀에서 벗어나는 것이 중요합니다.”

프론트엔드는 가장 보편적인 개발자 직무로 꼽힙니다. 서버와 통신하며, 웹상에서 나타나는 모든 사용자 화면을 구성하는 것이 이들의 일입니다. 스타트업들의 수요도 많고, 시각적으로 개발 결과물을 확인할 수 있어 배우려는 사람도 많습니다. 비전공자가 가장 많은 직무로 추산되기도 합니다. 김인기 코드스테이츠 대표는 “끊임없이 ‘사용자 관점’으로 서비스를 고민하는 개발자가 되어야 한다”며 “전공자든 비전공자든, 공부하지 않으면 추월당하는 분야”라고 말했습니다. (*문답은 Q&A로 정리합니다.)프론트엔드 개발자, 되려면 무엇을 배워야 하는가?

"기본기가 중요하다. 컴퓨터와 소통할 세 가지 언어가 있다. HTML, CSS, 자바스크립트(JS)다. 모두 배워야 한다. HTML은 웹페이지 기본 틀을 만드는 데 쓴다. CSS는 HTML로 작성된 내용을 사용자들에게 어떻게 보여줄지 시각적 요소를 정의한다. 글의 색상이나 크기, 웹페이지 내 이미지의 배치 등이 가능하다. JS는 움직이는 콘텐츠 등 복잡한 기능을 더할 수 있다."
HTML의 기본 형태를 나타낸 코드. 페이지 제목을 정의하는 'title', 내용을 나타내는 'body' 등 직관적인 구조를 취한다. 단락이나 줄 바꿈을 정의하는 문법을 덧대면 다양한 표현이 가능하다. 이를 토대로 CSS 또는 스트립트 문법(Javascrpit) 등을 적용하면 색다른 디자인이나 애니메이션을 나타낼 수 있다. 위키피디아 캡처.
"처음 시작하는 사람들은 ‘트렌드’에 집중하는 경우가 있다. 라이브러리(프로그램 개발 도구 뭉치)나 프레임워크(프로그램의 틀 구성법) 공부에 더 힘쓰는 부류다. 진짜 중요한 것은 세 언어다. 오랫동안 소프트웨어(SW) 분야에서 선배들이 강조한 내용을 다시 생각해봐야 한다. JS만 하더라도 계속 업데이트되고 있다."

진입 장벽이 낮다는 지적이 있다.

"상대적으로 낮을 수 있다. 하지만 시대가 바뀌고 있다. 과거와 같이 가벼운 웹 페이지만 표현하던 때가 아니다. 브라우저는 복잡한 상호작용을 하고 있다. ‘웹 애플리케이션(앱)’이라 불릴 정도로 무거운 프로그램이 돌아가는 경우가 많다. 성능 최적화 문제를 위해선 브라우저(웹 연결을 지원하는 윈도 SW)에 관한 컴퓨터공학 지식을 계속 공부해나가야 한다. 평생 배운다고 생각하고, 때마다 필요 지식을 테마별로 익히면 되겠다. 다만 기초적인 웹 서비스 제작 역량을 갖추는 데는 6개월 정도면 되긴 한다. 이 상태로 취업하는 경우도 많다."
웹 페이지에서 볼 수 있는 미니박스 알람창은 자바스크립트의 기능을 근간으로 구현할 수 있다. 동적 표현에 대한 다양한 양식을 구현할 수 있기 때문이다. drinfree 캡처.
본인도 비전공자시다. 도전의 계기는?

"경희대 호텔관광대에서 문화관광콘텐츠를 전공했다. 앱 서비스 회사에서 마케팅 인턴 일을 하며 스타트업에 대한 관심을 키웠다. 코딩은 IT회사에서 피해갈 수 없는 기술이었다. 혼자 공부하다 미국행을 결심했고, 현지 코딩 부트캠프에 참여했다. 취업하고 교육비를 내는 시스템에 영감을 받아 2015년 창업했다."

"하루 빨리 ‘비전공자’라는 프레임에서 벗어나야 한다. 문과생이라고 해서 불리하다는 생각을 하는 순간 잘못된 길에 빠진다. 배경과 상관 없이 돈을 받고 일을 하는 순간 자기 코드에 책임을 져야 한다. 프론트엔드 개발자는 유저 중심 사고관을 중심에 두는 개발자가 승리한다."

기본을 넘어 ‘실전형 기술’이 있다면?
"단골 논쟁 대상이다. 조심스럽다. 유명 설문인 ‘stateofjs 2021’와 자사 수료생 조사를 기반으로 답하겠다. 프론트엔드 라이브러리 ‘리엑트(React)’, 자바스크립트에 타입(Type)을 추가한 ‘타입스크립트’, 리엑트 프레임워크 ‘Next.js’를 꼽겠다."

"리엑트는 JS의 라이브러리다. JS를 기반으로 더 많은 동적 유저인터페이스(UI)를 만들 수 있다. 리엑트는 하나의 라이브러리임에도 불구하고 글래스도어와 같은 글로벌 구직 플랫폼에서 프론트엔드 개발자가 아닌, ‘리엑트 개발자(React Developer)’라고 말할 정도다. 큰 규모의 회사에서 많이 쓰기에 추천한다."

"타입스크립트는 JS의 확장판(Superset)이다. 코드를 더 정제해서 작성할 수 있고, 에러를 좀 더 쉽게 발견할 수 있게 도와준다. 프론트엔드 직무의 채용 우대사항에 많이 포함되고 있다. Next.js는 포털 검색 결과 상위에 웹 서비스가 노출되도록 돕는다. 모두 최근 실무에서 활용도가 높은 기술들이다."

직무 자체 전망은 어떤가?

"무궁무진하다. 웹 앱의 기능이 다양해지면서다. 다만 역할은 달라질 수 있다. 코딩 없이 프로그래밍을 하는 노코드 기술 등이 발전하고 있다. 단순한 기술자를 넘어, 문제를 해결하는 사람에 대한 수요가 있다."

"스타트업에서 일하려는 사람에겐 ‘유연한 관점’이 중요하다. 자신이 오래 써온 언어나 프레임워크가 아니라도, 현재 문제를 해결하는 데 필요한 기술을 빠르게 습득하고 활용할 수 있어야 한다. '스택 오버플로우'와 같은 커뮤니티를 적극 활용할 것을 권한다."

"백엔드, 4개월에도 가능…겁먹지 말고 실무 파라"

이범규 팀스파르타 대표
백엔드는 사용자 서비스와 서버를 잇는다. 전면에 드러나진 않지만, 기계와 사람을 연결하는 중추적 역할을 한다. 난이도가 상당한 영역인 만큼 웹 서비스의 품질을 좌우하기도 한다. 프로그램 운영 전반을 이해해야 해서 종합적 지식이 요구되는 직무다. 이범규 팀스파르타 대표는 창업 전 배달의민족 운영사 우아한형제들에서 백엔드 개발자로 일했다. 그가 말하는 백엔드 개발자의 덕목도 결국 “백엔드만 알지 말자”다.

백엔드, ‘왕도’가 있는가?
프론트엔드와 백엔드 영역 차이를 나타낸 인터넷상 이미지. 사용자와 인어가 마주보고 있는 영역은 서비스가 외부로 드러난다는 뜻으로 프론트엔드가 표시되어 있고, 사용자가 볼 수 없는 바위 뒤 영역에는 비늘이 그려진 초록색 다리와 함께 백엔드 단어가 표시되어 있다.
"웹개발 전체를 경험해보아야 한다. 이게 시작이다. 그래서 교육과정을 짤 때 일부러 HTML과 CSS를 넣어 프론트엔드 개발을 시키기도 했다. 서버 개발은 가장 쉬운 파이썬 언어를 쓰고, 필요한 프레임워크는 ‘플라스크’가 쉽다. 10줄이면 서버가 만들어진다."

"HTML이나 CSS를 알아야 리엑트가 왜 필요한 지 아는 것처럼, 파이썬으로 서버를 만들어봐야 왜 안정성이 중요한 대기업에서 자바를 선호하는지, 노드JS가 편리한 기능이 많다는데 왜 그런 것인지를 알 수 있다. 맛보기가 끝났으면, 그 때는 서버를 개발할 언어 하나를 깊게 공부해야 한다. 노드JS나 자바, 두 가지 중 하나를 선택할 것을 추천한다. 이후 데이터베이스(DB) 설계까지 해낸다면 기본은 갖추게 된다."

인프라 기술을 공부하는 이들도 많다.

"백엔드에서 인프라는 서비스의 배포를 책임지는 기술이다. 유행이고, 많이 공부하는 것은 사실이다. 아마존웹서비스(AWS) 클라우드 서비스, 가상 호스팅을 위한 '도커' 등 SW들이 있겠다. 하지만 신입에게 기대하는 부분은 아니다. 오히려 중요시해야 할 것은 DB 지식이다. 결국 데이터를 서버에 저장해놨다가, 데이터를 잘 전송하는 것이 백엔드 개발자가 가장 잘 해야할 일이다. 최적화된 DB 저장 구조를 짜는 훈련이 필수적이다."

"조금 더 나아가선, 자신이 쓰는 기술에 대한 탄생배경을 공부해야 한다. 면접장에서 코딩해보라는 경우는 거의 없다. 결국은 “왜 그 기술을 사용했는가”에 대한 질문이 나온다. 탄생배경을 알면 이전 기술의 한계와 새 기술의 효용을 막힘 없이 말할 수 있다."
서버 개발의 기본 언어 중 하나인 '노드JS' 사용 장면. 소프트웨어(SW)들 사이 기능을 잇는 애플리케이션 프로그램 인터페이스(API)를 통해 유저 정보(쿼리 문자열에 포함된 매개변수)를 처리하는 체계를 구성하고 있다. 백엔드 개발은 이렇게 적절한 정보를 서버에 잘 입력하고, 필요한 데이터를 찾아 효율적인 출력을 제공하는 것을 목표로 한다. 팀스파르타 제공.
난이도가 어렵다는데?

"차근차근 하면 어려울 것도 없다. 언급했듯 웹개발을 한 바퀴 배워본다고 가정하자. 파이썬으로 아주 간단한 서버를 만들어 게시판을 운영해보겠다. 'CRUD'라 부른다. 크리에이트(C)·리드(R)·업데이트(U)·딜리트(D)의 약자다. 모든 게시판에 다 있는 기능인데, 이 정도만 체험해봐도 서버가 어떤 원리로 돌아가는 지는 쉽게 파악할 수 있다. 언어도 모든 것을 배우고 시작할 수 없다. 2주 안에 핵심 문법을 파악하는 식으로 접근하고, 나머지는 실제 프로젝트를 배우며 해결해야 한다. 도합 4개월 정도면 백엔드 개발자로 거듭나기엔 충분한 시간이다."

스타트업 개발자에게 특히 필요한 지식이 있는지?

"자료구조와 알고리즘 분석에 대한 학습이 필요하다. 대학교 2~3학년 과정이다. 취업하고 1~2년차에는 필요성을 잘 못느낀다. 3~4년차가 넘어가면 상황이 달라지는데 그때 다시 하려면 늦다. 예를 들자면, 네이버나 카카오에서 고연차 개발자가 하는 일이 무엇일까. 어떻게 하면 5억원까지 비용을 안쓰고 5000만원 내에서 트래픽을 견디게 할 수 있을까 고민하는 것이다. 결국 코드를 효율화하는 방법은 자료구조나 알고리즘처럼 컴퓨터공학 지식에 있다. 특히 스타트업 개발자는 홀로 이런 작업을 이끌어야 하는 경우가 많다."

"물론 학원을 찾는 사람들이 공부하기 쉽지 않은 현실이다. 하지만 취업을 위해서 비전공자가 3년, 4년을 들여 모든 과정을 마칠 수도 없다. 중요한 것은 계속 공부하고자 하는 태도다. 우리 교육과정 수강생들은 아직도 자발적으로 스터디를 꾸려서 일요일마다 나오더라. 좋은 회사로 이직하고 발전하는 것은 본인에게 달렸다."

"AI, 상업 서비스 항상 염두…대학원 필수 아니다"

김재원 엘리스 대표
데이터의 중요성은 최근 부각됐다. 기술의 발달로 수십만건의 데이터가 군집을 이루기 시작하자, 무의미해 보이던 배열에서 의미를 찾는 이들이 생겨났다. 대량의 데이터를 가공하는 데이터 엔지니어, 인공지능(AI)을 활용해 데이터를 학습하고 서비스를 구현하는 AI 엔지니어는 그렇게 탄생했다. KAIST 전산학과에서 AI를 전공한 김재원 엘리스 대표는 "실제 비즈니스 의사결정에 근거를 주는 이들이 데이터와 AI의 전문가들"이라고 정의했다.

데이터 엔지니어는 어떤 기술을 사용하는가?

"Numpy(넘파이), Scipy(싸이파이)와 같은 파이썬 라이브러리 기술을 쓴다. 매우 큰 데이터를 분석하고 관리할 때 사용하는 도구다. 이를 위해선 데이터가 메모리에 저장되는 방식도 두루 알아야 한다. SQL, 몽고DB, 램캐시와 같은 프레임워크들이다. SQL은 관계형 데이터베이스(DB)를 다룬다. '행'과 '열'에 기반해 데이터를 저장하는 체계다. 반대 개념인 비관계형 DB에선 데이터가 좀 더 자유로운 형태로 저장된다. 몽고DB가 여기에 속한다. 램캐시는 속도를 높인 형태로 생각하면 된다."

다소 어려워 보인다.

"해외에선 데이터 엔지니어 직무를 따로 구별하지 않는다. 그만큼 시스템 프로그래밍의 모든 것을 알아야 이해할 수 있는 일이다. 그래서 일선 대학 컴퓨터공학과에서 가르치는 운영체제(OS), 자료구조, DB 등 주요 전공도 대부분 알아야 한다. 물론 각 과목이 실무와 직접적으로 대응하는 것은 아니다. 다만 대규모의 데이터가 어떤 체계 하에서 의미를 갖게 되는지, 기본 틀을 익혀야만 한다. 통계학적 개념도 필수적이다."
AI도 마찬가지인가?

"AI는 대량의 데이터를 활용해 업무를 자동화하려는 목적에서 왔다. AI 알고리즘을 이해하기 위해선 데이터 및 전산학 지식에 더해, 수학와 머신러닝(ML) 기초를 배워야 한다. AI는 기본적으로 확률에 기반한다. 어떤 데이터가 남성인지 여성인지, 그들의 나이는 어떤지 등 변수가 천문학적으로 늘고 있다. 선형대수학과 같은 과목이 중요한 이유다. 언어는 두 직무 모두 파이썬을 추천한다. 파이썬을 기반으로, 일하고자 하는 기업이 사용하는 언어 2~3가지를 추가적으로 익히면 되겠다. 해당 기업 최고기술책임자(CTO)의 이력을 참고하는 것도 방법이다."

대학원 출신이시다. 진학은 필수적인가?

" KAIST에 오기 전 캐나다에서 일했다. AI를 학문으로서 연구할 사람과, AI로 사업적 가치를 창출할 사람은 구별되어야 한다. 해외선 박사 출신 AI 연구원 1명에게 엔지니어 3명이 붙는다. 원천 기술을 연구하면, 엔지니어들은 이를 현장에서 구현하는 역할을 한다. 상업 서비스에 관심이 많은 학부 출신에게 대학원 진학은 오히려 '마이너스'다. 나만 하더라도 박사과정을 무기한 휴학한 상태다.(김 대표는 KAIST AI 대학원 오혜연 교수 아래서 수학하고 있다.)"

데이터와 AI, 특히 창업이 많이 이뤄지는 분야다."스타트업에 가고자 하는 분들이 명심할 것이 있다. 현장에선 본인이 직접 문제를 정의해야 할 확률이 높다. 업무가 구체화되지 않는다는 말이다. 단순히 개발 지식을 익히고 가는 것이 아니라, 내가 개발하는 아이템이 시장에서 어떤 성과를 낼지 생각해야 한다. 마케팅이나 영업직의 책무가 아니다. 의료든 유통이든 교육이든, 적어도 자신이 이해 가능한 산업에서 데이터나 AI로 가치를 창출하려는 노력이 필요하다. 단순히 개발만 하는 인력은 이제 베트남이 더 싸다."

이시은 기자 see@hankyung.com