Table of Contents
主要工程师坐在技术工作和战略领导的独特交汇处,他们要塑造建筑决策、指导高级工程师并影响产品方向,同时继续深入从事代码工作。 这种双重任务往往造成摩擦。 当责任向相反方向拉动时,燃烧或技术停滞的风险就会增加。 了解这一角色中最紧迫的挑战并采取实际的对策,可以把高压地位转变为可持续的、高影响的职业。
压力最大的挑战 首席工程师面孔
1. 平衡深层次技术工作与领导职责
主要的工程师通常都是组织中最强大的技术贡献者,但他们也必须分配时间来进行职能协调、规划和利益攸关方的沟通。 写出生产质量代码和引导团队技术战略之间的矛盾是一直存在的。 许多工程师发现自己陷入了紧急的交火,这侵蚀了建筑思维所需的深度焦点。 没有刻意安排和无情的排位,角色的领导一方就会受到影响,技术方面就会变得被动。
2. 指导没有正式权力机构的组织政治
与经理不同,主要工程师往往靠影响力而不是级别领导。 说服同行、产品经理和高管采用特定技术方向需要强大的说服技能和政治意识。 当竞争利益 — — 如交付速度与长期维持能力 — — 相互冲突时,主要工程师必须促成妥协。 这一领域的失误可能导致行动停滞、团队不协调、或采取难以消除的不最佳解决方案。
3. 利用快速发展的技术保持优势
技术环境每年都在变化。 新的框架、语言和云服务能带来更好的业绩或开发者的经验,但过早采用它们会带来不稳定。 主要工程师需要不断评估新兴工具,同时将拼音与真正有价值的创新区分开来。 无法将当前的风险留在过时的地基上,同时追逐每个新趋势,夸大复杂性,挫败团队。
4. 对抗遗留系统和技术债务
大多数组织继承了技术债务累积的代码基础 — — 过时的依赖性、单一结构或缺失的测试。 主要的工程师们应该领导补救工作,然而这些项目往往缺乏即时的商业知名度。 平衡现代化的需要与运输新特征的压力需要认真的谈判和渐进的改进策略。 忽视债务最终会减缓每个发展周期。
5. 指导下一代高级工程师
扩大工程团队的技术能力是一项核心责任。 但正规的导师工作需要持续的努力。 战术工作负担过重的首席工程师可能会忽视其他高级工程师的发展,造成人才瓶颈。 没有强大的技术领袖,首席工程师就成了唯一的失败点,组织恢复能力也受到影响。
6. 向非技术利益攸关方通报复杂的技术决定
结构上的权衡 — — 比如选择一致性而不是可用性,或者选择较慢的迁移路径以避免风险 — — 通常对产品管理者和高管来说都不清楚。 主要工程师必须将这些细微差别转化为业务影响。 当沟通失败时,团队浪费周期重新解释理由,利益攸关方失去信任,决定被短期优先事项推翻。
7. 避免在期望广泛的情况下燃烧
制造事件时,主要工程师往往是第一个被召唤的人,而最后被召唤的人则是做出战略决策时被召唤的人。 高度责任、模糊的界限和不断的上下文的束缚等综合起来会导致长期的压力。 没有明确的界限和支持结构,即使是最有弹性的工程师也有可能耗尽和降低性能。
克服这些挑战的可采取行动的战略
1. 正式确定技术远景和路线图
组织整合的最有效方式之一是创建一份活的技术愿景文件。 写下当前的建筑痛点、预期的未来状态和逐步达到的目标。 广泛分享、征求反馈和每季度重审。 这份文件成为决策的支柱,减少重复对话,并在出现政治压力时给主要工程师一个明确的参考点。它也有助于非技术利益攸关方理解为何要做出某些技术赌注。
2. 投资建设强大的工程网络
任何主要工程师都不应该孤立地运作。 与其他部门的同行(产品、设计、数据科学)以及公司内其他工程领导人建立关系。 建立一个非正式的工程理事会或每周与其他主要工程师同步。 这些网络为困难的决定提供探空板,通过联盟建设扩大影响力,并在解决组织摩擦时提供支持系统。
3. 掌握授权和赋权艺术
授权不仅仅是卸载任务,而是创建所有权。当主要工程师将子系统设计或迁移计划委托给高级工程师时,他们应该提供明确的执行成功标准和自主权,同时留作指导。这让主要工程师可以专注于更高层次的架构和战略伙伴关系。一个很好的拇指规则:如果你能在几句话中描述结果,其他人可以拥有执行。让他们随行。
4. 创造不断学习的文化
主要的工程师们并没有试图亲自学习每一种新技术,而是可以培养一种学习是共同责任的文化。 建立每周的技术会谈,分配一定比例的冲刺时间进行实验,并赞助内部黑客。 当整个团队对新兴工具感到好奇时,主要的工程师可以依靠集体雷达从噪音中过滤信号。 这种方法也加速了导师工作,因为高级工程师开始领导自己的学习举措。
5. 使用数据和贸易分析指导决定
当面对遗留系统或技术选择时,情绪论辩往往占优势。用数据取代观点。衡量技术债务的成本:部署频率、复苏时间、新开发者上任时间。这些衡量标准与商业影响(例如,降低特性速度意味着丧失市场份额)并列。 记录的权衡风险和商业价值的权衡分析比个人要求“固定代码质量”的诉求更有说服力。 它还为未来决策创造了一个可重复使用的模板。
6. 骨干交流和劝导技能
将技术概念转化为结果。 与其说“我们需要转向微观服务,因为单体很难维护 ” , 不如说“单体导致部署延迟,将特性推后两周。 将单体分为服务,将使我们在几天而不是几周内进行独立改变 ” 。 写内容提要的做法适合一页。 使用视觉图表来显示建筑结构的前后状态。当你说出商业价值的语言时,利益攸关方会成为盟友而不是障碍。
7. 明确边界和使用杠杆
为了避免焦点耗尽,主要工程师必须保护他们的焦点时间。 将常规“制造时间”固定在日历上,并告知除重大事件外,你无法在日历上工作。使用全团队都分配业务责任的待命轮换。通过解释机会成本来了解“不”低影响请求:“如果我这样做,那么Y(具有更高的业务优先级)就会滑倒 ” 。 这训练了本组织尊重你的时间,并满足优先、合理的请求。
前进之路:从首席工程师到工程领导
主要的工程作用不是终点 — — 它是影响更大的平台。 通过应对这些共同挑战,你可以将角色转变为可持续、有成就和有深刻影响力的角色。 专注于只有你才能做到的事情:确定技术方向、培养其他高级工程师、缩小业务目标和技术执行之间的差距。 其他事情都可以被授权、自动化或推迟。
记住最有效的主要工程师是那些不断投资于自身技能的人:学习商业语言的沟通,在整个组织内建立联盟,以及保持对自身时间的纪律性。 挑战是重大的,但也是可预测的。 只要有明确的策略和不断改进的承诺,你就能克服挑战,成为团队所需的技术领导者。
要想进一步了解工程领导和组织规模,请探索诸如Directus的工程博客,StaffEng的关于主要和工作人员工程师角色的指南[,以及Rubber Ducking对技术通信的深度潜水[。 这些参考提供了具体策略,补充了上述战略。