跳到主要内容

SWE 2 - 软件工程师 II

我计划、设计并自主交付软件项目,确保协调的发布和客户影响。

范围

你执行我团队的使命和目标。你超越项目范围,通过提升SWE1的水平,促进良好的代码健康,实践操作卓越,并推动团队的使命。

scope


技艺

你的主要关注点是掌握交付高质量特性的能力,确保这些特性没有显著错误,且代码可被他人轻松阅读。你维护并调整历史贡献,以提高其质量和扩展性。你能够将产品需求转化为代码,并能够识别出在开发中困难的代码区域。

你正在学习如何为团队项目设计和架构解决方案。你创建文档,使得决策能够明确传达并且可以追溯历史,帮助他人建立在你的贡献之上。

职责行为
技术
  • 我扩展我的知识,以超越项目范围,了解我团队负责的每个系统或代码区域。
  • 我编写简洁、可维护的代码和文档,以简约为偏向,确保同事易于阅读。
  • 我能独立完成任何开发任务,按时向客户交付代码。
规划与估算
  • 我与项目负责人合作,范围确定并实施项目级解决方案。
质量
  • 我始终遵循最佳实践,并识别出缺乏最佳实践的领域。
  • 我呼吁减少在开发困难或按时交付变更的领域中的技术债务。
操作卓越
  • 我能在大多数我们负责的领域内有效地调试。
  • 我使用工具做出数据驱动的决策,仪表化代码以进行未来的系统监控和诊断。
  • 在值班期间,我是可靠的,通常能独立解决问题。
设计
  • 我撰写能够推动我团队使命的项目提案。
  • 我将产品设计转化为书面技术规格。
  • 我为我的公会贡献撰写良好的RFC。

沟通与协作

你通过确保团队承担的特性对最终客户具有影响,贡献于与产品、设计和软件的规划会议。你与产品沟通团队如何交付项目的选项,权衡质量与交付速度之间的权衡。

你通过公会、技术演讲、产品演示和书面沟通很好地代表你的团队。你与经理或团队负责人坦诚并及时地沟通胜利和担忧,并始终以数据详细说明你的沟通。

职责行为
自主性
  • 在学习新领域时,我寻求来自领域专家的同事的意见。
  • 我主动向经理和同事请求反馈,开放接受,并在必要时进行调整。
责任感
  • 我识别并倡导项目中有意义的改进或替代选项,帮助按时高质量交付。
  • 我对我的工作提供一般准确的估算,并可以细分为子交付项。
数据驱动
  • 我寻求数据,以更好地了解成员如何与产品互动,并反思我自己对WHOOP的使用。
  • 我用经过分析的证据而非未经验证的假设清晰地沟通。
清晰度
  • 我迅速关注阻碍,澄清要求,并建设性地分享我的担忧。
  • 我开始理解如何将技术主题翻译成非技术观众可理解的内容。
  • 我利用与经理的1:1会议讨论问题,并与他们合作设定明确的解决方案。
驱动共识
  • 我信任我的队友,始终假设善意,这让我可以持不同意见,但仍然全力以赴。

教练

你开始通过项目领导、代码审查和设计反馈来指导最接近你团队的SWE1。你与他们紧密合作,使他们能够亲身体验你的技艺水平。

通过在代码审查中提供可靠的反馈、简洁明确的项目规划,以及对个人的同情而坦诚的反馈,您在团队中扩大影响力。你关注团队的福祉、代码健康和使命。

职责行为
导师
  • 我通过代码质量和与SWE1的合作以身作则,提供反馈以追求共同提升。
团队影响
  • 我为我的团队和小组面试候选人,提供详细且坦诚的书面反馈。
  • 通过及时的代码审查,我改善团队的代码健康。
  • 当面临挫折时,我调整我的方法并帮助保持团队的专注。

晋升至SWE 3级

你在SWE2级别工作了18个月,并在高级水平上运作了至少9个月。

以下是你可以关注的一些领域,以便在下一个层面上架起经验的桥梁:

  • 你开始在你所在的小组中获得跨团队的知识,识别可以利用的共同点,以加速小组并推动团队之间的协调。
  • 你领导一个项目,负责将产品需求转化为技术规格,构建架构图,并为你的团队分解项目。你帮助团队实现成功,并对交付物保持高质量标准。你协调并建立发布计划,并通过小规模交付最大化操作成功。你在整个过程中保持所有利益相关者的最新信息,确保在团队完成里程碑时一起庆祝。
  • 你通过识别风险领域来分析小组内的技术债务。你寻求投资于高严重性和高概率交集的领域。你将开发速度视为能够将产品交付市场的风险,并开始制定计划来解决小组内的技术债务,倡导其优先级。
  • 你寻求参与更大技术挑战,提升你技术栈的质量和速度。你取得高级领导和管理层的共识,推动优先级和规划,以确保该倡议具有影响力。
  • 你通过主动与会员服务互动,创建支持文档并处理服务中断通信,承担团队的产品领域。你宣传团队的解决方案,并在部门内分享知识。