한국 회사와 불가리아 회사
필자는 꽤 오래 전에 비슷한 일을 하는 두 회사를 접했다. 두 회사 모두 웹프레임워크를 개발하는 회사였다. 한국 회사는 웹프레임워크를 솔루션 형태로 개발해서 3~5천만원을 받고 약간의 SI를 더해서 한국 회사들을 대상으로 영업을 하고 있었다. 고객 중에는 외국회사도 있었고, 매출을 꽤 일으키고 있었다. 보유 기술 자체는 좋았다. 하지만 기획, 스펙, 설계 같은 것은 제대로 된 것이 없었다.
필자는 꽤 오래 전에 비슷한 일을 하는 두 회사를 접했다. 두 회사 모두 웹프레임워크를 개발하는 회사였다. 한국 회사는 웹프레임워크를 솔루션 형태로 개발해서 3~5천만원을 받고 약간의 SI를 더해서 한국 회사들을 대상으로 영업을 하고 있었다. 고객 중에는 외국회사도 있었고, 매출을 꽤 일으키고 있었다. 보유 기술 자체는 좋았다. 하지만 기획, 스펙, 설계 같은 것은 제대로 된 것이 없었다.
우리나라 회사에서 후배를 키우는 가장 흔한 방법은 '사수 부사수 시스템'이다. 필자도 오래 전부터 사수 부사수 시스템을 많이 봐왔고, 지금도 매우 일반적인 방식이다. 이 용어는 군대에서 유래했다. M60 기관총 등 중화기들은 대부분 2명 이상이 운용해야 하고 사수와 부사수가 같이 장비를 다룬다. 영화 속 람보는 M60 기관총을 혼자서 양손에 하나씩 두개를 들고 쐈지만, 원래는 2명이 쏴야 하는 무기다. 이런 사수 부사수 시스템에서는
나쁜 회의 문화가 회사를 망친다. 잦은 회의와 장시간 회의 때문에 일 할 시간이 없다고 하소연하는 사람이 많다. 특히, 고참 개발자들에게는 그 폐해가 더 크다. 개발과 회의는 두뇌의 모드가 완전히 달라서 섞어서 하게 되면 개발 효율이 나지 않고, 많은 회의에 끌려 다니다 보면 어느새 개발자로서의 정체성을 잃어버리게 된다. 이런 시간이 지속되면 개발자의 경력에서 벗어나 돌아올 수
스펙을 잘 쓰는 것은 소프트웨어 프로젝트를 성공하기 위한 가장 중요한 요소중 하나라는 것은 이미 수차례 강조한 얘기다. 스펙을 적절히 제대로 작성하지 않았다는 얘기는 건설에서 설계도를 제대로 만들지 않고 건설을 하는 것과 같이 소프트웨어 프로젝트에서도 여러가지 문제를 야기시킨다. 프로젝트가 종료 일정을 지키지 못할 가능성이 높다. 소프트웨어 아키텍쳐가 엉망이 될 가능성이 높다. 소프트웨어 품질을 보장하기 어렵다. 개발자들이
우리나라에는 뛰어난 프로그래머가 참 많다. 우리나라에서 연봉 4천만원 받는 개발자의 능력과 하는 일을 보고 외국의 억대 연봉 개발자가 입이 떡 벌어졌다는 우스개 소리가 인터넷에 떠돌고 있다. 전혀 근거가 없는 얘기는 아니다. 우리나라에서는 개발자가 많은 분야의 일을 해야 하고 밤을 지새면서 엄청난 양의 일을 소화하곤 하기 때문에 일단 많이 배우고 매우 빠르고 숙달되어 있다. 하지만 이것도
프로젝트의 규모가 클수록 프로젝트 실패 확률은 증가한다. 우리는 주변에서 실패한 소프트웨어 프로젝트를 보는 것이 그리 어려운 일은 아니다. 프로젝트의 규모가 커지고 기간이 길어지며 많은 인원이 투입될수록 프로젝트 실패 확률은 증가한다. 프로젝트 성공을 위해서는 프로젝트를 제대로 진행하는 방법을 연구하는 것도 필요하지만 프로젝트가 왜 실패했는지 살펴보는 것도 도움이 될 것이다. 프로젝트 실패에 대한 기준은 제각각이다. 그래서 어떤
소프트웨어 회사에서 가장 중요한 기업 문화 "공유" 많은 사람들이 소프트웨어 회사에서 가장 중요한 기업 문화 중 하나로 '공유 문화'를 꼽는다. 비단 소프트웨어 회사만의 이슈는 아닐 것이다. 공유에 문화라는 이름이 붙으려면 구성원 대부분이 자연스럽고 일상적으로 정보를 공유해야 한다. 공유가 중요한 이유는 소프트웨어 개발은 집단지성이 작동해야 하는 대규모 지식 산업이기 때문이다. 정보와 지식이 한사람의 머리 속에 머무르지
우리나라의 많은 기업들은 글로벌 수준의 소프트웨어 개발 역량 확보에 실패했다. 10년 전쯤부터는 막대한 자본을 투입해서 개발자 확보 및 소프트웨어 개발에 투자를 하더니 이제는 소프트웨어는 실패했다는 자성을 하고 있다. 돈과 사람을 아무리 투자해도 10년이라는 단기간(?) 내에는 글로벌 수준의 소프트웨어 개발 역량 확보는 쉽지 않다. 많은 기업들이 소프트웨어 개발 역량 확보를 위해서 주로 선택한 방법은 세계적인 방법론과