시니어 엔지니어, '나쁜 프로젝트'를 막지 않는 이유: 영향력 관리 전략

by DD
4개월 전
조회수 14

시니어 엔지니어는 '나쁜 프로젝트'에 대해 모든 문제에 개입하지 않고, 영향력(Influence)을 전략적으로 관리함

'나쁜 프로젝트'는 UX, 기술적 설계, 정치적 요인 등 다양한 측면에서 정의되며, 문제 해결보다 효과적인 영향력 행사가 중요함을 강조함

영향력은 은행 계좌와 같아서, 모든 문제에 개입하면 소진되므로, 중요한 순간에 사용해야 함

프로젝트의 근접성, 팀에 미치는 영향, 회사 전체에 미치는 영향을 고려하여 개입 여부를 결정함

나쁜 프로젝트(Bad Project)의 정의와 판단 기준

저자는 '나쁜 프로젝트'를 UX, 기술적 측면, 정치적 요인 등 다각도로 정의하며, 주관적인 판단의 중요성을 강조한다. 특히, UX(사용자 경험) 측면에서 복잡한 설계, 존재하지 않는 문제 해결, 기존 워크플로우(Workflow)를 망치는 경우를 예시로 제시한다. 기술적으로는 과도하게 복잡한 설계, 부적절한 라이브러리 선택, 성능 저하를, 정치적으로는 유행을 좇거나 승진을 위한 프로젝트를 지적한다. 이러한 판단은 프로젝트의 생애 주기(Lifecycle)에 따라 달라질 수 있으며, 시니어 엔지니어의 '직관'이 중요한 역할을 한다.

영향력(Influence) 관리: 은행 계좌 비유

저자는 영향력을 은행 계좌에 비유하며, 모든 문제에 개입하는 것은 영향력을 소진하는 행위라고 설명한다. 코드 리뷰(Code Review)의 사소한 지적은 소액 인출, 아키텍처 결정에 대한 이의 제기는 중간 규모 인출, VP(부사장)의 프로젝트를 중단시키는 것은 대규모 인출에 해당한다. 영향력 고갈(Influence Depletion)은 동료와의 관계 악화, 주요 업무 수행 능력 저하로 이어진다. 따라서, 영향력의 전략적 사용이 중요하며, 팀에 미치는 영향, 회사 전체에 미치는 영향 등을 고려하여 개입 여부를 결정해야 한다.

개입 시점 결정: 3가지 핵심 요소

저자는 '나쁜 프로젝트'에 개입할지 여부를 결정하기 위해 세 가지 핵심 요소를 제시한다. 첫째, 프로젝트가 자신의 팀에 얼마나 가까운지(Proximity)를 고려한다. 둘째, 프로젝트 실패가 팀에 미치는 영향(Team Impact)을 평가한다. 셋째, 프로젝트 실패가 회사 전체에 미치는 영향(Company Scale)을 분석한다. 프로젝트가 자신의 팀에 가깝고, 팀에 큰 영향을 미치며, 회사 전체에 광범위한 피해를 줄 경우 적극적으로 개입해야 한다고 강조한다.

개입 방법: 핵옵션부터 미세 조정까지

저자는 '나쁜 프로젝트'에 대한 다양한 개입 방법을 제시한다. 가장 강력한 방법은 핵심 관계자에게 직접 문제 제기(Direct Escalation)하여 프로젝트 중단을 시도하는 것이다. 이 방법은 확신과 리더십의 지원이 필요하다. 보다 완화된 방법으로는 팀과의 회의를 통해 문제점을 지적하는 것이 있다. 또한, 팀의 문제 해결을 돕는 방향(Nudging)으로 미세 조정을 할 수도 있다. 개입하지 않는 경우, 팀의 업무에 미치는 영향을 고려하여 대응 계획(Contingency Plans)을 수립하거나, 관련 없는 경우 관망하는 전략을 취할 수 있다.

Why Senior Engineers Let Bad Projects Fail