지식 대신 의존성만 쌓이는 개발, 괜찮으신가요?

by DD
1개월 전
조회수 0

개발자가 외부 의존성(External Dependency)에 과도하게 의존하며 근본적인 지식 습득(Fundamental Knowledge Acquisition)을 소홀히 하는 문제를 지적함

의존성이 프레임워크나 서비스 형태로 발전하며 자체적인 기능 확장(Feature Expansion)으로 인해 복잡성이 증가하는 현상을 설명함

개발자가 자체적인 구축 능력(Build Capability)을 키우기보다 기존 솔루션에 의존하는 것이 장기적으로 기술 부채(Technical Debt)를 야기할 수 있음을 경고함

브라우저 생태계처럼 의존성이 복잡하게 얽혀 생태계 종속성(Ecosystem Lock-in)을 강화하는 사례를 제시함

지식 대체재로서의 의존성 문제

영상에서는 개발자가 특정 기능을 구현하기 위해 직접 지식을 습득하기보다 라이브러리나 프레임워크 같은 외부 의존성에 의존하는 경향을 지적합니다. 이는 마치 '바퀴를 재발명'하지 않는 효율성 측면도 있지만, 장기적으로는 핵심 원리 이해 부족으로 이어져 문제 해결 능력 저하를 야기할 수 있다고 설명합니다. 특히, 새로운 개발자가 복잡한 시스템을 이해하기 어렵게 만드는 요인으로 작용한다고 강조합니다.

의존성의 복잡성과 생태계 종속성

발표자는 의존성이 시간이 지남에 따라 기능이 확장되고 자체적인 생태계를 형성하면서 더욱 복잡해진다고 설명합니다. 이는 마치 브라우저 생태계처럼, 다양한 서비스와 도구가 서로 얽혀 개발자가 특정 환경에 종속되게 만듭니다. 이러한 생태계 종속성(Ecosystem Lock-in)은 다른 기술로의 전환을 어렵게 만들고, 결국 기술적 유연성(Technical Flexibility)을 저해하는 결과를 초래한다고 지적합니다.

개발자의 '지식' 대신 '의존성' 구축

영상은 개발자가 자신의 프로젝트를 구축하는 과정에서 실제 지식을 쌓기보다, 기존 의존성을 '이어 붙이는(Gluing)' 작업에 집중하는 현실을 비판합니다. 이는 단기적으로는 빠른 결과물을 만들 수 있지만, 근본적인 문제 해결 능력이나 시스템 설계 능력 향상에는 기여하지 못한다고 주장합니다. 결과적으로 개발자는 자신이 구축한 시스템의 내부 동작 원리를 제대로 이해하지 못하는 상태에 놓일 수 있다고 경고합니다.

의존성 관리의 위험성과 대안

발표자는 의존성이 시간이 지남에 따라 점점 더 많은 기능을 요구하고, 결국 자체적인 프레임워크나 제품으로 발전하는 경향이 있다고 설명합니다. 이는 개발자가 단순한 기능 구현을 넘어, 의존성 자체를 관리하고 유지보수해야 하는 부담으로 작용합니다. 따라서 개발자는 의존성의 필요성을 신중하게 평가하고, 가능하다면 직접 구현하거나 더 단순한 대안을 찾는 노력이 필요하다고 제안합니다.

경제적 관점에서 본 의존성 문제

영상은 경제적 효율성(Economic Efficiency)을 이유로 개발자가 의존성에 의존하는 현상을 지적합니다. '바퀴를 재발명'하는 데 드는 시간과 비용을 절약할 수 있다는 논리지만, 이는 장기적인 관점에서 개발자의 성장 기회를 박탈하고 기술 부채를 축적시키는 결과를 낳는다고 설명합니다. 결국, 단기적 이익 추구가 장기적인 경쟁력 약화로 이어질 수 있다는 점을 강조합니다.

Dependencies are Replacing Knowledge