技术转管理,先来试试管理好项目

news2024/10/7 6:45:10

今天分享的主题是:如果你想技术转管理,先来试试管好一个项目

技术转管理,是很多技术人员的梦想,这也是30多岁之前还在做技术的人,也会对自己常常发出居安思危的意识表现,所以经常有人问我,怎么样才能转型管理?

项目管理,是最基础的管理,既要管理一个项目,又要协调整个团队一起,完成共同的目标。

我的管理转型就是从项目管理开始的,在从技术转型项目管理的过程中,让我以前专注于局部技术实现,逐渐转向关注项目整体;从个人的单打独斗,到借助整个团队的力量一起完成一个项目。

一直到后来做开发总监去管理整个开发部门,发现还是一样绕不开要管理项目,只是从直接管项目变成了间接管项目而已。

所以我一般会建议:如果你想技术转管理,先试试管好一个项目。项目管理通常是技术人员转型管理的第一步,也是非常关键的一步!

技术人员转型管理的障碍是什么?

很多人认为技术人员是不适合做管理的,包括网上会有很多对程序员的刻板印象,比如说:极端,木纳,不善交际,头发少,穿格子衫......

而我了解的程序员却不是这一样子的,他们都很聪明,学习能力强,而情商这些其实和其他职业群体是没有区别的。

那么为什么程序员会给人这种刻板印象呢?

一方面原因是这个群体勇于自黑,不介意这些印象;另一方面则是他们过于专注技术实现,沉浸于细节中,而忽视了其他事情

程序员总是想着如何技术实现、用什么语言框架、怎么提高效率......要钻研技术,这些是非常好的优点,但是要转管理,这反而会是一种障碍

因为管理,最重要的是一点就是大局观,要能从整个项目的角度,从整个团队的角度去思考,去确定方向,去发现问题,对问题及时解决及时调整

但是当你把注意力都放在技术细节上,就容易忽视其他事情,例如和其他人之间的沟通,不关心当前项目进展

就像有人说的:

关注细节的,是工程师

关注过程的,是项目经理

关注结果的,是老板

所以,如果你要技术转管理,可以先从管好一个项目开始,这也是为什么我在本文章一开始,就建议你要逐步转变思维,从技术思维到工程思维,不要仅仅局限于自己负责的那一个小模块,而是要多从项目的整体思考

怎能样去管理一个软件项目?

软件项目管理设计知识不少,既有传统的项目管理知识,又需要掌握软件工程的知识,所以很多人一谈到项目管理就觉得很难很复杂

我在专栏中一直强调“道、术、器”,对于很多知识,如果我们能总结出其中的“道”,再去看很多问题,其实就没那么复杂了

就软件项目管理来说,“道”就是管好人,管好事。如果从这两个维度去看如果管理项目,就会发现其实并不难,有很多“术”可以为我们所用。

怎么管好软件项目中的人?

软件项目管理的一个维度是管人。项目管理中的人,主要涉及两类:客户和项目成员。

1.管理好客户的预期

客户,就是会使用软件产品的人,通常也是给你项目出钱的人。

对于客户的管理,就是对于客户期望值的管理,如果你项目的结果高于客户的期望,那么就可以说你的项目就是成功的,如果没有达到客户的期望,可能就是不成功的

想要满足客户预期,通常来说,就是你能在项目的质量、范围、时间和成本上达到要求

  • 质量达标:交付产品是高质量的,满足客户需求的
  • 完整交付:按照约定的功能范围交付最终产品
  • 按时交付:项目按照客户认可的进度完成
  • 预算之内:在预算内完成项目

这四个要素,并不是说必须都要满足,其实很多时候是可以协商的,重点是要达到一个平衡,怎么达到平衡?哪天花点时间进行详细的专栏商家,在csdn上讲讲

2.用流程和规范让项目成员一起紧密协作

项目成员,也是帮助你一起完成项目的人

对于项目成员的管理,不需要过多依赖人的管理,否则项目经理就会成为项目管理的瓶颈,所以更多要落实到流程和工具上

好的项目管理,不需要直接去管人,而是管理好流程规范;项目成员不需要按照项目经理的指令做事,而是遵循流程规范

合适的项目管理工具,也可以简化流程,保障流程的执行,提高效率

怎样管好软件项目的事?

软件项目管理的另一个维度就是管事。软件项目中的事,是指要完成项目目标,在整个开发过程中所产生的一系列任务,对项目中事情的管理,本质就是对软件开发过程的管理

1.选择适合项目的开发模式

软件项目的过程管理,和其他工程项目完全不一样,有其独特性,好在软件工程队这些过程的开发模式都已经有了很好的总结,我们直接借用就可以了。

选择好开发模式,才好确定后续的一系列问题,例如流程规范、使用什么工具,如何制定项目计划等

所以对软件项目过程的管理,首先就是要根据特点选取合适的开发模式,是敏捷开发还是瀑布模型或者瀑布模型的衍生模型?是一步到位还是逐步迭代

当然,开发模式选好了后,还需要配套的流程规范,以及合适的工具,以保障开发模式的执行

2.制定好项目计划

凡事预则立不预则废,在选择好开发模式后,紧接着就是要做好项目计划,有了项目计划,才能有计划有目的地推动项目进展,出现问题也能及时发现、及时调整

3.对计划进行跟踪和控制,同时做好风险管理

计划指定后,并不是说事情就会完全按照我们设想的进行,实际执行难免会和计划有些出入,所以还需要对计划进行跟踪和控制。当项目的推进过程中,如果计划有出入时,需要分析原因,对计划做出调整

同时,也不能盲目乐观,对于项目过程中可能存在的风险要进行识别,做好B计划,这样一旦风险发生变成问题,可以及时应对,减少风险导致的损失

管好人、管好事,你就能管好软件项目。除了上面介绍的一些项目管理知识还有很多。这里并不是说其他知识内容不重要,而是在刚开始的时候,先把这些事情做好,可以保证项目管理不会出现大的偏差,然后逐步拓展到其他知识领域

在这里,我把前面说的内容做了个简单的思维导图,希望可以对你的项目管理转型起到一定的帮助作用

技术转管理的一些经验教训分享

技术转管理的路上肯定不会是一帆风顺的,要自己踩过很多坑才能成长,我这里也给你分享一点经验教训,希望能帮助你少走一点弯路

  • 控制你想写代码的冲动

       我给每一个刚从技术转型管理的同学的第一个建议都是一样的,那就是:“不要写代码,不要写代码,不要写代码,控制你想自己动手写代码的冲动”

        前面我说过技术人员转型管理的最大障碍是什么,那就是过于关注技术,而忽略了其他事情,从技术转型管理,是个巨大的转变,这种思维的转变是很难一蹴而就的

       对于程序员来说,写代码是自己的“舒适区”,而管理则是“学习区”或“恐慌区”,在转型的过程中,特别容易回到舒适区。

       比如说在项目进度吃紧的时候,你可能第一想法就是自己写代码帮助团队赶上进度

       但是,你要知道,但你转型管理后,你的主要职责就是管理,而不是写程序,如果你还把大部分时间都用在写程序上,那么你就很容易忽略项目中的问题,不如没有去关注项目的进展、目前项目的瓶颈、和客户以及其他项目组之间的沟通协调等

       这就是为什么你第一步是要控制自己写代码的冲动,作为一个项目管理者,你的第一要务是管理好项目,而不是去写代码。当你控制  不去写代码  以后,你才能把注意力放到团队和项目上去,去领导团队。团队出现问题时,你能及时解决、及时调整

       所以,如果你带的项目进度吃紧时,你要做的不是写代码,而是去帮助团队从其他角度想办法。

  • 团队的成功,才是你的成功

        我刚转型做管理的时候,问过老板一个问题:“是不是我爸上级的工作做了,我就能升值了?”老板的回答很出乎我意料:“并不是你把上级的工作做了就能升职,而是你的下级都成长了,能替代你的位置了,你就可以升职了。”

        这让我明白一个道理:作为一个管理者,团的成功,才是你的成功。做程序员的时候,把代码写好就很成功了,但是转型做管理后,团队的成功和项目的成功,才是你的成功。

  • 形成自己的管理风格

        我刚开始工作的时候,当时的项目经理很厉害,对我们要求非常严厉,做错了可能就要挨批评,项目管理的很好。那段时间我也进步很大,所以我觉得他说一个很好的项目经理,我就想着自己以后也要像他一样去管理项目

        等我开始管理项目时,我也想像他一样去严厉的对待下属,但我的性格是比较温和的,我没有办法去做到动不动就去责骂、批评下属,这也让我有了很大的困惑

        后来我尝试着结合自己的性格特点,更多地去激励、帮助下属。在这种管理风格下,整个团队的氛围很融洽,大家做事情也积极主动,一样达到了很好的管理目标

        所以说管理这种事,并不是只有一种风格一种方法,你完全可以根据自己的特点,找到合适自己的管理风格

  • 坚持就是胜利

        技术转型管理的过程,一定不会是一帆风顺的,你会面临很多挑战,会有非常大的压力。这时候最容易产生的冲动行为就是:“算了,还是回去写程序吧!”

        我在转型的过程中也遭遇过非常大的压力,遇到各种困难,掉了好多头发。我有过好多次想放弃的念头,最终还是咬咬牙,坚持了下来

        这样过了几年后,我再回头看当初特别难、压力特别大的事情,现在看起来根本不算什么。如果我当初真的放弃了,恐怕再难迈过那道坎,完成转型

        一旦你已经下决心要转型,就不要轻言放弃,坚持就是胜利

总结

想要技术转型管理,首先从转变思维方式开始,从技术思维到管理思维,从关注细节到关注整体。然后去改变习惯,控制自己想写代码的冲动,多去从其他角度想办法。

要管理好一个项目,关键是要管理好项目中的人和事。对客户要管理好期望,对项目成员则通过合理的流程规范更好的一起协作;对于项目中事的管理就是对软件开发过程的管理,选择好开发模式很重要,然后就是制定好计划,按照计划推进,过程中不断的调整,并且管理好项目中的风险

思考

你是否有想法从技术转型管理,打算什么做?

如果你正在准备转型或者转型中,有没有遇到什么困难,打算怎么去解决?

欢迎在留言区与我分享讨论^_^

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/509718.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatGPT润色中英论文软件-文章修改润色器

chatGPT可以润色英文论文吗? ChatGPT可以润色英文论文,它具备自动纠错、自动完善语法和严格全面的语法、句法和内容结构检查等功能,可以对英文论文进行高质量的润色和优化。此外,ChatGPT还支持学术翻译润色、查重及语言改写等服务…

Java每日一练(20230510) 生成器类、螺旋矩阵II、删除链表的重复元素II

目录 1. 定义一个类Generator 🌟🌟 2. 螺旋矩阵 II 🌟🌟 3. 删除排序链表中的重复元素 II 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日…

Linux 设备树

1 什么是设备树? 设备树(Device Tree),将这个词分开就是“设备”和“树”,描述设备树的文件叫做 DTS(Device Tree Source),这个 DTS 文件采用树形结构描述板级设备,也就是开发板上的设备信息,比如 CPU 数量…

【Proteus仿真】| 05——问题记录

系列文章目录 【Proteus仿真】| 01——软件安装 【Proteus仿真】| 02——基础使用 【Proteus仿真】| 03——超详细使用教程 【Proteus仿真】| 04——绘制原理图模板 【Proteus仿真】| 05——问题记录 文章目录 前言1、51单片机仿真2、stm32仿真1. stm32 adc 采集电压一直为0 3、…

显卡3080设备CentOS 7.9 环境安装最新anconda、tensorflow-gpu 、cudatoolkit、cudnn、 python

目标:使用3080显卡搭建环境 系统安装 显卡驱动安装: 安装anconda 安装 python 安装 :cuda 安装:cudnn 安装 :tensorflow 一:系统安装:详见历史文档 二:显卡驱动安装:详见历史 三:整…

安装2023最新版_华为欧拉操作系统_OpenEuler操作系统_并配置IP地址_联网---linux工作笔记055

强调,一定要记得,硬盘多给点,50G根本不够用,搭建集群的话,自己测试都要100G才行哈.. 要不然麻烦,因为别的可以动态修改,但是硬盘大小修改了,不起作用,需要在 linux中再设置分区很麻烦 https://www.openeuler.org/zh/download/ 首先去下载安装包 然后找到这个安装包下载 然…

虚拟机中linux操作系统如何连网

文章目录 方法镜像来源本文前提创建centos7虚拟机1. 创建新的虚拟机,选择典型配置2. 安装来源选择上述下载的centos3. 命名虚拟机时注意事项如下图所示4. 后面配置硬盘大小默认20GB足以,然后调整虚拟机设置,可参考下图5.运行虚拟机 实操建议 …

混频器IP3的测量以及测试误差的来源分析

混频器线性度一直是射频系统设计面临的一个关键问题。混频器的非线性会产生不需要的、不可滤的杂散、互调和非线性失真。例如,非线性混频可能导致不希望的杂散,例如2fRF✕2fLO 或2fRF✕fLO 频率分量,加剧射频系统频谱再生问题。 1、IP3和IMD…

工具接口调用报错:“error“: “Unsupported Media Type“

工具接口调用报错:"error": "Unsupported Media Type" 问题原因: Media Type,即是Internet Media Type,互联网媒体类型,也叫做MIME类型,在Http协议消息头中,使用Content-T…

安全成就未来|Fortinet Accelerate 2023·中国区巡展首站启幕

Fortinet Accelerate 2023中国区巡展 年度网络安全盛会 Fortinet Accelerate 2023中国区巡展,昨日在深圳拉开帷幕,开启15城巡展的“首城之站”。本年度巡展主题“安全成就未来”,Fortinet与中企通信、亚马逊云科技等生态合作伙伴&#xff0c…

【动态代理】JDK动态代理与cglib动态代理源码解析

JDK动态代理 demo展示 UserService,接口类 public interface UserService {void addUser(); }UserServiceImpl,实现类 public class UserServiceImpl implements UserService {Overridepublic void addUser() {System.out.println("register al…

【运动规划算法项目实战】如何实现Dubins曲线和Reeds-Shepp曲线(附ROS C++代码)

文章目录 前言一、Dubins曲线二、Reeds-Shepp曲线三、应用场景四、代码实现4.1 Dubins曲线实现4.2 Reeds-Shepp曲线实现4.3 RVIZ显示五、总结前言 Dubins曲线和Reeds-Shepp曲线在机器人、自动驾驶行业中是非常重要的路径规划算法,它们能够有效地在不同的场景中生成最短路径,…

zlmediakit 新增可以使用硬件加速的转码http api接口方法

根据项目需求,我们需要使用硬件解码的方式进行网络摄像头数据帧的解析,给到算法模块使用 1、通过ffmpeg命令实验,ffmpeg -i IPC_URL -f rtsp rtsp://*/live 该命令默认是使用cpu进行解码的,我们需要使用GPU进行解码。 2、ffmpe…

皮特测评:蓝牙耳机哪个品牌最好?300元内最好的蓝牙耳机

大家好,我是皮特,今天要发布的测评主题是:“蓝牙耳机哪个品牌最好?”粉丝们私信给我希望能分享一期平价好用的蓝牙耳机,我购入十多款蓝牙耳机进行了多角度的测评后,总结了五款表现最优秀的蓝牙耳机&#xf…

神仙级python入门教程(非常详细),从零基础入门到精通,从看这篇开始

一.初聊Python 1.为什么要学习Python? 在学习Python之前,你不要担心自己没基础或“脑子笨”,我始终认为,只要你想学并为之努力,就能学好,就能用Python去做很多事情。在这个喧嚣的时代,很多技术…

前端开发之Echarts 图表渐变两种实现方式和动态改变图表类型

前端开发之Echarts 图表渐变两种实现方式 前言效果图一、echarts中存在两种渐变方式1、color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{},{},{}])简单案例 2、{type: linear,x: 0,y: 0,x2: 0,y2: 1, [{},{},{}]}案例 二…

硬件通信之 从单片机到C/C++指针详解

一 单片机理论概述 1.1 单片微型计算机(Single Chip Microcomputer)简称单片机,是把组成微型计算机的主要功能部件(CPU、RAM、ROM、I/O口、定时/计数器、串行口等)集成在一块芯片中,构成一个完整的微型计…

centos7安装nginx

1.配置环境 1).gcc yum install -y gcc2).安装第三方库 pcre-devel yum install -y pcre pcre-devel3).安装第三方库 zlib yum install -y zlib zlib-devel2.下载安装包并解压 nginx官网下载:http://nginx.org/en/download.html 或者 使用wget命令进行下载 wg…

第一期 | ICASSP 2023 论文预讲会

ICASSP 2023 论文预讲会是由CCF语音对话与听觉专委会、语音之家主办,旨在为学者们提供更多的交流机会,更方便、快捷地了解领域前沿。活动将邀请 ICASSP 2023 录用论文的作者进行报告交流。 ICASSP (International Conference on Acoustics, …

GraphHopper调研笔记

一、 GraphHopper GraphHopper是一种快速且内存有效的Java导航引擎,默认使用OSM和GTFS数据,也可导入其他的数据源。支持CH(Contraction Hierarchies)、A*、Dijkstra算法。 1、应用介绍 graphhopper有以下几种常见的地图应用&am…