목요일, 4월 20, 2006

소프트웨어 개발자로 30년

소프트웨어 개발자로 30년을 일할 것이라는 소만사 대표 김사장. 개인적인 의견으로는 이 사람은 더 이상 소프트웨어 개발자가 아니다. 한 사람의 경영자이다. 개발자 '출신' 경영자라고 해 두자. 일련의 기사(소프트웨어 개발자여 람보가 돼라, 소프트웨어 개발자로 30년)로 느낀 것이지만, 개발자에 대한 환상을 품고 있는 사람이 거의 확실하다.

먼저, 많은 SW 업체들이 외국제품과 비슷한 SW를 개발하는 이유는 적은 예산/기간으로 성공률 높은 소프트웨어를 개발하는 방법이 그것 밖에 없기 때문이다. 몇 개의 소프트웨어가 실패를 하더라도 버틸 수 있을 정도의 자금력을 가진 SW업체는 드물기 때문에 어쩔 수 없이 외국의 성공한 SW를 벤치마킹하여 소프트웨어를 개발할 수 밖에 없고, 결국 장기적인 경쟁력 부재에 시달릴 수 밖에 없는 구조를 가지고 있다. 경쟁력 부족한 것이야 뻔한 결과이지만, 일단 발등의 불을 꺼야 하는 업체들은 장기적 경쟁력을 돌아볼만한 여유가 없을 것이다.

한 사람이 중요 모듈을 1~2년 개발하고 그 사람 외에 아무도 그 모듈에 대해서 모른다면, 잘못된 부분은 그 개발자가 아니라 그렇게 되도록 만들어진 회사의 개발 체계다. 모 회사에는 'Technical Writer' 라는 업무를 풀타임으로 담당하는 사람이 있다. 이 사람의 임무는 개발자들이 끄적거려놓은 것을 문서화 하는 것. 물론 개발자들은 대부분 악필이기 때문에 가끔가다 오타가 존재한다. 그런것은 개발자가 다시 한 번 보고 고쳐주면 그만, 개발자는 개발에 집중을 한다. 이런 technical writer가 없으면서 모듈을 다른 사람이 모르도록 만들어놓은 개발자를 탓하는 것은 개발자들에게 너무 많은 것을 바라는 것이다.

그리고 제대로 개발을 한다면, 김사장 말대로 '눈앞이 깜깜해질 정도'로 집중을 할 때도 있다. '끊임 없지 주변상황을 보고 경쟁회사의 기술동향을 파악'하면서는 눈앞이 깜깜해질 정도로 집중할 수 없다. 한 개발자에게 '눈앞이 깜깜해질 정도의 집중'을 요구하면서 '끊임없이 주변을 살펴 봐'야 하는 것을 동시에 요구하는 것은 좀 요구사항이 많아 보인다.

개발이 전문적이라 2주에 끝낼일을 1달 걸려 완성한다면, 그것은 일의 양을 제대로 파악할 수 없는 중간관리자의 무능을 뜻하고, 아울러, 일찍 끝낼때의 보상이 없다는 것을 뜻한다. 결국 능력에 따른 대우가 부재할 때 나타나는 현상일 뿐이다. 이 역시 소프트웨어 개발 체계가 미흡할 때 나오는 한 가지 현상이다.

개발자는 개발자이다. 일차적인 개발자의 임무는 주어진 기능을 하는 소프트웨어를 개발하는 것. 나머지 문서화라던지, EQ라던지... 부수적인게 높으면 좋겠지만, 슈퍼맨을 고용하지 않는 한 그것은 불가능하다. 슈퍼맨에 의지해야만 회사가 발전할 수 있다면 그 회사는 뭔가가 잘못된 회사다.

단지 이 기사를 다른 각도에서 생각해 보자, 김 사장이 소프트웨어 개발자가 아니고, 소프트웨어 개발자 출신의 경영자라고 전제를 깔고, 소프트웨어 개발자의 능력에 대한 기대치가 매우 높아 많은 것을 기대한다고 생각하면 대략 이해가 가능하다. 여기에 대한 나의 개인적 평가는:

김사장님, 꿈도 야무지십니다.

댓글 2개:

익명 :

요즘 jrogue군 개발자 사이에 오가는 농담:

"뭘 걱정해? _김_사장 시켜서 이 주일만에 만들어오게 하자구."

- jrogue

파름 :

오... 괜찮은 아이디어군...

그래... 견적은?