수많은 소프트웨어 회사들이 첫번째 성공을 거두고 나서 두번째 도약에 실패하고 사라져간다.
물론 첫번째 성공도 어렵지만 이미 성공의 경험이 있고 방법을 알고 있는 회사들이 두번째 또는 세번째에는 많이 실패하는 이유가 무엇일까?
두번째에는 첫번째와 환경이 많이 바뀐 것이 한 원인이다. 그래서 첫번째에는 주먹구구와 열정만으로도 성공을 할 수 있었지만 두번째에는 안통하는 것이다. 그럼 무엇이 그렇게 바뀌었을까?
수재 vs. 일반인
대부분의 첫번째 성공을 거둔 회사는 아주 똑똑한 소수의 수재급의 개발자들이 주도를 해서 성공을 이루었다. 하지만 회사가 커진 상황에서는 대부부분의 개발자들은 평범한 개발자들로 구성이 되어 있고 과거처럼 척척 알아서 일이 진행되지 않는다.
선두 주자 vs. 치열한 경쟁
과거에 제품을 처음 만들 때는 시장의 선두 주자이거나 경쟁사가 별로 없었지만 이제는 경쟁도 치열해지고 가격도 과거처럼 넉넉하게 받기도 어려워졌다.
작은 제품 vs. 거대한 제품
최초의 제품은 꼭 필요한 기능만 아주 잘 만든 제품이었다. 하지만 수년이 흐른 지금은 기능도 몇 배가 늘었고 Architecture도 엄청나게 복잡해졌다. 뭐 하나 기능을 추가하려고 해도 과거보다 몇 배 오래 걸린다.완전히 새로 만들어야 한다는 요구가 빗발치지만 워낙 기능도 많고 다 파악이 안되서 다시 만들기도 어렵다.
작은 조직 vs. 커버린 조직
옛날에는 몇 명 안되는 회사에서 서로의 생각도 다 알 정도였는데 이제는 직원들이 하도 많아서 이름도 다 모른다. 누가 무슨 일을 하고 있는지 파악도 안된다.
체력 vs. 노쇄
몇 년 전만 해도 야근을 연속으로 해도 체력이 끄떡 없었는데 이제는 나이가 먹어서 야근을 하면 체력적으로 못 버틴다.
집중 vs. 분산
과거에는 회사에 개발 이외에는 이슈가 없어서 90% 개발만 했다. 하지만 이제는 유지보수 이슈도 많고 사이트 지원도 많아서 개발에 집중하기가 어렵다. 게다가 팀장까지 맡아서 조직관리를 해야 해서 개발에는 시간을 내기가 정말 어려워 졌다.
소수의 고객 vs. 많아진 고객
처음부터 고객별로 지원을 철저히 하다보니 고객이 몇 안될 때는 고객 만족도도 높고 개발 할만 했다. 하지만 고객수가 열배 이상 늘다보니 개발자가 아무리 늘어나도 고객 지원하는데 너무 많은 시간을 빼앗겨서 정작 제품 개발은 더 힘들어졌다.
열정 vs. 정치
과거에는 모든 개발자들이 열정 하나로 정말 열심히 했다. 그런데 지금은 실력도 없는 자들이 순전히 정치력으로 윗자리를 차지하고 앉아있다. 이럴 줄 알았으면 나도 개발보다 정치에 신경 쓸 것을 하며 후회한다.
결론
위에서 언급한 여러 원인으로 두번째 도약이 어렵거나 쇄퇴의 길을 걷고 있는 회사들은 빨리 첫번째 성공했던 기억은 버려야 한다. 더이상 통하지 않는 방법이다.
제대로 했다면 첫번째나 두번째는 성공의 원리는 같다. 하지만 첫번째에는 여러가지 조건으로 인해서 주먹구구 방식이라 하더라도 성공할 수 있었던 것이다.
하지만, 평범한 사람들을 데리고 엄청 많아진 고객과 커져 버린 제품을 제대로 개발하려면 다시 원칙으로 돌아와야 한다. 두번째 성공의 길은 원칙을 잘 지켜서 개발을 하는데 있다. 더이상 주먹구구는 통하지 않는 때가 된 것이다.
물론 첫번째 성공도 어렵지만 이미 성공의 경험이 있고 방법을 알고 있는 회사들이 두번째 또는 세번째에는 많이 실패하는 이유가 무엇일까?
두번째에는 첫번째와 환경이 많이 바뀐 것이 한 원인이다. 그래서 첫번째에는 주먹구구와 열정만으로도 성공을 할 수 있었지만 두번째에는 안통하는 것이다. 그럼 무엇이 그렇게 바뀌었을까?
수재 vs. 일반인
대부분의 첫번째 성공을 거둔 회사는 아주 똑똑한 소수의 수재급의 개발자들이 주도를 해서 성공을 이루었다. 하지만 회사가 커진 상황에서는 대부부분의 개발자들은 평범한 개발자들로 구성이 되어 있고 과거처럼 척척 알아서 일이 진행되지 않는다.
선두 주자 vs. 치열한 경쟁
과거에 제품을 처음 만들 때는 시장의 선두 주자이거나 경쟁사가 별로 없었지만 이제는 경쟁도 치열해지고 가격도 과거처럼 넉넉하게 받기도 어려워졌다.
작은 제품 vs. 거대한 제품
최초의 제품은 꼭 필요한 기능만 아주 잘 만든 제품이었다. 하지만 수년이 흐른 지금은 기능도 몇 배가 늘었고 Architecture도 엄청나게 복잡해졌다. 뭐 하나 기능을 추가하려고 해도 과거보다 몇 배 오래 걸린다.완전히 새로 만들어야 한다는 요구가 빗발치지만 워낙 기능도 많고 다 파악이 안되서 다시 만들기도 어렵다.
작은 조직 vs. 커버린 조직
옛날에는 몇 명 안되는 회사에서 서로의 생각도 다 알 정도였는데 이제는 직원들이 하도 많아서 이름도 다 모른다. 누가 무슨 일을 하고 있는지 파악도 안된다.
체력 vs. 노쇄
몇 년 전만 해도 야근을 연속으로 해도 체력이 끄떡 없었는데 이제는 나이가 먹어서 야근을 하면 체력적으로 못 버틴다.
집중 vs. 분산
과거에는 회사에 개발 이외에는 이슈가 없어서 90% 개발만 했다. 하지만 이제는 유지보수 이슈도 많고 사이트 지원도 많아서 개발에 집중하기가 어렵다. 게다가 팀장까지 맡아서 조직관리를 해야 해서 개발에는 시간을 내기가 정말 어려워 졌다.
소수의 고객 vs. 많아진 고객
처음부터 고객별로 지원을 철저히 하다보니 고객이 몇 안될 때는 고객 만족도도 높고 개발 할만 했다. 하지만 고객수가 열배 이상 늘다보니 개발자가 아무리 늘어나도 고객 지원하는데 너무 많은 시간을 빼앗겨서 정작 제품 개발은 더 힘들어졌다.
열정 vs. 정치
과거에는 모든 개발자들이 열정 하나로 정말 열심히 했다. 그런데 지금은 실력도 없는 자들이 순전히 정치력으로 윗자리를 차지하고 앉아있다. 이럴 줄 알았으면 나도 개발보다 정치에 신경 쓸 것을 하며 후회한다.
결론
위에서 언급한 여러 원인으로 두번째 도약이 어렵거나 쇄퇴의 길을 걷고 있는 회사들은 빨리 첫번째 성공했던 기억은 버려야 한다. 더이상 통하지 않는 방법이다.
제대로 했다면 첫번째나 두번째는 성공의 원리는 같다. 하지만 첫번째에는 여러가지 조건으로 인해서 주먹구구 방식이라 하더라도 성공할 수 있었던 것이다.
하지만, 평범한 사람들을 데리고 엄청 많아진 고객과 커져 버린 제품을 제대로 개발하려면 다시 원칙으로 돌아와야 한다. 두번째 성공의 길은 원칙을 잘 지켜서 개발을 하는데 있다. 더이상 주먹구구는 통하지 않는 때가 된 것이다.
아... 제 고민을 차분하고 논리정연하게 표현해 주셨네요. 좋은 글 감사합니다.
답글삭제잘 읽고 갑니다.
답글삭제안녕하세요. 디밥님
답글삭제반갑습니다.
hongyver님 반갑습니다.
답글삭제어떻게 보면 유지보수가 발목을 잡는게 아닐까 싶긴해요.
답글삭제적당한 단종시점이 그래서 개발에 중요한것 같긴한데 영업에서는 매출이 나오고 있는 녀석이나 단종시키고 싶지 않아하고 ㅎㅎ 이래저래 딜레마인것 같아요.
안녕하세요. 구차니님
답글삭제유지보수 전략은 제품을 개발초기부터 신중하게 고려가 되어야 합니다. 하지만 대부분은 아무 생각없이 개발만 해놓고는 유지보수에 너무 많은 비용을 쏟아 붑니다.
비전과 비즈니스 전략이 있어야 하고 그에 따라서 제품 전략이 나와야 하는데 보통 별 생각이 없이 진행되죠.