본문 바로가기
IT 놀이터/General

[소프트웨어 공학] CTO 의 역할은 아무나 대신하지 못한다.

by 돼지왕 왕돼지 2012. 4. 11.
반응형



안녕하세요 돼지왕 왕돼지입니다.

오늘은 "CTO의 역할은 아무나 대신하지 못한다" 를 주제로 이야기하고자 합니다.

이 글은 "글로벌 소프트웨어를 꿈꾸다." 의 내용을 요약 정리한 내용입니다.


19. CTO 의 역할은 아무나 대신하지 못한다.

- 벤처투자가가 벤처회사에 투자할 때 보는 첫번째 조건은 CTO 가 있는가이다. CTO 가 없으면 일단 탈락이다. CEO 가 없으면 벤처 투자가가 구해 줄 수 있지만, CTO 는 구해줄 수 없기 때문이다.

-  CTO 는 인사관리를 하지 않는다. CTO 는 그 회사의 기술에 관한 모든 것을 책임지는 사람이다. 아래 직원이 정리해온 정보를 가지고 결정하는 것은 CTO 가 아니라 관리직에 있는 연구소장 같은 사람이 하는 일이다. CTO 는 모든 기술을 본인이 직접 다뤄봤어야 하며, 본인이 직접 통달하고 있어야 한다. 어떤 기술적 질문이 나와도 다 답할 수 있어야 CTO다.





20. 관리자는 기술 전문가가 될 수 없다.

- 전문개발자가 되려면 인사관리를 할 시간이 없다. 즉 관리자가 될 수 없다. 반대로 관리자의 경로를 가는 사람은 관리자와 개발자가 하는 일이 다르고 결정사항도 다르다는 것을 분명히 알고, 기술에 관한 한 개발자의 결정을 존중하고 따라야 한다.

- "과거를 자랑하지 마라. 자랑할 과거밖에 소유한 것이 없을 때 처량해진다." 라는 셰익스피어의 말처럼 과거의 추억은 아름답지만, 자랑의 대상은 아니다. 관리자는 개발자가 조사해온 자료를 가지고 판단한다. 개발자가 Garbage 를 들고 오지 않도록 조직을 관리하는 것이 관리자의 역할이다.





21. 200의 능력을 가진 회사가 100에 만족하면 위험하다.

- "과거에 성공을 거두는 데 도움을 주었던 제품, 프로세스, 조직 형태가 이제는 파멸의 원인이 되는 경우가 많다. 여기서 생존 기업이 되려면 제 1법칙은 뚜렷해진다. 즉 과거의 성공을 미래의 가장 위험한 요소로 파악해야 한다."

- 항상 편할 떄 더 힘들게 일해야 한다. 메기경영처럼 항상 자극을 받아서 더 앞으로 나가려고 해야 한다. 





22. 소프트웨어 회사의 종류

- 소프트웨어 회사를 분류할 수는 있지만, 분류와 상관없이 본질은 같다. 모든 소프트웨어 회사는 스펙을 작성해야 하고, 변화무쌍한 고객과 스펙을 조율하며 살아야 하고, 또 빡빡한 일정은 당연한 것이고, 그 일정에 맞추어 어려운 프로젝트를 수행해야 한다. 그러기 위해서는 회사에 잘 정비된 조직, 적절한 프로세스, 유연한 문서작성법, 개발을 도와주는 기반 시스템, 이런 것들을 수용하는 문화 등이 정립되어 있어야 한다. 많은 부분이 경영진의 책임임은 말할 것도 없다.





23. 임베디드 소프트웨어의 본질, 컴포넌트와 인터페이스

- 임베디드 소프트웨어는 일반 소프트웨어에 비해 성능이 중요하며, 하드웨어 비용 문제를 고려해야 하는 등의 추가적인 다른 점이 있다. 하지만 "컴포넌트" 와 "인터페이스" 라는 점에서 본질은 같다.

- 분석단계의 결과물인 SRS( Software Requirements Specification )은 컴포넌트를 가지고 있고, 이런 컴포넌트들은 인터페이스로 서로 연결되어 있다. 소프트웨어 파트인가 하드웨어 파트인가 구분할 필요도 없다. 컴포넌트와 인터페이스 정의만 잘 되어있다면, 각 컴포넌트를 잘 구현하고 인터페이스로 연결만 해주면 된다. 





24. 영업팀과 개발팀의 다툼은 건전한 것이다.

- 영업팀은 이번 고객은 진짜 중요한 고객이라서 무조건 빨리 개발해야 한다고 항상 말한다. 그리고 개발팀에서는 항상 인력이 모자라니 개발팀 일정대로 가자고 이야기한다. 어느 쪽이 힘이 더 세다면 문제가 된다. 

- 근본적으로 영업팀과 개발팀은 서로를 이해하지 못한다. 영업팀이 개발에 대한 통찰력을 갖기는 힘들고, 개발팀이 영업팀의 고충을 가슴으로 느끼기도 힘들다. 이 두 팀이 잘 맞는다고 하면 회사에 심각한 문제가 있는 것을 의미한다. 영업은 하나의 고객만 있더라도 당장 제품을 판매해야 하고, 개발팀은 선행연구도 해야 하고, 유지보수도 해야 하고, 버전도 최소화해야 하고, 컴포넌트화된 산뜻한 제품도 만들어야 하기 때문이다. ( 이는 오래 걸린다. )

- 영업팀과 개발팀의 다툼을 조율하는 부서는 마케팅 부서이다. 마케팅 부서는 제품 기획과 판매 전략 등을 비교적 단기 전략과 중장기 전략 모두 균형 있게 고려한 계획을 짠다. 





25. 꺠진 유리창 법칙.

- 소프트웨어 회사에서 프로세스를 만들기는 정말 어려워도 무너지는 것은 한순간이다. 따라서 프로세스는 잘 만드는 것만큼이나 지키는 것이 중요하다. 

- 개발자가 조그마한 규칙을 하나씩 깨뜨리기 시작하는 순간, 그것은 암세포처럼 번져서 회사 전체의 프로세스가 깨질 수 있다. 따라서 이렇게 되지 않도록 만드는 것이 회사, 경영자, 관리자가 할 일이다. 이들은 항상 회사에 깨진 유리창이 있는지 상시 돌아보고 정비해야 한다. 





26. 시장은 창조하는 것이다.

- "미래는 예측하지 말고 창조하라", "우리는 미래를 예측할 수 없다. 대신 미래를 창조할 수 있다.", "미래를 예측하는 가장 좋은 방법은 미래를 만드는 것이다."

- 예측은 해야 한다. 하지만 예측대로 되는 경우가 거의 없다. 그러니 창조를 해야 한다. 창조를 위해서는 Analyst 의 평가를 잘 받는 것도 중요하고, 가트너나 IDC 같은 연구조사기관과도 관계를 가지고 있어야 한다. 이런 기관들은 대기업의 미래 방향을 미래의 시장으로 예측하고 발표한다. 이렇게 시장은 그 방향으로 흘러가고, 생성되는 것이다. 


도움이 되셨다면 손가락 꾸욱~




 
반응형

댓글