내용으로 건너뛰기
기술 부채로 인한 인적 비용

기술 부채로 인한 인적 비용

워드 커닝햄(Ward Cunningham)이 만든 이 용어는 오늘날 소프트웨어에서 지름길을 택하는 것은 결국 대가를 지불하는 것만을 의미하는 것이 아니라 그 대가를 이자와 함께 지불하는 것을 의미한다는 개념을 도입합니다.  다시 말해, 오늘 글로벌 변수를 도입하고 배송에 앞서 반나절의 작업을 절약한다는 것은 반나절 이상의 노동력을 투자하여 비용을 지불하게 된다는 것을 의미합니다.

6min read

워드 커닝햄(Ward Cunningham)이 만든 이 용어는 오늘날 소프트웨어에서 지름길을 택하는 것은 결국 대가를 지불하는 것만을 의미하는 것이 아니라 이자와 함께 그 대가를 지불하는 것을 의미한다는 아이디어를 소개합니다.  다시 말해, 오늘 글로벌 변수를 도입하고 배송에 앞서 반나절의 작업을 절약한다는 것은 반나절 이상의 노동력을 투자하여 비용을 지불하게 된다는 것을 의미합니다.

기술적 부채의 개념에 아직 익숙하지 않다면 익숙해지는 것이 좋습니다.  제가 이렇게 말하는 이유는 이 용어가 업계에서 흔히 사용하는 용어일 뿐만 아니라 중요한 개념이기 때문입니다.

human  debt

은유의 힘

저는 몇 년 동안 코드를 작성하는 데 수년을 보낸 후 최근 몇 년 동안 IT 관리 컨설팅을 수행하는 데 상당한 시간을 할애했습니다.  그리고 코드베이스의 바로 가기에 대한 이 은유는 비즈니스와 소프트웨어 개발 그룹 간의 의사 소통에 있어 강력한 비유라고 말할 수 있습니다.  관리자와 MBA에게 경제학 언어를 사용하여 소프트웨어 결정을 설명하면 그들은 이해합니다.

은유의 힘과 비즈니스 문제에 대한 후속 효과 때문에 프로젝트의 건전성, 특히 마감일 및 이정표와 비교하여 설명하는 데 자주 사용됩니다.  개발자는 촉박한 기한으로 인해 기술 부채가 발생하여 향후 기능을 제공하는 데 더 오래 걸릴 수 있다고 전달할 수 있습니다.  분석가와 프로젝트 관리자는 지연된 기한에 대해 논의할 때 기술 부채를 고려할 수 있습니다.  IT 고위 경영진은 전략적인 교체/폐기/재작성 결정을 내릴 때 애플리케이션의 기술 양에 대한 평가를 요청할 수 있습니다.

기술 부채 문제는 대부분의 사람들에게 본질적으로 시장 출시 시간의 문제입니다.

하지만 저는 오늘 이 문제의 인간적인 측면에 대해 말씀드리고자 합니다.  그리고 실수하지 마십시오 — 비즈니스에서 모든 인간 문제는 충분히 넓은 렌즈로 볼 수 있는 비즈니스 문제이기도 합니다.  불행한 인간은 불행한 노동자이고, 불행한 노동자는 생산성이 떨어진다.  그러나 제 경험상 이러한 기술적 부채에 대한 논의는 거의 이루어지지 않습니다.

Unpleasant Work

관리자의 경우 기술 부채가 많은 코드 베이스는 기능 제공 속도가 느려진다는 것을 의미하며, 이로 인해 비즈니스 역량에 대한 대화에서 많은 좌절과 어색한 순간이 발생합니다.  개발자의 경우 이러한 좌절감은 훨씬 더 심각합니다.   아무도 상당한 핸디캡을 가지고 일하고 매일 비생산적인 것을 좋아하지 않으며, 이것이 바로 이러한 종류의 코드베이스가 개발자에게 의미하는 바입니다.

그들은 매일 폼에 확인란을 추가하는 것과 같은 간단한 일을 하는 데 하루 중 더 많은 시간이 걸린다는 것을 알고 사무실에 출근합니다.  그들은 겉보기에 간단해 보이는 일이 왜 오랜 시간이 걸리는지에 대해 끝없는 설명을 만들어내야 한다는 것을 알고 있습니다.  새로운 개발자가 고용되거나 컨설턴트가 영입될 때, 그들은 혼란스러운 표정을 지어야 한다는 것을 알고 있으며, 가벼운 경멸을 숨기려는 신입 개발자들이 뒤따를 것이라는 것을 알고 있습니다.

이것을 기술 부채 비유와 다시 연결하자면, 산더미 같은 빚을 진 사람이 채권자들에게 괴롭힘을 당하는 것을 설명하려고 한다고 생각해 보십시오.  그것은 부끄러운 일이며, 이는 결국 사기를 떨어뜨립니다.

Team Infighting

당연히 이러한 상황은 팀 간의 말다툼으로 이어지는 경향이 있습니다.  다시 말하지만, 이 비유는 심각한 빚을 진 결혼한 부부에게서 이런 종류의 행동을 기대할 수 있는 것처럼 유지된다.  팀은 전선을 긋습니다.

그들이 문제를 비난하는 종신 직원에 대한 앞서 언급한 신입 사원일 수 있습니다.  유지 보수 프로그래머 대 개발자 또는 미개발 프로젝트 담당자 대 기술 부채가 있는 레거시 짐승에 책임이 있는 사람들일 수 있습니다.

그 선이 무엇이든 간에, 그것은 현실이 되고 문제가 됩니다.  그들은 문제 자체에 대한 좌절과 당혹감에 더해 신랄함을 더한다.

Atrophied Skills

당혹감이 커지고 비난 게임이 더 격렬해짐에 따라 팀원들은 자신의 직업적 관련성이 사라지는 것을 느낄 수 있습니다.  결국, 기술 부채는 기능 개발뿐만 아니라 코드베이스의 일반적인 진화에도 상당한 영향을 미칩니다.

이러한 종류의 코드베이스에서는 모든 것이 어려워 집니다.  팀은 최신 버전의 언어로의 업그레이드를 연기합니다.  그들은 현대 건축 및 디자인 관행을 통합하는 데 저항합니다.  그들은 오래된 타사 추가 기능을 최신 추가 기능으로 교체하는 것을 두려워합니다.  일반적으로 말해서, 그들은 인간적으로 가능한 한 적게 만지기를 원하는데, 그렇게 하는 것은 이미 무기력한 과정을 더 손상시키기 때문입니다.  너무 느리고 너무 위험합니다.

그러나 그들이 이러한 결정을 내리는 동안에도(또는 적어도 다른 사람들이 결정을 내릴 때 함께 살아가면서), 그들은 자신의 시장 가치가 날이 갈수록 감소하고 있다는 것을 이해합니다.  광범위한 개발 세계가 최신 JavaScript 프레임워크와 도메인 기반 디자인 접근 방식을 수용하는 동안 그들은 쌕쌕거리는 CRUD 기반 Winforms 애플리케이션에 기능을 추가하는 데 어려움을 겪고 있다는 사실을 잊지 않습니다.

숨겨진 비즈니스 비용: 이직률과 이직률

불행한 개발자들이 사업상의 문제이며 심각한 문제라는 것이 경영진에게 명백하기를 바란다.  현재의 IT 시장 환경에서 개발자들은 선택의 여지가 있으며, 심지어 심각한 기술 부채를 안고 있는 레거시 코드베이스에 갇혀 있는 개발자도 선택할 수 있습니다.

매일 출근하여 고통스러운 코드 베이스에서 일하고, 불만을 품은 사람들과 함께하고, 점점 더 무관하다는 느낌이 들면서 다른 선택에 열려 있는 사람들로 가득 찬 팀을 만들 수 있습니다.  그리고 조만간 그들은 떠나기 시작할 것이고, 그 책임을 주도하는 사람들은 조직이 잃을 여유가 없는 사람들이 될 것입니다.  그룹에 고용하는 것이 점점 더 어려워질 것이며, 고용된 사람들이 생산성을 발휘하는 데 점점 더 오랜 시간이 걸릴 것입니다.

따라서 기술 부채에 대해 생각할 때 지연된 기능과 결함 수 증가라는 비즈니스 문제의 측면에서만 생각하지 마십시오.  인적 비용, 그리고 그로 인해 발생하는 훨씬 더 심각하고 훨씬 더 장기적인 비즈니스 문제를 생각해 보십시오.

해결책이 있습니까?

이제 로우 코드 드래그 앤 드롭 App Builder TM을 사용하여 이 모든 것을 해결할 수 있는 더 좋고 효율적인 방법이 있습니다. 이에 대한 모든 것과 경기 침체 기간 동안 비용을 줄이는 방법은 다음 블로그 게시물을 읽으면 알 수 있습니다.

로우코드 프로세스 자동화란 무엇이며, 귀사는 이를 통해 어떤 이점을 얻을 수 있습니까?

low-code App Builder

데모 요청