技术管理
程序员的成长路径通常分为技术专家和技术管理两种。
技术专家就是战场上的一个冲锋小队:单体爆发能力强、有冲劲、能够吸引同类一起冲锋陷阵。他们的实力强劲,可以摧毁很多坚固的堡垒,歼灭精锐小队。
技术管理则像球队中的教练。 他不再冲在一线奋勇作战,而是赋能团队,因材施教,让团队发挥出最大的作用。
程序员的成长需要有保持开放的心态
技术专家特质
专业深耕:足够优秀的专业能力,需要在技术领域深耕,持续地提升技术实力
业务理解:懂业务而不能只是做技术,而且理解业务和理解需求还不一样,业务是你/公司正在做的产品或者提供的服务,不是一个单点的需求。理解业务的本质是要理解用户在实际使用中,如何通过产品完成一系列复杂的动作,实现使用目标。必须要从用户实际使用的角度理解整个业务逻辑,从产品出发设计更好的解决方案。技术专家需要将需求背后更深层的东西理解充分,否则就会对设计方案产生影响。
开放包容:
第一,对内保持开放。 技术专家要接纳内部的声音,其他成员总能接触到你不熟悉的领域知识。
第二,对新兴技术保持开放。 技术专家要避免领域深耕带来的「拥挤效应」,更主动地接受新鲜的技术或项目,不要排斥利于问题解决的新东西。
第三,对挑战和压力保持开放。 被予以瓶颈突破和困境破局等重任时,要勇于承担挑战和责任,主动地想办法解决问题,更开放地接纳和化解重任之下的压力。
技术管理:
硬实力
技术实力:要有能力评估技术方案的可行性或指导团队解决技术难题。应该授权团队中的技术骨干提供专业意见,以弥补自身在技术层面的不足。
业务理解力:硬实力主要来自对业务的充分理解:综合考量外部环境、市场环境、竞争分析、内部协作等等,理顺整个产品的商业逻辑。
软实力:广度 前瞻 建设 识人 善谈 责任
技术领导力:用技术广度弥补技术深度、培养技术前瞻性
管理领导力:管理领导力就是常规意义上的团队领导力。
第一,体系搭建能力。 技术管理要有团队体系搭建的能力,能够根据业务的诉求,做出正确的排兵布阵,更系统地完成组织规划与建设。
第二,招聘能力。 为团队选择最合适的成员。管理者总是花很多时间找人、看人,因此,技术管理一定要锻炼识别千里马的「火眼金睛」。
第三,沟通能力。 与技术问题不同,涉及人的问题往往更复杂。技术管理要能够及时识别成员的情绪波动、团队的异常状态,做出适当的干预和调和。良好的沟通能力会加速紧密团队的建成。
第四,主动承担。 技术管理一定要主动承担风险和失败的责任,顶住来自上层或业务的压力,将功劳与奖赏分给成员,将压力和责任扛起来,替团队成员负重前行。
团队工作流程
确定目标、分配职责与权限、加强鼓励交流、明确规范
确定工作目标和绩效指标。明确团队的工作目标,确定可衡量的绩效指标,有利于团队成员理解工作重点,提高工作效率。
分配工作职责和权限。对团队成员进行合理的工作分配,根据每个人的能力和经验,分配相应的工作职责和权限,有利于提高工作效率和团队合作。
建立有效的沟通机制。建立良好的沟通机制,有利于加强团队内部的沟通和协作,减少误解和冲突,提高工作效率。主导开发各阶段的会议,组内鼓励沟通
制定清晰的工作流程和标准操作规程。制定清晰的工作流程和标准操作规程,有利于团队成员了解工作流程,规范工作质量,提高工作效率和准确性。
使用有效的工具和技术。使用有效的工具和技术,如项目管理软件、协作工具等,可以帮助团队成员更好地协作,提高工作效率和质量。
定期评估和改进工作流程。定期对工作流程进行评估和改进,有利于找出问题和瓶颈,优化工作流程,提高工作效率和质量。