개발자로 살아오면서 몇가지 의문이 들기 시작한다.
소프트웨어는 제품일까? 그리고 실체가 있는걸까?


옛날에 "제품"을 생산하던 시절...
즉, 공장에서 물건을 찍어내던 시절에는

불량률을 줄이고 ... 공장을 계속 가동해서 제품을 많이 찍어내는 대량생산을 하는 기업이 우위를 점했다.



그러고 어느날...세월이 흘러흘러...컴퓨터라는 이상한 기계가 들어왔고...
얼마 안지나서 소프트웨어 산업도 생겨난다.


제품을 생산하는것과 유사하게 몇 가지 방법을 적용해 보기 시작한다.
버그를 줄이기위한 다양한 툴과 규칙을 정의하고,
생산성향상을 위해 다양한 방법론도 만든다.

여기서 잠깐...
근데 이제부터 내가 의문을 품었던 문제가 발생된다.

소프트웨어는 제품일까?

하드웨어와 다르게 소프트웨어는 copy 만 하면 동일한 제품이 만들어진다.
즉, 기존에 공장에서 찍어내는 작업이copy 명령으로 무한정 생산이 될수 있다는것이다.

그럼 소프트웨어는 생산성에 대해서 만세!!! 를 부를수 있을까?



하지만....불행하게도 내 경험상...그리고 현실은 그렇지 않다.
필요한 요구에 맞춰서 수정하고 조합하는 작업이 필요하다는것이다.
하지만... 기냥 공장시절의 옛날 논리를 대입한다.

생산성을 높이려면... 가동률을 높여야해!!!!!


결국 이런 논리로 개발자를 계속 가동(?!) 시킨다.



소프트웨어라는 시장에서는... 동일한 제품을 만드는걸 생산성이 높다고 하지 않는다
비슷하게 보이지만 우리는 다른 제품을 만들어 내고 있는것이다.

이런 것을 인지한 IT기업들은 소프트웨어 개발은 생산성이 아닌 창조성이 필요하다는걸 느끼고...
작업환경에 대한 개선도 몇몇곳에서 도입하고 있는듯 하다 (물론, 가장유명한건 구글일듯)

개발자란느 사람들에 대한 생산성을 높여야 할까? 창조성을 높여야 할까?
생산성이라는것 자체가 잣대가 없다 코드라인이 많다고 좋은것도 아니고 말이지...














참고
http://plusblog.tistory.com/570
http://jzgo.tistory.com/123
http://blog.naver.com/roskfl122?Redirect=Log&logNo=20123317715

+ Recent posts