一个技术主管/团队Leader的工作职责有哪些?
精选30+云产品,助力企业轻松上云!>>>
一个技术主管的工作职责
- 开发规范
- 开发流程
- 技术规划
- 管理
- 开发任务分解分配
- 开发实践
- 技术架构评审
- 代码审核
- 风险识别
开发规范
命名规范
统一IDE代码模板
IDEA插件Eclipse Code Formatter
Maven使用规范
二方、三方包版本全部有parent pom管理
代码Commit规范
基于Angular Commit Message规范生成统一的ChangeLog,这样一来对于每次发布release tag非常清晰,Mac下都需要安装对应的插件,IDEA也有对应的插件,具体可以参考阮一峰老师的《Commit message 和 Change log 编写指南》。
统一API规范
(success代表接口处理响应结果成功还是失败,errorCode、errorMsg表示返回错误码和错误消息,module表示返回结果集,把ResultDTO定义到common-api顶层二方库,这样以来各个应用不需要来回转换返回结果。Http Rest接口规范约定同ResultDTO相差无几,需要额外关注一下加解密规范和签名规范、版本管理规范。)
异常处理规范
BusinessException、RetriableException(幂等性)、common-api、异常拦截器
方法内异常自我消化处理:
- 直接返回
- 抛出异常
- 重试处理
- 熔断处理
- 降级处理
使用Netflix开源的hystrix容灾框架进行弹力设计,解决异常熔断、超时熔断、基于并发数限流熔断的降级处理。
分支开发规范
- 分支的定义(master、develop、release、hotfix、feature)
- 分支命名规范
- checkout、merge request流程
- 提测流程
- 上线流程
- Hotfix流程
统一日志规范
日志脱敏(比如自定义实现logback的ClassicConverter)
《阿里经济体开发规约——日志规约》
统一MYSQL开发规范
统一工具与框架
开发流程
瀑布开发模式(需求评审、测试用例评审、技术架构评审、开发与测试、验收与上线)
需求管理、技术架构评审、代码评审、发布计划评审
需求管理
技术架构评审
敏捷迭代、日志审计
- 技术选型
- 高性能
- 高可用
- 可扩展性
- 可伸缩性
- 弹性处理
- 兼容性
- 安全性
- 可测性
- 可运维性
- 监控与报警
代码评审
代码质量包括功能性代码质量和非功能性代码质量
CodeReview:
- 确认代码功能
- 编码规范
- 潜在的BUG
- 文档和注释
- 重复代码
- 复杂度(如圈复杂度)
- 监控与报警
- 测试覆盖率
发布计划评审
- 各环境配置信息是否存在差异化;
- 数据库是否有表和数据的变更;
- 是否有二方、三方的jar包、接口等依赖,确认各应用和服务的发布顺序,包括内部和外部,提前协调好相关人员和业务方;
- 回滚计划,如果某些发布不可逆,确保限流降级等容灾计划;
- 发布完毕后的回归测试
技术规划与管理
系统健康度巡检
- 系统指标:系统CPU、负载、内存、网络、磁盘有无异常情况波动,确认是否由发布导致,还是系统调用异常。
- 慢接口:通常rt大于3s的接口需要重点关注,极端并发场景下容易导致整个系统雪崩。
- 慢查询:MYSQL慢查询需要重点关注,随着数据量上涨,需要对慢查询进行优化。
- 错误日志:通过错误日志去发现系统隐藏的一些bug,避免这些bug被放大,甚至极端情况下会导致故障。
技术规划
- 架构优化(高内聚低耦合、单一职责原则、模块化/服务化)
- 性能优化
- 弹性与可靠性
- 可伸缩性
总结
大局观
- 业务发展趋势
- 技术演进趋势(架构能力)
- 良好的管理能力
- 执行力、学习能力、解决问题的能力
一个技术主管/团队Leader的工作职责有哪些?相关推荐
- 一个研发团队是如何坚持7年技术分享的?
--"所有分享都是有意义的" --"在PingCode,人人都可以成为分享者" 这是PingCode研发团队的分享精神,而这样的精神,在过去7年中已经闪耀了10 ...
- 35岁,一个团队leader,从工作满8年的公司离职,选择重新尝试新机会,或许35岁才是起点。
目录 面试 1. 年龄大找工作一定要有目标,不能太随便 2. 代码能力是整个IT行业的核心技能,也是对整个行业从业者的要求 3. 沟通表达很重要,把自己做过的事情做到极致,然后能讲出来 4. 心态要好 ...
- 如何培养一个搞垮团队的Leader?
作者| Mr.K 整理| Emma 来源| 技术领导力(ID:jishulingdaoli) 搞垮一个团队并没有想象的那么容易,首先Leader要有搞垮团队的潜力,普通Leader基本没戏. 不过 ...
- 一个运维工程师必须要知道的(工作职责与应用场景)干货整理
目录: Linux运行 工作中运维应用场景 运维的发展过程 运维分类与工作职责 运维平台和工具 一.Linux运行 1. 什么是linux运维? 运维是指大型组织已经建立好的网络软硬件的维护,就是要保 ...
- 阿里六年团队Leader实战秘诀|程序员最重要的八种软技能(找工作/就业生必读)
前言 此笔者在带团队的六年中发现,程序员们在职场都有一个共同的困扰:"好像写代码都没什么问题了,日常工作基本上都是应付业务需求的开发,好像找不到其他的更大的附加价值了,我应该找一些什么样的发 ...
- 一个开发团队、软件公司,团队工作氛围很重要,没有好氛围难出好产品、好项目...
接触软件行业很多年有些年头了,展望过去的岁月,总想写点儿东西,总结总结,我也 不怕拍砖了,曾经也换过很多公司.跳过很多槽,现在想想,总结出来:"天下的乌鸦 是一样黑的",没有理想的 ...
- 工作那些事(三十一)怎样带好一个项目团队
非常多人写了几年代码都想去做管理,事实上做管理要处理的事情很多其它,要协调内部和外部资源,要会踢皮球,把问题抛给别的部门.与其它主管扯来扯去.那怎样才干带好一个项目团队呢. 要带好一个团队,首先是领导 ...
- 4个步骤成功构建出一个机器学习团队
在过去的几年里,机器学习有了巨大的发展.但是,尽管机器学习是一门学科,管理机器学习团队的技艺却更年轻.当今许多机器学习管理人员被迫进入管理岗位,要么是出于需要,要么是因为他们是最好的个人贡献者,而且许 ...
- 团队开发经验:如何带领一个项目团队并做好项目总结 !!
最近带领一个小团队做完一个项目,项目虽不算大,可五赃俱全,感觉在这项目中最重要的还是沟通协调.下面是我自己经过这个项目,自己的一点体会,写在这里,总结自己的思路,并希望在以后的项目中有更多的提高,到时 ...
最新文章
- 【Matlab】如何对二维矩阵进行线性/非线性插值?
- oracle数据库连接数超了,oracle数据库当前和最大连接数
- 读《纸本书变电子书是很小的事》有感
- 大数据学习笔记48:Flume Sources(Flume源)
- 1024程序员节开源技术英雄会 参会“英雄榜”发榜
- SSM整合时IDE: File is included in 4 contexts
- spark常见问题定位
- formdata 嵌套_解决form嵌套
- kotlin android 注解,注解 - Kotlin 语言中文站
- 静态页面转换为模板2
- linux下tar命令压缩/解压缩.tar/.gz/.bz2文件、分卷压缩
- qq音乐api接口梳理
- 使用css修改input的文字提示语颜色
- php beanstalk 客户端,Pheanstalk(beanstalk的PHP客户端)-连接如何工作?
- MIT6_0002F16_ProblemSet4
- 用虚拟机写java程序_JAVA是什么?java是狗屁!写java程序说穿了就是在对java虚拟机这个软件进行应用。...
- 退休后多长时间能领到工资
- 顺序栈的创建以及各种操作
- android开发笔记之sh脚本
- 【游戏推荐】癞子斗地主--OGEngine精品游戏推荐系列【一】