필자가 '오너 프로그래머(owner programmer)'라는 용어를 아래 링크한 글에서 처음 사용한 이후 과분하게도 많은 분들이 읽고 공감해 주셨다. 하지만 온라인 또는 오프라인에서 문제점을 지적하거나 부정적인 의견을 주신 분들도 적지 않다.


이 글은 위 링크 글의 후기(後記)로서 주로 위 글에 대해서 의문을 표한 부분에 대한 필자의 생각이다.

그렇다고 반론(反論)은 아니다. 왜냐하면 위 글의 문제나 부정적 의견에 필자가 충분히 공감하기 때문이다.




1. '오너 프로그래머(owner programmer)'가 말이 되나? 가능한가?


우선 '프로그래밍하는 소프트웨어 개발 회사 창업자'라는 뜻으로 사용했던 '오너 프로그래머(owner programmer)'라는 용어에 대해 신선하다는 반응이 많았다.

그러나 소프트웨어 전문가의 눈으로 보면 과연 이게 말이 되는지 가능한 얘긴지 의문이 든다.

결론을 말하지면 가능이야 하겠지만 그리 바람직하지 않다는 생각이다.


필자에게 '오너 프로그래머'는 좋은 말도 나쁜 말도 아니다. 그저 필자의 현재 상태를 표현하는 말이고 우리나라 프로그래머가 처한 슬픈(?) 현실에서 선택한 단어이다.


오너 프로그래머는 말하자면 CEO(Chief Executive Officer), CFO(Chief Financial Officer), CTO(Chief Technology Officer) 등 온갖 C로 시작하고 O로 끝나는 역할을 다하고, 거기다가 분석, 설계, 코딩 등 모든 개발을 다한다는 의미가 강하다. 그래서 말이 안된다.

창업 초기에나 가능한 얘기고 사업이 안정되면 당연히 프로그래머 보다는 오너의 역할을 수행하는 게 바람직하다.


소프트웨어 회사의 생존에는 확실히 오너 프로그래머가 유리하다.

우선 제품 개발에 시간과 비용을 크게 절감할 수 있다. 이는 소프트웨어에 혼을 담을 수 있는 가장 적임자이기 때문이다.

개발한 제품의 유통에도 절실함이라는 가장 큰 열정 요소가 있으니 이 또한 적임자가 아니겠는가.


문제는 회사의 생존을 넘어 안정 단계에 들어서도 프로그래머 역할을 멈추기가 쉽지 않다는 데에 있다.

우리나라에서 순수한 소프트웨어 단일 제품으로 한 회사에서 연간 10억원 이상의 매출을 올릴 수 있는 아이템이 그리 흔치 않다.

따라서 개발 업무량에 맞는 정적 인원의 개발팀을 유지하기가 어려운 현실에서 오너 프로그래머는 쉽사리 프로그래밍을 그만 두지 못한다.

아마도 오너가 프로그래머 역할을 멈추는 순간 회사의 수익은 급감할 수도 있다. 물론 그러고도 원하는 만큼의 수익이 나야 진짜 안정 단계라 할 수 있다.


예전에 경영학을 전공하고 스마트폰 앱 개발 회사를 창업한 20대 청년이 개발팀을 유지하기 어려운 현실 때문에 프로그래밍을 공부하고 직접 개발에 뛰어 드는 게 어떻냐는 고민을 상담해온 적이 있다.

필자는 바람직하지 않은 방법이라고 말했으나 생존을 위해 그 방법 밖에 없으면 그리하라고 했다.


오너 프로그래머는 회사의 생존에는 유리하나 회사를 크게 성장시키는 데에는 제약이 된다.


2. 소프트웨어 회사 창업의 목표가 '성공'이지 '생존'은 아니지 않나?


올 초에 만화를 원작으로 한 '미생(未生)'이라는 드라마가 있었다. 불안정한 직장 생활의 애환을 그리고 있어 많은 사람들이 크게 공감하여 인기를 끌었다.

그런데 그래도 거기에 나오는 회사는 우리가 흔히 생각하는 회사의 일반적인 형태를 갖춘 '완생(完生)' 회사로 보인다.


모든 창업이 그렇듯이 소프트웨어 회사도 창업 후 언제 망할 지 모르는 미생의 불안한 세월을 보내게 된다.

사람이나 회사나 미생인 건 마찬가진데 어찌보면 회사의 미생이 더 큰 문제라고 볼 수 있다.


창업이란 설레는 일이다. 그런데 생존 자체가 불확실하고 확률이 낮은 현실에서 '성공'이란 꿈만으로 시작한 회사가 망하는 경우는 흔하다.

그래서 생존과 성공의 기준을 구체적으로 정하는 게 좋다. 예를 들어 본인의 수입(돈)을 기준으로 한다면 최소치와 최대치를 정하고 최소치 이하는 생존하지 못하는 거고 최대치 이상은 성공한 것이다.


그런데 필자는 최대치는 정하지 않는다. 따라서 성공이란 말은 잘 쓰지 않거나 생존과 같은 의미로 사용하기도 한다.


3. 프로그래머가 해당 업무 분야의 전문가는 아닌데 다양한 여러 분야의 개발 경험이 낫지 않나?


사실 소프트웨어 개발에 경력이 쌓이다 보면 어떤 분야이든 해당 분야를 깊게 알지 못해도 분석과 설계를 할 수 있게 된다.

따라서 개발자로만 살겠다면 굳이 하나의 업무 분야를 전문으로 개발 경력을 쌓을 필요는 없다.


그러나 창업을 염두에 둔다면 어느 한 분야에 전문성을 갖추는 게 더 유리하다.

창업 아이템 관련 자료나 정보 그리고 지식이 많을 수록 좋고 그동안 쌓은 인맥 활용에도 많은 도움이 된다.

특히 소프트웨어가 개발되면 유통이 중요한데 시장 개척에는 아무래도 해당 분야의 오랜 경력이 큰 도움이 된다.


4. 투자를 받지 않고 평생 직장, 평생 직업으로의 창업이 과연 바람직한가?


흔히 스타트업(startup)해서 투자받아 제품 완성하고 엑싯(exit)하는 방식의 창업을 꿈꾼다. 나쁘지 않다. 실제로 그렇게 창업하여 성공한 사람들도 온라인에서 많이 접할 수 있다.

그런데 문제는 그런 선순환 구조의 생태계에 내가 속할 수 있느냐 하는 점이다. 확률이 희박한 일에 매달리다 보면 정신 건강에 좋지 않다.

아마도 결국에 투자할 만한 사람은 이른바 '3F' 밖에 없을 것이다. Family(가족), Friends(친구) 그리고 Fool(바보). 이나마라도 있으면 다행이다.


따라서 투자 받기 보다는 본인의 능력으로 창업하여 좋은 회사 만들고 생존할 방법을 모색하는 게 우선이다.

물론 그러다가 투자받아 크게 성공할 기회가 있다면 굳이 마다할 이유는 없다.


5. 개발자는 여러 역할이 있는데 코딩에 초점을 맞추는 것은 너무 근시안적이지 않나?


보통의 이상적인 소프트웨어 개발회사라면 당연히 분석, 설계, 코딩, 테스트 등의 업무 영역을 전문 인력으로 나누어 팀을 구성해야 한다.

그런데 회사에 인력이 거의 없는 창업 초기에는 그럴 수 없다. 게다가 위에서 언급했듯이 시장이 걸맞게 크지 않은 환경에서 이런 이상적인 팀을 갖추는 것은 생존 자체를 위협한다.


따라서 다 갖출 수 없다면 어쩔 수 없이 코딩 능력자가 우선이라는 뜻이다.

그리고 어차피 소프트웨어 제품의 기획과 분석은 오너 프로그래머의 몫일 터이니 코딩 잘하는 개발자가 절실하다.


"굶어 죽어도 작은 회사에는 들어가지 않는다"는 요즘 세태에서 코딩 능력자를 뽑기도 매우 어려운 일이다.

우리나라 소프트웨어 업계에 아키텍트나 분석가는 드물어도 프로그래머는 많다는 얘기들을 흔히 한다. 헌데 그 많은 프로그래머들도 작은 기업에서 뽑으려면 없다.

이것이 오너가 프로그래밍을 할 수 밖에 없는 또 하나의 이유이기도 하다.


6. 오너(owner)는 왜 하나 그냥 프로그래머(programmer)로 살지?


창업은 설레는 일이기도 하지만 매우 위험한 일이다. 성공 보다 실패할 확률이 더 높다고 할 수 있다.

필자 또한 창업해서 망한 전력을 가지고 있다. 한번 망해보니 설레기는 커녕 불안한 마음이 가득했다.


그러면 그냥 다시 취업해서 안전하게 프로그래머로 살 것이지 창업은 왜 또 했나?


우리나라에서 비교적 크고 안정된 직장에서 나이 40이 넘어서도 소프트웨어 개발자 경력으로 살아가기란 매우 어렵다.

어느 순간 관리직이나 영업직으로 넘어가게 되어 있고 소프트웨어 기술직으로 고위 직급에 오르는 루트가 거의 없다.

물론 관리직이나 영업직으로 전환한다고 못할 것도 없다. 문제는 이 또한 보장된 루트는 없다는 점이다.


그래서 할 수 없이 다시 오너 프로그래머의 길을 택했다. 선택의 문제라고 본다.


7. 우리나라에서 오너 프로그래머가 운영하는 회사는 구체적으로 어떤 모습이어야 하나?


그렇다면 오너 프로그래머의 소프트웨어 회사는 구체적으로 어떤 모습인지 묻는 분들이 있다.

여기에 필자의 생각을 적어 본다. 그런데 주의할 점은 이것이 결코 소프트웨어 회사의 바람직한 모습이 아니라는 점이다. 프로그래머라는 역할을 넘어서 크게 성장하는 회사가 바람직하다.

그리고 오해가 있을 것 같아 또 한가지 밝혀둘 점은 이것은 필자 생각의 기준이지 현재의 필자 회사의 상태가 그렇다는 것은 아니다.


오너 프로그래머의 소프트웨어 회사가 생존을 넘어 안정 단계에 들어섰을 때의 모습

(1) 직원이 10명을 넘지 않는다.

(2) 야근이 없다.

(3) 월급이 밀리지 않는다.

(4) 실제적인 부채가 없다.

(5) 현금성 자산이 3년 이상의 총 인건비를 넘는다.

(6) 근무하는 사무실이 회사 소유다.

(7) 오너 프로그래머의 연봉이 1억 5천만원 이상이다.


위와 같은 모양새를 갖추는데 걸리는 시간은 오너 프로그래머의 능력과 주변 여건에 따라 다를 것이다. 만약 창업 후 5년 이내에 이루었다면 대단한 능력자이거나 억세게 운이 좋은 사람이다.


'오너 프로그래머(owner programmer)'는 그리 좋은 용어가 아니다. 하지만 위에서 언급한 회사의 모습에 스스로 만족한다면 그리 나쁜 용어도 아니다. 

다시 한번 강조하지만 위 모습의 소프트웨어 회사를 궁극적인 목표로 할 수는 없다. 이것을 넘어서 오너 프로그래머가 CEO나 CTO의 역할로 자리잡고 크게 성장하는 게 바람직하다.



출처: http://blog.naver.com/birdparang/220397780615