All of Software 블로그를 RSS Feed에 등록을 해 놓으시면 편리하게 받아보실 수 있습니다.
RSS Feed
우리나라 소프트웨어 개발자들은 자신이 처음부터 일해온 바닥을 못 벗어나는 경향이 있습니다.
처음에 게임회사에서 일을 시작한 개발자는 계속 게임회사에서 일하고, 금융회사, 보안회사, 장비회사, SI회사 등 쉽게 그 바닥을 못 벗어나곤 합니다.
이러다 보니 개발자가 이직 시 선택의 폭이 좁아지고, 분야가 조금만 바뀌어도 자신의 Value가 확 줄어드는 현상이 일어나곤 합니다.이런 일이 비일비재하게 일어나는 것을 보면 개발자의 전문성이란 어디에 있는 것인지 궁금하지 않을 수 없습니다.
금융에 대한 전문지식을 많이 가지고 있고, 게임에 대한 많은 지식을 가지고 있는 것을 개발자의 전문성이라고 볼 수도 있습니다. 또 그러한 Domain 지식이 없으면 개발을 할 수 없다고 단정적으로 얘기를 하는 개발자도 많습니다.
소프트웨어 엔지니어가 소프트웨어를 개발하기 위해서는 크게 2가지의 지식이 필요합니다.
그 중 하나는 이미 앞에서 언급한 Domain 지식입니다.
그리고 또 하나는 Software Engineering 지식입니다.
Domain 지식은 개발 분야가 바뀌면 거의 쓸모가 없는 산업 지식이고, Software Engineering 지식은 개발 분야가 바뀌어도 항상 사용되는 지식들입니다.
Domain 지식은 너무 광범위해서 나열을 할 수는 없습니다.
하지만 Software Engineering 지식은 무엇인지 설명할 수 있습니다.
요구분석, 설계, 구현, 테스트, 소스코드 관리, 버그 관리, 프로세스 등 소프트웨어를 개발하기 위한 일련의 지식들입니다.
물론 소프트웨어를 개발하기 위해서는 Domain 지식과 Software Engineering 지식 모두가 필요합니다. 하지만 흔히 접하는 현상을 보면 개발자들이 점점 Domain 지식이 치중하는 경향이 있습니다. Software Engineering에 대한 전문성을 떨어진 상태에서 Domain 지식만 점점 늘어가니 당장 일은 잘하고 있는 것 같아도, 동료나 후배들과 협업이 잘 안되고, 프로젝트 규모가 조금만 커져도 문제가 있고, 이직 시에는 심각한 가치 하락이 발생합니다.
그럼 어떻게 해야 할까요? 소프트웨어를 개발하면서 자연스럽게 얻게 되는 Domain 지식에만 의존해서는 안됩니다. Software Engineering 지식을 꾸준히 발전시켜서 소프트웨어 전문가가 될 수 있도록 해야 합니다. Software Engineering에 능통한 소프트웨어 전문가가 된다면, 어느 소프트웨어 회사를 가더라도, 여전히 전문가로서 높은 가치를 가지고 개발을 할 수 있습니다. 새로운 분야로 이직을 하더라도 Domain 지식은 일을 하는 과정에서 차츰 배워 나갈 수 있습니다.
그리고 Domain 지식에 능통한 개발자에게만 의존해서 개발이 진행되는 소프트웨어 회사는 매우 큰 리스크를 안고 있는 겁니다. 그런 개발자가 한 명만 퇴사를 해도 회사는 큰 위험에 봉착합니다.
결국, 회사를 위해서도, 개발자들을 위해서도 개발 개발자들의 머리 속에 들어 있는 Domain지식에 의존하기보다는 적절한 개발 프로세스 및 시스템을 기반으로 개발을 해야 합니다.
전규현
소프트웨어이야기
Domain지식,
소프트웨어전문가,
이직
S/W 회사의 경영자들도 S/W를 잘 이해하지 못하는 경우가 많은가 보군요... ㅡㅡ;;
비 S/W 회사의 경영자가 S/W를 이해해 주길 바라는 것은 욕심이겠죠? ^^*
쎄오님 안녕하세요.
비SW출신 경영자가 SW를 제대로 이해하기는 불가능하죠. 그래도 다른 사람의 얘기에 귀를 기울이는 경영자는 SW전문가의 도움을 받을 수 있습니다.
CEO가 소프트웨어에 대한 이해는 있는데 경영에 대한 이해는 全無해서 망하는 경우도 있지 않나요? 물론 "소프트웨어에 대한 이해"의 범위를 어떻게 잡느냐에 따라 다를 수 있겠지만...
안녕하세요. Vincent님
CEO는 경영자입니다. 경영에 대해서 전혀 모른다면 CEO로서의 자격이 없습니다. CEO가 모든 분야의 전문가가 될 수 없으므로 부족한 부분은 CTO, CFO, COO등의 도움을 받을 수 있겠지만, 경영, 비즈니스를 모른다면 아예 자격이 없다고 생각합니다.
저는
지금까지 CEO, CTO, CFO등의 역할에 대해서 진지하게 고민을 해보지 않았던것 같습니다.
위의 리플들을 쭈욱 읽어보니 각 CEO, CTO, CFO들의 역할이 다 있는것 같다는 생각이 들었습니다.
제가 왜 이런 이야기를 하냐하면, 단지 CEO, CTO, CFO들은 높은사람, 높은자리에 있는사람이라고만
생각했고, CEO만 있어도 문제없을거라 생각했거든요?
좋은글 잘 읽고 갑니다.
더 노력해야겠다는 생각을 하고 갑니다.
안녕하세요. 땅콩맨님
감사합니다.