프로세스가 혁신을 억누르는 이유

Nov 25 2022
최근에 저는 비슷한 주제를 공유하는 두 가지 주제에 대해 계속 생각했습니다. 첫 번째 주제는 캘리포니아의 공공 인프라 상태와 그것이 수년에 걸쳐 얼마나 비효율적이 되었는지에 관한 것입니다.

최근에 저는 비슷한 주제를 공유하는 두 가지 주제에 대해 계속 생각했습니다. 첫 번째 주제는 캘리포니아의 공공 인프라 상태와 그것이 수년에 걸쳐 얼마나 비효율적이 되었는지에 관한 것입니다. 두 번째는 대기업이 기존 신생 기업보다 더 빠르게 혁신하고 실행하지 못하는 것입니다. 먼저 생각할 두 가지 예를 제공하여 이러한 주제가 관련된 이유에 대한 몇 가지 관점을 제공하겠습니다.

  • 기반 시설 : 금문교는 건설하는 데 약 4년(1933–1937)이 걸렸으며 오늘날 달러로 약 $500M의 비용이 들었습니다. 대조적으로, 기본적으로 교량 주변에 그물을 추가하는 SDS( 자살 억제 시스템 )는 완료하는 데 5년(2017~2023년)이 걸리고 ~2억 1,700만 달러의 비용이 소요될 것으로 예상됩니다. 캘리포니아의 주요 인프라 프로젝트를 검토하면 1950년대 이전에 완료된 프로젝트의 경우 작업이 오늘날 수행되는 것보다 더 빠르고 저렴하며 더 높은 품질로 수행되었음을 알 수 있습니다. 우리는 더 많은 자본, 더 나은 기술, 더 나은 원자재, 더 많은 절대적인 토목 기사 및 건축가를 보유하고 있습니다.
  • 기술 회사 : Adobe는 모든 재정 및 인적 자원에도 불구하고 200억 달러에 경쟁자를 인수해야 한다는 사실을 알게 되었습니다. Adobe가 Figma에 대해 초과 지불했는지 여부는 아직 확인되지 않았지만 더 흥미로운 질문은 100배의 직원, 100배의 디자인 도구 경험, 100배의 재무 자본을 가진 회사가 성공하지 못한 이유는 무엇입니까?
  • Unsplash에 있는 Sanath Kumar의 사진

마찬가지로 회사 내부를 살펴보면 성장함에 따라 프로세스와 부풀림이 모든 것에 스며들어 실제 작업과 혁신을 방해한다는 것을 알 수 있습니다. 그러한 환경에서 무엇인가를 만들고 싶어하는 직원들, 제작자들은 그들의 작업이 실현될 출구가 있는 더 작은 장소로 이동하는 것이 더 매력적이라는 것을 알게 됩니다. 인프라 실패와 회사 혁신 실패는 적어도 부분적으로 팽창과 프로세스 크립으로 인해 발생합니다.

프로세스 크립이 발생하는 이유는 무엇입니까?

모든 과정은 좋은 의도에서 시작됩니다.

  • "우리는 모든 이해 관계자가 최종 작업에 대한 의견을 갖고 있는지 확인하고 싶기 때문에 제출된 모든 프로젝트 제안서는 법률, 디자인, 제품 및 엔지니어링 팀에서 검토해야 합니다."
  • "우리는 대규모 인프라 프로젝트가 피해를 입히지 않도록 하기 위해 작업을 시작하기 전에 철저한 환경 연구를 수행해야 합니다."
  • "우리는 데이터 유출을 최소화하기를 원하므로 데이터에 대한 모든 요청은 IT 및 보안 팀을 통해 이루어져야 합니다."

완벽주의로 가는 길

나는 선의의 관리자가 직속 부하들에게 마치 100년 동안 지속될 것처럼 소프트웨어를 작성하라고 말하는 것을 들은 것을 기억합니다. 과장된 표현이었지만, 이 조언은 "두 번 측정하고 한 번 작성하십시오" 또는 "제대로 할 시간이 없다면 할 시간이 있습니까? 두 번?.” 이것은 나쁜 조언이 아닙니다. 어떤 상황에서는 100년 동안 지속될 것처럼 코드를 작성해야 합니다., 계획 없이 실행에 옮기는 것은 낭비입니다. 그럼에도 불구하고 계획에 대한 지나친 강조는 마비로 이어질 수 있으며 반복을 통한 학습의 이점을 인식하지 못할 수 있습니다. " 50년 된 코드베이스 " 로 돌아가는 세상보다는 소프트웨어가 매년 다시 작성되는 세상에서 살고 싶습니다. 완벽이란 존재하지 않으며 진화의 전제 조건은 변화라는 인식이 강하기 때문입니다 .

너무 많은 접착제

수년 전에 저는 Glue가 되는 것에 대한 Tanya Reilly의 블로그 게시물을 읽었습니다(적극 권장 읽기, btw). 내 경력의 그 시점에서 기술적으로 유능하지만 제대로 작업하지 않는 몇몇 동료를 다루고 있었기 때문에 콘텐츠가 정말 반향을 일으켰습니다. Glue people은 팀의 다른 사람들을 보다 생산적으로 만드는 기술 리더십 및 멘토링 과정에 참여합니다. 어느 정도의 접착제가 필요하지만 접착제가 너무 많으면 다른 문제가 발생한다는 것을 알았습니다.

  • 접착제 작업을 하는 사람들은 다른 사람들이 비기술적 기술을 향상시키는 것을 방해합니다. 예를 들어, 팀이 작업에 대해 이야기하지 못하게 하거나 종종 "버퍼" 역할을 하는 기술 책임자는 본질적으로 IC에서 고군분투할 기회를 빼앗고 결국 커뮤니케이션 기술을 향상시키는 것입니다.
  • 접착제 행동의 극단적이고 유독한 버전은 때때로 다른 사람의 작업에 대한 공로를 인정하거나 지나치게 과장된 속성을 생성하는 것으로 나타납니다(예: "내가 중개자 역할을 하지 않으면 프로젝트가 성공하지 못할 것입니다"). Tanya는 Glue 사람들이 종종 인정받지 못하는 상황에 대해 이야기하지만 내 경험은 완전히 반대입니다. Glue 사람들은 의사 소통을 잘하기 때문에 자신의 작업을 광고하고 정치를 잘하는 방법을 알고 있습니다. 그 대가로 그들은 더 높은 가시성과 더 많은 홍보 기회를 얻게 되는 반면 구현 세부 사항을 작업하는 엔지니어는 종종 토큰 승인을 받거나 전혀 인정받지 못합니다.
  • 마지막으로 너무 많은 인력을 추가하면 개별 엔지니어의 소유권과 책임이 줄어듭니다. 기술적으로 유능한 팀을 관리하기 위해 접착제 인력을 추가하는 대신 비즈니스 직관이 없거나 의사 소통 기술이 부족하거나 자신이 수행하는 작업이 왜 영향력이 있는지 설명하는 단락을 하나로 묶을 수 없는 엔지니어를 그냥 보내겠습니다. 엔지니어를 관리하기 위해 더 많은 접착제가 필요하다고 제안하는 것은 결국 기술적으로 뛰어난 사람들이 높은 수준의 일반 지능을 가지고 있고, 많이 읽고, 평생 학습자이며, 코드뿐만 아니라 비즈니스에도 매우 능숙하다는 일반적인 패턴을 무시하는 것으로 끝납니다.

제가 Novell에 있을 때 저는 "접착제"라고 부르는 사람들이 있다는 것을 알게 되었습니다. 글루피플은 그룹 사이의 중간 경계에 앉아 활동을 돕는 엄청나게 좋은 사람들입니다. 그리고 그들은 매우 충성스럽고 사람들은 그들을 사랑하며 전혀 필요하지 않습니다.

Novell에서 저는 이러한 글루맨을 제거하려고 계속 노력했습니다. 왜냐하면 그들이 방해가 되었기 때문입니다. 그리고 내가 그들을 한 그룹에서 해고할 때마다, 그들은 다른 그룹에 나타나서 전근을 하고 다시 고용되는 등의 일을 했습니다.

엔트로피

조직이 성장함에 따라 제도적 지식, 이해 관계자 수, 코드베이스 및 엔트로피가 증가합니다. 증가된 엔트로피는 높은 낭비, 높은 인지 부하, 무질서 및 혼돈으로 이어집니다.

소프트웨어 엔지니어로서 우리는 복잡성을 관리하는 데 서투른 작업을 수행했다고 생각합니다. 예를 들어, 모놀리스는 코드베이스를 과도하게 생성하거나 배포를 어렵게 하거나 확장성 문제를 일으키기 때문에 수년 동안 좋지 않다는 말을 들었습니다. 그러나 마이크로서비스의 세계에서 운영해야 하는 다른 극단에서는 기본 사항을 제공하기 위해 서로 다른 언어로 작성된 여러 코드베이스에서 운영해야 하며 각각 고유한 배포 특성과 아키텍처 패턴이 있으며 전체적으로 람다 스파게티 로 바뀌는 패러다임 . 중요한 일에 멈추고 집중하는 것은 엔트로피를 줄이는 데 큰 영향을 미칩니다. 낮고 행동 지향적인 수준에서는 다음과 같이 나타날 수 있습니다.

  • 프로덕션에서 실행되지 않는 데드 코드 삭제. 나는 코드의 50% 이상이 데드 코드이고 동료에게 인지 부하를 생성하는 많은 코드베이스와 상호 작용했습니다. 프로덕션에서 실행되는 라인을 기반으로 코드 커버리지를 생성하는 개발 생산성 공간에 무언가가 있었으면 합니다. 매 분기마다 이러한 보고서를 중지하고 검토하고 실행이 전혀 되지 않은 파일을 삭제하기만 하면 됩니다.
  • 제품 관리자로서 우리는 어떤 기능을 제거하거나 되돌려야 하는지에 대해 충분히 반영하지 않습니다. 하지만 멈춰서 삭제해야 할 항목에 대해 숙고하는 것은 사용자 경험을 단순화하고 개선하는 데 매우 의미가 있을 수 있습니다. 저는 제 자신이 기술에 정통하다고 생각하지만, 오늘날 생성된 많은 제품이 기존 사용자 집합에 대해 과도하게 최적화되어 있어 신규 사용자에게 어수선하고 혼란스러운 UX 경험을 제공한다는 사실을 알게 되었습니다. 분기 말에 "어떤 기능을 취소할 수 있습니까?"라고 묻습니다. 혼란을 줄이는 데 유용할 수 있습니다.

자아는 적이다

Ryan Holiday는 자신의 저서 Ego is the Enemy에서 "모든 사람에게 존재하는 강력한 유혹, 행동을 대체할 대화와 과대 광고"가 있다고 제안합니다. 자아는 많은 기관에서 진보와 혁신이 부진할 수 있는 큰 이유입니다. 자아가 어떻게 나타나는지는 다음과 같습니다.

  • 같은 사람들이 자신의 아이디어가 한계 가치를 전혀 또는 거의 추가하지 않음에도 불구하고 그룹 대화에 자신의 생각을 던지고 싶어 근질근질한 것을 보는 것.
  • 동료를 적극적으로 후원하지 않거나 가시성을 확보하려는 사람들이 있습니다. 귀하가 관리자이거나 관리자의 관리자라면 직속 부하 직원이 귀하의 1:1 대화에서 다른 사람의 성공이나 기여에 대해 얼마나 자주 말하는지 보면 이를 알 수 있습니다. 다른 사람들에 대한 인정의 부족이나 이타적인 후원은 건강하지 못한 자아의 신호일 수 있습니다.
  • 회사나 조직 전체가 아닌 팀을 위한 최적화. 나는 Tanya Reilly 의 Staff Engineer's Path 에서 다이어그램을 빌렸으며 팀이 로컬 최대값을 위해 최적화하는 이 문제를 완벽하게 보여줍니다. 예를 들어 도메인 내에서 유지 관리 모드로 전환하는 경우 팀을 해산하고 직원을 다른 팀에 재배치해도 괜찮습니까? 대부분의 관리자는 회사 내에서 사회적, 정치적 자본을 잃는 것을 의미하기 때문에 절대 그렇게 하지 않을 것입니다.
  • 원천
  • 귀하의 역할에 따라 회의의 가치를 보는 관점에서 매우 강력한 이분법이 있습니다. " 가장 강력한 사람들은 관리자의 일정에 있습니다 ". 불행하게도 회의의 가치에 대한 그들의 인식은 문제와 해결책에 대해 생각할 방해받지 않는 시간을 선호하는 사람들에게 영향을 미치는 문화적 재정의를 만듭니다. 브레인스토밍 목적의 경우에도 그룹 브레인스토밍은 시간 낭비 라는 증거 가 있습니다 . 그런데 왜 그렇게 많은 비대해진 조직이 결국 IC 시간의 절반을 회의에 사용하게 되는 것일까요?

결론

혁신의 엔진은 진화적 변화에 의존합니다. 궁극적으로 제도가 경직되고 변화에 적응하지 못한다면 천천히 죽어갈 것입니다. 내 경험에 따르면 프로세스를 도입하면 의도하지 않은 비용이 발생하여 속도가 느려지는 경우가 많습니다. 대신 다음 사항에 중점을 둘 것입니다.

  • 완벽주의를 달성하기 위해 노력하는 대신 반복을 선호하고 실수로부터 배우는 것.
  • 접착제 사람이 필요하지만 높은 레버리지로 행동할 수 있도록 그 수에 제한이 있어야 합니다. 기술적으로 유능하고 비즈니스 직관력이 좋은 사람을 고용하기만 하면 접착제 역할에 대한 초과 고용의 필요성을 해결할 수 있습니다.
  • 마지막으로 나는 버릴 수 있는 것이 무엇인지 끊임없이 묻고 단순성을 높이는 행동에 대해 사람들에게 보상함으로써 엔트로피를 줄이는 데 집중할 것입니다.