엔지니어링 복잡성: 내재된 복잡성 대 유발된 복잡성 노트

엔지니어링 복잡성: 내재된 복잡성 대 유발된 복잡성

훌륭한 엔지니어는 작동하는 코드만 작성하는 것이 아닙니다. 그들은 시스템이 왜 변경하기 어려워지는지, 왜 일부 시스템이 시간이 지남에 따라 팀의 속도를 늦추는지, 그리고 비용이 너무 높아지기 전에 어떻게 대응해야 하는지를 이해합니다.소프트웨어 제품, 플랫폼 및 엔지니어링 조직이 확장됨에 따라 복잡성이 축적됩니다. 그 복잡성 중 일부는 우리가 해결하려는 문제에 내재되어 있습니다. 일부는 우리의 아키텍처 및 구현 선택에 의해 도입됩니다. 일부는 순간적으로는 합리적이었지만 장기적으로는 비용이 많이 드는 지름길의 결과입니다.