技术管理之技术判断力和架构决策

2023-10-24 07:59

本文主要是介绍技术管理之技术判断力和架构决策,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

技术管理之技术判断力和架构决策

从一个困惑的问题开始

1、技术管理者,是否要丢掉技术?
2、为什么会有这种困惑?
  • 会议越来越多,写代码的时间越来越少,心里发虚。
  • 管理琐碎问题太多,离技术越来越远,担心未来发展。
  • 年龄大了,接收吸收新知识比不上小年轻等等。

技术管理者思考,我的最大优势是什么?我如何保持!

聊聊技术判断力

1、程序员和技术管理的技术能力最大区别是什么呢?
  • 工程师:具体的技术实现。

    • 实现复杂功能,编写核心代码
    • 处理线上bug,解决技术难题
  • 技术管理者:技术判断力

2、什么是技术判断力?
  • 定义:通过技术领域和非技术领域的长期积累培养出来的技术决策能力。
3、技术判断力主要体现在如下三方面
  • 对方向的判断
  • 对技术方案本身的判断(对技术的可行性、可维护性、成本、收益等的判断)
  • 对各种风险的判断(log4j、开源框架的风险、整个项目执行过程中的风险,包括团队人员的风险。风控–刷单、校验、鉴权)

无论你选择那条路,你都不能够停下脚步,你都需要持续去学习。

4、如何提升技术判断力
  • 团队日常技术和产品工作汇报
  • 参与技术方案评审、事故复盘
  • 主持或主导顶层设计和规划实施工作
  • 持续学习新技术

跟厉害的人一起去工作,一起去打仗,这样的话你成长的应该是比较快的。

学习新技术的渠道

1、官网、讲座、机构、b站、直播
2、https://www.infoq.cn/
3、极客时间
4、公众号:架构师之路、阿里巴巴中间件、美团技术团队

技术债务

什么是技术债?

技术债:指开发人员为了加速软件开发,在应该采用最佳方案时进行了妥协,改用了短期内能加速软件开发的方案,从而在未来给自己带来的额外开发负担。–沃德、坎宁安(1992)

常见的技术债务

常见的:程序员将某个判断条件写死、测试工程师未进行深入自动化测试、团队运用了一个即将过时的框架、架构决策失误等等。

例子:1、是用ESB还是分布式框架,2、支付用了饿了么的原始订单。

怎么还技术债?

对于无意的:

1、技术培训

2、代码 review

对于有意的:

1、培养主人翁意识、工程师文化

2、健全的测试、预发布、线上环境支持

3、定时处理

4、主动发现

聊聊架构决策

1、决策失误,是”技术债务“的一个来源
2、选择不作为,后果更严重
  • 分析哪套更好,当场拍板
  • 指出还有哪些地方考虑不周到,修改后在指定时间内敲定
  • 不给具体意见,只给比较宽泛的,比如不够具体,没有重点等等。

这就是一个主动授权的案例,为什么会出现这样的问题?问题的本质又是什么呢?

3、做好架构决策的流程设计

在这里插入图片描述

  • 当事人发起

  • 二级部门负责人判断是否产研部门解决,还是升级公司架构师

  • 在产研部门内或联合架构师,完成架构评审

  • 研评审结果发给当事人征取意见

  • 由当事人判断,是否需要升级

  • 解决分歧,否则就执行决策

4、怎么做好架构决策?

a、首先需要了解技术架构三大原则

b、还需要站在技术之外,更全局的视角,技术之外包括:人效、资源利用率、业务风险等等。

c、具备足够的技术广度和深度,持续的学习能力和逻辑思维。

在这里插入图片描述

这篇关于技术管理之技术判断力和架构决策的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/273807

相关文章

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Java异常架构Exception(异常)详解

《Java异常架构Exception(异常)详解》:本文主要介绍Java异常架构Exception(异常),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. Exception 类的概述Exception的分类2. 受检异常(Checked Exception)

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

Redis实现RBAC权限管理

《Redis实现RBAC权限管理》本文主要介绍了Redis实现RBAC权限管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1. 什么是 RBAC?2. 为什么使用 Redis 实现 RBAC?3. 设计 RBAC 数据结构

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

微服务架构之使用RabbitMQ进行异步处理方式

《微服务架构之使用RabbitMQ进行异步处理方式》本文介绍了RabbitMQ的基本概念、异步调用处理逻辑、RabbitMQ的基本使用方法以及在SpringBoot项目中使用RabbitMQ解决高并发... 目录一.什么是RabbitMQ?二.异步调用处理逻辑:三.RabbitMQ的基本使用1.安装2.架构