이제 막 창업이라는 것에
관심을 가지기 시작한 분들에게는
꼭 필요한 질문입니다.
어떻게 개발자를 찾을 수 있을까
이 본질적인 질문에 앞서서
아마도 조금이라도
이미 노력을 하신 분들은
이곳저곳에 발로 뛰어본 분들이 많을 것입니다.
1) 다양한 MeetUp 행사에 참여
2) 개발자 커뮤니티 문 두드리기
3) 매칭 시스템이나 프로그램
이런 여러 가지 방법을 통해서 사람들을 만나보았다고 하더라도 풀리지 않는 부분이 많으실 것이라고 생각합니다.
그래서
개발자의 입장에서 대표님들이 개발자를 찾을 때
도움이 될 수 있는 부분들을 정리해서 말씀드려보고자 합니다.
커뮤니티를 운영하면서
몇 가지 글을 썼는데요~!
앞서 참고하시면 도움이 될 글들을
드리겠습니다.
이 두 가지 글을 참고하셔서 생각해 보시면 되는데요.
그럼에도 불구하고
여전히 스타트업을 하는 입장에서는
개발 이야기가 아리송하고
어떤 사람을 뽑아야 하는지 알기 어려운 일입니다.
본격적으로 스타트업의 시각에서 관찰하면서 풀어보겠습니다.
어떤 개발자를 찾아야 할까?
이 질문 앞에 던져야 할 것이 있습니다.
왜 개발자를 구하려고 하는 가?
스타트업 니즈는 무엇?
창업자의 니즈는 매우 간단합니다. 내가 만들고 싶고 하고 싶은 그것을 만들어 내는 것입니다. 다만 그것을 할 능력과 기술의 부재가 있을 뿐이죠.
따라서 초기 창업자의 경우 매우 단순한 생각을 하기 마련입니다. '이 아이디어를 어떻게 구현할 수 있을까?'
대부분 창업에 시작한 분들은 번뜩이는 아이디어 하나로 달리기를 시작합니다.
그래서 가끔 아이디어에 보호 조약을 걸려고 하기도 하고, 아이디어를 들키거나 빼앗길까 봐 조마조마하곤 합니다.
하지만 생각보다 다행인 것은 좋은 아이디어가 있더라도 다른 사람이 그것에 꽂히기 까지는 훨씬 더 오랜 세월이 걸립니다. 특히 개발자라고 하면 그 아이디어를 '흠 좋쿤' 하고 끝낼 가능성이 상당히 높습니다.
왜냐하면 모든 아이디어와 생각에는 '실행 비용' 이 발생하기 때문입니다.
이 비용을 감당할 생각이 없습니다. 그러니, 비용이 없다면 아이디어를 구현할 생각이 없는 것입니다. 따라서 아이디어를 차용당할 것에 너무 걱정할 필요는 없습니다.
개발자에게 아이디어를 말해도 됩니다.
그보다 이미 앞서가 있는 혹은 이제 같이 시작하는 사람들이 오히려 경쟁 상대라고 생각하심이 좋을 듯하네요.
어찌 되었든 이 아이디어를 구현에 생각이 몰입되다 보면, 단순히 개발자가 필요하다 라는 생각이 이어지게 됩니다.
그리고 흔히 컨설팅이나 창업 관련 강의들을 가게 되면 똑같이 메아리처럼 다시 이 이야기로 돌아옵니다.
좋은 개발자, 당신의 서비스를 성공시켜 줄 수 있는 개발자를 만나라
아니 기껏 이래저래 컨설팅받고 돈 들여서 발품 팔아서 다시 듣는 이야기는 다시 개발자를 찾으라는 이야기입니다.
하지만 이 이야기에 빠진 이야기가 있습니다.
'어떤' 개발자를 '어디서' 찾아야 할지에 관련된 이야기입니다.
먼저 만들고 싶은 것을 '파악'할 것
전에 개발자의 성향을 여러 가지로 분류하기도 하고,
개발자가 어떤 타입이 있는지에 대한 체계들을 정리해 드리기도 했는데요.
창업자도 다양한 패턴이 있습니다.
아이디어'만' 있는 경우
아이디어와 팀원이 있는 경우
어느 정도 계획과 시행착오를 겪은 경우
어느 정도 아이디어에 대한 계획이 구체화되어 있고 실행 계획이 있는 경우
정부 지원 사업에 덜컥 된 경우
계획을 가지고 정부 지원 사업에 된 경우
사업 시작 이후 돈을 벌기 시작한 경우
이미 사업을 몇 번 해본 경우
외주로 시작해서 돈은 벌고 있으나 개발자가 없는 경우
시리즈 투자 단계별
이미 손 쓸 수 없을 만큼 커져버린 경우
다양한 패턴과 경우의 수가 존재합니다.
대부분은 아이디어만 있거나 계획이 없는 경우라면
만들고 싶은 게 무엇인지조차도
다시 파악해야 하는 경우가 많습니다.
개발자라면 이 여러 가지 단계의 창업자 유형 중에서
투자 단계나 그 이후 단계만 관심을 가지기 쉽습니다.
왜냐면 앞서 이야기한 많은 단계들은 거저 얻어지는 것들이 아닙니다. 많은 시행착오를 필요로 하는데요.
이 시행착오를 또 겪고 싶지 않거나,
그 시행착오를 겪고 싶지 않기 때문입니다.(사실 누구나 시행착오는 안 겪고 싶습니다... 대표도 마찬가지 ㅠ)
그럼 무엇을 파악하라는 것인가?!
우선 단순히 첫 번째로 해야 할 일은 어떤 사용자를 위한 것인가를 결정하는 일입니다.
IT의 발달로 인해서 창업자 입장에서도 더 고민이 많아졌습니다. 다양한 플랫폼이 있기 때문입니다. 여기서 말하는 플랫폼이란, 웹, IOS, 안드로이드와 같은 기기 플랫폼을 말합니다. 이제는 챗봇의 영역도 새로운 선택의 영역으로 추가되고 있는데요. 사용자 입장에서 무엇이 편리한가? 어떻게 내 서비스를 이용하게 할 수 있는가의 차원을 고민하다 보면, 웹을 해야 할지 모바일 웹을 해야 할지, 안드로이드 앱을 개발해야 할지, 아이폰 앱을 개발해야 할지 등등 고민에 빠지게 됩니다.
그렇지만 무한한 돈이 아니기 때문에 '선택' 해야 합니다. 무엇으로 시작할 것인지!
개발자를 구하면 다 해결되는 거 아닌가?
산업에 대해 깊은 이해가 필요한데요. 간단히 말하자면, 다 잘하는 사람은 손에 꼽습니다. 보통은 몇 가지를 잘하거나 하던 일에 특화되기 마련입니다.
분야와 특성을 타기 때문에 개발자의 종류를 이해
해야 하고 만들고자 하는 서비스에 맞는 개발자를 찾아야 합니다.
처음에 언급한 스타트업과 개발자의 거리에서도
언급하였지만, 모든 것을 잘하는 개발자 찾기란 쉽지 않습니다.
그렇다고 해서 외주비용이라는 부분도 생각보다
큰 비용 지출이 생기기 때문에
많은 대표분들 입장에서는 개발자를 찾는데
고민이 되는 것이 사실입니다.
어떻게 하면 적은 비용으로 괜찮은 개발자를 구할 수 있는가?
이게 주 관심사가 될 확률이 높습니다.
하지만 보다 보면 이런 식으로 비용을 낮출 때 발생하는 부수적인 많은 다른 비용이 증가하는데요.
1. 사기
정확히 사기가 많다는 것보다는 적은 비용으로 모든 것을 해준다라는 것에 쉽게 끌릴 텐데, 이런 마케팅스러운 것들은 함정이 있기 마련입니다. 일단 초반에 금액이 적었다가, 눈덩이처럼 금액이 불어나는 경우, 처음에 세팅만 하다가 시간을 날리는 경우, 할 줄 모르는데 할 줄 안다고 하는 경우, 돈만 먹고 일을 처리하지 않는 경우 등등 이런 사례에 많은 손실을 본 분들은 개발자를 믿지 못하게 되고 결과적으로는 앞서 적은 비용으로 하려고 하던 일들이 눈덩이처럼 부풀리게 될 수 있습니다.
2. 저품질
품질의 저하입니다. 세상에 공짜는 없습니다. 물론 엄청난 선의도 있지만, 모든 일은 시간과 노력이 들어갑니다. 만약 적은 비용으로 큰일을 도모할 수 있다면 그것을 누가 하려고 하지 않을까요. 기존 설루션을 활용하거나, 누구나 쉽게 할 수 있는 툴에 의존하여 간단한 요구사항들로 바뀔 수 있습니다.
3. 니즈와 다름
원래 하려던 일은 엄청 많지만, 기획, 개발 등 많은 사람들과 소통을 하다 보면 일이라는 것이 많이 군살이 빠져서 슬림해지고 합니다. 하지만 비용에 잘못 엮이는 경우는 이 서비스의 본질이 뭔지 조차도 잃어버릴 만큼 모든 게 빠져서 앙상해져 버릴 수 있는데요. 이런 부분도 꼭 체크해야 하는 항목입니다.
결과적으로 적당한 비용이 아니라 싼 것만을 찾아다니면 과도한 손실이 다른 곳에서 발생합니다.
게다가 결과물도 쓸모없는 경우도 있고 말이죠.
그렇기 때문에 '잘'하는 사람을 만나야 하고
실패를 줄이는 것이 중요합니다.
그걸 어떻게 아냐고요?!
포트폴리오, 소통해보기, 이력 등등의 검증입니다.
회사에서 사람을 뽑을 때도 한 사람을 뽑기 위해서는 많은 시간과 정성을 들입니다. 스타트업이라고 해서 비용이 적다고 해서 이런 정성마저 없다면, 그 비용에 대한 책임과 결과들은 고스란히 대표의 부담이 되기도 합니다.
포폴을 볼 줄 모르겠어요.
이력서를 속이면 어쩌나요?
검증은 또 다른 실력의 영역입니다. 대표가 사람을 보는 안목이 중요하듯, 검증능력도 중요한 안목 지표 중에 하나입니다.
집을 구할 때도 여러 가지 집을 찾아가 보듯,
개발자를 구하는 것도 마찬가지입니다.
많이 만나보아야 좋은 사람과 그렇지 않은 사람을 구분할 수 있습니다.
다만, 개발자끼리도 서로 같이 일을 해보지 않는 이상은 서로의 실력을 가늠하기 어려운 부분이 있습니다.
이점은 고려해야 할 부분일 테죠.
개발자의 분류
다시 돌아와서, 대표님의 서비스를 고민해야 합니다. 많이 고민해야 하는데요.
앱을 만들 것인지, 웹을 만들 것인지를 정하셨다면, 외주로 맡길 것인지, 개발자를 찾을 것인지도 정해야 합니다.
외주로 맡긴다면, 외주업체의 리스트 정보가 매우 중요하겠죠. 개발자를 찾는다면, 어떤 개발자를 찾아야 할지를 고민해야 합니다.
[앱 개발자]
- 안드로이드 개발자
- Java 개발
- 코틀린 개발
- RxJava 개발
- 아이폰 개발자
- Object-C 개발
- RxObject
[웹 개발자]
- 프론트 개발자
- php 개발
- jsp 개발
- 엥귤러 개발
- VUE 개발
- 리엑트 개발
- node 개발 (jade, express 등)
- 백엔드 개발자
- 자바(스프링, 스프링부트, 스트럿츠) 개발
- php (CodeIgniter, CakePHP, Symfony, laravel) 개발
- 파이선(Django, Flask, Falcon, Sanic) 개발
- 닷넷 개발
- 루비 개발
- 스칼라 개발
- Go 개발(echo)
- 퍼블리셔 (CSS, HTML)
[웹앱]
- Flutter
- 웹뷰
- Ionic
- sencha
[펌웨어 개발자]
간단하게(?) 정리를 해봤는데요. 사실 이밖에도 더 세분화되어 있고 많은 선택의 영역들이 있지만, 더 이상의 정리는 무의미할 듯하여 생략합니다.
이 많은 세분화된 언어의 영역 가운데서도, 개발자는 하나 혹은 두 개의 언어를 선택해서 업무를 하는 경우들이 많이 있습니다. 이 모든 것을 안다는 것 자체가 얼마나 어려운 영역인지에 대해서 고민한다고 한다면, 많이 언어를 안다는 것보다, 한 가지를 얼마나 잘하는지가 중요한 포인트라는 부분을 이해하면 좋을 듯합니다.
그렇다면 좋은 기술은 무엇일까요?
어떤 개발자를 선택하는 게 좋을까요?
어쩌면, 처음이 중요합니다. 첫 단추로 인해서 앞으로의 서비스들은 계속 같은 언어를 써야 하고, 나중에 모든 것을 바꾸려면 그만큼의 시간과 노력이 추가되어야 하기 때문입니다.
사실 개발자가 개발 언어에 선택에 많은 관심을 가진 만큼 대표 입장에서는 크게 중요하지 않게 생각하는 경우가 많습니다. 하지만 서비스의 질과 성장, 그리고 개발자의 수급적인 차원에서 현재 트렌드에 대해 검색하고 찾아보는 노력들은 필요합니다.
어떤 언어를 쓰는 개발자는 찾기 어렵고, 몇몇 개발자들은 조금 더 쉽게 찾을 수 있기 때문입니다.
개발자의 진영(?)이라고 할 수 있는 각각의 입장들이 다르기 때문에 해당 개발자 직군의 키워드로 검색해 보시는 것을 추천드립니다.
보통 개발자를 이렇게 많이 구해야 하는가? 한두 명이서 하면 되는 거 아닌가 생각하는 분들도 계시지만, 두 영역을 잘하기 위해서는 그만큼의 시간과 비용들이 추가되기 마련입니다. (몸값이 비싸다는 이야기입니다.)
따라서, 다양하게 하시는 연차가 많으시고 몸값이 괜찮은 분을 섭외하거나, 각각 두 분야에 따로따로 섭외할 건지에 관해서는 더 고민해야 할 영역이라고 생각합니다.
만약에 개발 분량이 크지 않다면, 고용보다는 프로젝트 단위의 계약이나 외주를 이용해서, 유지보수를 계약을 따로 잡는 것이 더 나을 수 있습니다.
하지만 충분한 비용이 있고 제대로 된 서비스를 만들려고 한다면 좋은 개발자를 섭외하는 편이 나을 것입니다.
투자자의 입장에서도, 좋은 개발자가 함께 하는지의 여부는 투자의 지표가 되기도 합니다.
따라서, 어떤 언어를 선택하는지, 어떤 개발자를 뽑아야 할지, 또한 개발자의 대우 문제는 아주 신중하게 고민해야 할 것입니다.
'규모'를 고려하기
윗글에 창업자에 대한 다양한 분류를 해보았습니다.
창업을 시작하는 입장과 이미 창업을 한 뒤, 그리고 피벗을 한 경우나, 다양한 경험 이후의 개발자에 대한 관점은 매우 다릅니다.
그것은 실제로 필요한 것이 다르기 때문인데요.
처음엔 서비스에 필요한 항목들이 구체화되어있기 않기 때문에 좋은 기획자 혹은 기획이 어느 정도 관심이 있는 개발자, 빠르고 쉽고 간단하게 만들어주는 개발자가 좋습니다.
시간이 생명인 대표 입장에서는 좋은 코드라고 부르는 코드에 대해서 생각할 여력이 없기 마련입니다.
동작하는 것을 보고, 투자자나 사용자에게 보여줄 수 있는 것을 최우선시 하기 마련인데요.
개발자의 입장에서 다양한 경험들이 누적되다 보면, 이런 빠른 것들이 가져오는 문제점들이 보이기 마련입니다. 사용자의 입장을 고려하지 않은 채 빈번한 업데이트, 서버 중지, 첫 사용자에게 가중되는 불편요소 등등 뭔가를 만드는 입장에서는 고객의 입장이 충분하게 고려된다기보다는 개발을 완료하는 측면들이 부각되기 마련입니다.
따라서 개발자와 대표는 이런 입장 차이들이 생기기 마련입니다.
확실히 초기에는 빠른 것이 유리하다고 생각합니다. 뭔가 지표가 필요하기 때문인데요. 사용자의 경험들을 획득한 이후에 서비스 전략들은 더 디테일하게 가시화될 수 있습니다. 대부분 만들어 놓고 쓰지도 않고 방치된 웹과 앱들은 너무나 많으니 말이죠.
투자를 받은 회사의 입장에서는 어떤 개발자를 뽑는 것이 좋을까요?!
초기 서비스가 사용자의 눈에 보이는 것에 집중한다면, 서비스가 성장할 때에는 서비스의 안정성이 중요합니다. 점점 많아지는 트래픽을 감당해야 하고, 해당 처리에 대한 고민도 같이해야 합니다. 특히나 사용자가 가끔 보는 서비스가 아니라 여러 사용자가 동시에 끊임없이 사용하는 서비스를 만들기 위해서는 안정성에 대한 전략들이 중요한데요. 그것은 위에 언급한 백엔드 개발자, 프런트 개발자 등 개발자를 선택하는 영역과는 다른 영역의 문제로 확대됩니다.
인프라의 문제, 클라우드 서비스를 사용할지 유무의 문제, 클라우드 아키텍처링과 무중단 서비스의 도입을 결정하는 문제, 서비스 배포의 빠른 일원화 작업(CI/CD) 등등
초기에는 화면과 설계문서를 만드는 것(개발)에 집중했다면, 그 이후에는 안정적으로 서비스를 운영하는 것들이 중요한 영역이 됩니다.
그 뒤에, 큰 기업으로 된다면, 해야 할 역할들은 훨씬 더 역할이 세분화되고, 조직화에 대한 관점이 중요한 부분이 됩니다. 형평성의 문제, 갈등의 완충 역할, 프로젝트나 일을 분배하는 분배 방식 다양한 커뮤니케이션 관련 비용들이 커지고, 의사결정에 대한 문화나 서비스 전략에 관련된 결정 요인들이 큰 요소들로 작용되게 됩니다.
따라서, 서비스에 알맞은 개발자의 필요와 역량, 기술들이 너무나 다르고 선택이 어렵기 때문에 기업이 커질수록 사람을 뽑는 일에 더 많은 비용을 쓰기 마련입니다.
좋은 사람을 선택하면, 그만큼 손실이 줄어들기 때문인데요.
그렇기 때문에 큰 기업에 다니는 분들을 무작정 뽑는 경우가 있습니다. 큰기업에 다닌다고 해서 무조건 개발을 잘할 것이라는 생각, 그리고 모든 걸 할 수 있다는 생각은 조금 위험한 생각이라는 걸 염두하면 좋을 것 같습니다.
어디서 찾나요?
앞서 이야기한 내용들이 '어떤' 개발자를 찾아야 하는 가와 관련된 이야기라면 '어디서' 찾아야 하는지도 궁금한 대목일 것 같습니다.
서비스의 규모에 따라 다양한 플랫폼들을 활용해 볼 수 있는데요.
외주 플랫폼
위시켓, 크몽, 프리모아 등등의 플랫폼입니다. 또한 숨고와 같은 의뢰 플랫폼들도 있는데요. 물론 금액에 대한 이슈가 많이 있지만, 선택의 폭은 넓은 게 좋으니까요. 잘 선택하시면 좋은 업체를 만날 수도 있습니다.
스타트업 팀빌딩 플랫폼
로켓 펀치, 비긴 메이트 등등 스타트업의 인재 매칭과 관련된 플랫폼을 볼 수 있습니다. 창업과 관련하여 다양한 니즈가 생기고 있는 시점에서 생각해 볼만한 곳입니다.
구인구직 플랫폼
링크드인, 잡플래닛, 사람인 등등 기타 기존의 구직 플랫폼을 이용해 볼 수도 있을 텐데요. 스타트업에 기꺼이 자기 시간을 쪼개려는 사람들 보단 안정성을 추구하는 사람이 훨씬 많다는 점을 주목해야 합니다.
커뮤니티, 모임
다양한 행사와 모임들이 있습니다. 개발자 모임들이 다양하게 있는데요. 기본적인 개발과 관련된 것들을 기초부터 잘 알려주는 생활코딩 커뮤니티부터, 안드로이드 개발 관련 오픈 단톡방, 아이폰 개발 관련 오픈 단톡, 이상한 모임, 90년대생 개발자들을 위한 9xd를 비롯해서, 구글 개발자 그룹 (GDG) 와 같은 커뮤니티부터 아네모, 협업하는 퍼즐, AWSKRUG 그룹, 치킨 모임까지 다양한 커뮤니티 모임들이 있고, 스타트업 관련으로는 스밥, 스타트업 오픈톡, SAG 그룹 등등의 다양한 모임들이 있습니다.
커뮤니티에 참석한다고 꼭 좋은 개발자를 만날 수 있는 것도 아니고, 개발자의 입장에서는 꼭 사업을 염두하고 사람을 만나는 것이 아니기 때문에 기술과 개발 관련 교류를 더 많이 하려고 할 수 있지만, 이런 커뮤니티를 통해서 개발자와 소통할 수 있는 기회가 더 주어진다면 좋은 분들을 만날 수도 있으리라 생각합니다.
스타트업의 입장에서는
나랑 맞는 개발자, 나와 맞는 팀을 만나는 일이
무엇보다 중요한데요.
일단 생각만 한다면, 어떤 개발자도 만날 수 없습니다.
다양한 사람을 만나보고 생각을 교류하면서
어떤 개발자를 만날 것인지 찾아보면 좋을 것 같습니다.
맺음말
확실한 건 요새 개발자를 찾는 일은 어렵습니다. 특히 특화된 기술의 개발자들은 더 찾기 힘들고, 비용도 많은 비용을 받고 있습니다.
이런 상황 가운데, 스타트업을 시작하는 입장에서는
불합리한 상황과 문제들에 직면하기도 하는데요.
를 참고하시면 되는 데요. 개발자 입장에서도 불합리하고 동일한 문제들에 직면하기도 합니다.
하지만 이런 서로의 다름을 이해하고, 개발자의 노력과 고생들을 해서 하나씩 쌓아온 과정들을 같이 치하할 수 있는 분이라면, 그 매력으로도 다른 개발자들과의 원활한 소통이 일어날 것이라고 생각해봅니다.
여기엔 언급되지 않은 분야의 많은 개발직군들이 있습니다. 충분히 어떤 개발자들이 있는지 찾아보시고,
무작정 개발자를 모른다고 개발을 공부하는 것보다는
개발자를 잘 만나셨으면 좋겠습니다.
서로의 시간을 낭비하는 것이 아니라 서로의 목적을 이해하고 얼마만큼 서로를 이끌어 줄 것인지 고민해보시고 결정하면 좋겠단 생각이 듭니다.
스타트업 입장에서 FIT이 맞는 개발자를 꼭 얻으시길
바랍니다.
감사합니다.