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

2023-05-16

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

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

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

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

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

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

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

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

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

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

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

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

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

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

就像有人说的:

关注细节的,是工程师

关注过程的,是项目经理

关注结果的,是老板

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

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

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

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

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

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

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

1.管理好客户的预期

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

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

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

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

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

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

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

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

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

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

怎样管好软件项目的事?

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

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

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

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

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

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

2.制定好项目计划

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

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

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

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

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

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

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

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

  • 控制你想写代码的冲动

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

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

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

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

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

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

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

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

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

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

  • 形成自己的管理风格

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

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

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

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

  • 坚持就是胜利

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

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

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

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

总结

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

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

思考

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

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

技术转管理,先来试试管理好项目 的相关文章

  • Ubuntu18.04 安装有道词典youdao-dict

    1 有道词典官网下载Ubuntu amd64 版 deb文件 http cidian youdao com multi html 2 下载到Downloads文件夹 3 安装 cd Downloads sudo dpkg i youdao
  • 启动rqt_graph,提示/opt/ros/melodic/share/pr2_motor_diagnostic_tool下的plugin.xml文件有问题

    问题 xff1a 如题 xff0c 打开plugin xml xff0c 发现是空白的 解决方法 xff1a 找到pr2的github xff0c 下载复制到 opt ros melodic share pr2 moto diagnosti
  • Ubuntu下wifi适配器、蓝牙找不到

    方法 xff1a 1 xff09 在windows系统下安装wifi驱动 xff0c 蓝牙驱动等 xff1b 2 xff09 关机 xff0c 不是重启 xff01 然后再次手动开机 3 xff09 在ubuntu中查看wifi 蓝牙的开关
  • Linux与gitee的连接

    当我们在Linux系统下完成代码后 xff0c 希望能跟在windows操作下一样 xff0c 将在编译器上写好的代码传送到远端 xff08 gitee xff09 上 这也不难 只需要按以下步骤即可完成 第一 xff1a 先在gitee上
  • STM32F103C8T6点亮LED灯(流水灯)(IO口的初始复用功能)

    xff08 1 xff09 序言 刚开始学 STM32 xff0c 当然是点亮LED灯了 xff0c 从arm中的 hello word 开始着手 软件安装 xff0c 硬件连接 xff0c 前面文章已经有讲 xff0c 这里不再多说 xf
  • 在不ROOT的条件下通过WIFI调试android程序

    1 通过USB连接设备 xff0c 确保调试运行正常 2 运行 adb tcpip 5555 3 运行adb connect lt devices ip gt 5555 4 断开USB连接 xff0c 查看是否能正常调试 5 如需要再次利用
  • Oracle 11g单实例使用ASM注意事项

    1 etc hosts文件一定要写正确 A 确保127 0 0 1对应的仅仅是localhost等 xff0c 不能对应主机名 B 一定要把本机ip地址以及对应的主机名称加到下面行里 2 配置ASM最后执行第二个root脚本时 xff0c
  • Win32 SDK开发中对话框控件消息处理

    LRESULT CALLBACK WndProc HWND hWnd UINT message WPARAM wParam LPARAM lParam switch message HANDLE MSG hWnd WM CREATE OnC
  • win32 SDK开发中打开 保存文件对话框的使用

    示例程序如下 TCHAR strFileName MAX PATH 61 T 34 34 TCHAR strPath MAX PATH 61 T 34 34 OPENFILENAME ofn 61 sizeof OPENFILENAME N
  • static 修饰的全局变量具有内部链接的一个例子

    很久不能明白这个事情 xff0c 下面自己来举个例子吧 xff1a 文件1 c include lt stdio h gt extern int s int main printf 34 d n 34 s return 0 文件2 c in
  • CentOS6 虚拟机管理工具 virt-manager 在Xmanager键位混乱问题

    平时一直在Linux下面管理虚拟机 xff0c 没有啥问题 xff0c 今天由于工作需要 xff0c 在Xmanager中进行虚拟机管理 xff0c 发现virt manager管理工具中虚拟机控制台登录键盘映射错乱 xff0c 经研究发现
  • 在Jdeveloper 11gR2中传递url参数到由task flow构成的区中

    1 建立环境 新建fusion web application gt PassVar 在默认任务流 adf config xml里面创建view welcome和相应的jsf页面 新建bounded任务流passVar xml 在任务栏中添
  • Oracle ADF控件屏幕居中

    在某些情况下 xff0c 比如登录窗口 xff0c 我们希望能位于屏幕正中央 在ADF中通过下面步骤实现 1 新建fusion web application gt CenterItem 在默认任务流 adf config xml里面创建v
  • 顺序表的创建与使用

    顺序表的创建与使用 这里还定义了一个数据类型的宏 xff0c TYPE 首先需要设计数据结构 xff0c 这里设计了两个成员 xff1a 数组首地址和元素个数 然后是进行各种业务功能的分函数 xff1a 创建顺序表 销毁顺序表 访问顺序表中
  • 顺序栈的创建与使用

    顺序栈的创建与使用 首先是各种函数的头文件声明 这里还另外定义了一个数据类型的宏 xff0c int类型数据暂时用作TYPE替换 xff0c 也可以替换成其他类型数据 然后是设计数据结构体 xff0c 这里定义了三个成员变量 其次是实现各项
  • 利用C++模板封装链表

    利用C 43 43 实现链表模板类 include lt iostream gt include lt stdlib h gt using namespace std template lt typename T gt class Node
  • 利用套接字创建本地socket文件完成本地进程间通信

    利用套接字创建socket文件完成本地两个进程之间的通信 xff0c 这里分为进程A和进程B 进程A 头文件 进程A里面首先是各种头文件 xff1a 1 include lt stdio h gt 2 include lt stdlib h
  • C++在字符串中搜索特定的字符

    C 43 43 在字符串中搜索特定的字符 在字符串中搜索特定字符是指在字符串中寻找是否存在指定的字符或字符集 include lt iostream gt int main int argc const char argv std stri
  • C++中在字符串中提取子字符串

    C 43 43 中在字符串中提取子字符串 从字符串中提取子字符串是指将一个字符串中的一部分截取下来形成一个新的字符串 include lt iostream gt int main int argc const char argv std
  • C++中如何访问字符串中的单个字符

    访问字符串中的单个字符 访问字符串中的单个字符是像字符数组那样使用下标访问字符串中的某个元素 include lt iostream gt int main int argc const char argv std string str1

随机推荐

  • c中有时候一个名字具有块作用域但是有外部链接的一个例子

    文件1 c include lt stdio h gt void f void s具有块作用域 xff0c 但是具有外部链接 extern int s printf 34 d n 34 s int main f return 0 文件2 c
  • Javascript Map 对象使用说明

    Map 是 ES6 中引入的一种新的数据结构 xff0c 对象保存键值对 任何值 对象或者原始值 都可以作为一个键或一个值 以前用的JS对象 Object也是可以把其属性看作键来定位数据 xff0c 但 Map 和 Object 是有区别的
  • 如何将Mac备份到外置硬盘?

    Apple爱好者喜欢该其设备的时尚设计和简单的用户界面 然而 xff0c 设置Mac的备份可能会令人沮丧 xff0c 因为大多数外部硬盘驱动器在使用之前必须进行格式化 然而 xff0c 如果了解如何将Mac备份到外部硬盘驱动器后 xff0c
  • C++中字符串的交换与复制

    字符串的交换是指将两个字符串的内容互相交换 字符串复制是指生成一个新的字符串其内容为原有字符串的内容 include lt iostream gt int main std string str1 61 34 Hello 34 std st
  • Kali2022安装Docker和Docker-compose以及更改国内镜像源

    装之前可以选择更新一下软件库 root kali apt update 安装docker root kali apt install docker io root kali docker version 查看Docker版本 root ka
  • Mac系统配置php环境

    写在前面 叨叨叨 急着配环境的同志们可以绕道 最近学校的实验室里接了一个小项目 考勤刷卡系统 xff0c 利用RFID在硬件层获取学生卡的ID xff0c 通过wifi传输至服务器 xff0c 进行考勤信息存储 xff0c 手机端获取服务器
  • 病毒变种--C语言练习

    病毒变种 病毒DNA可以表示成由一些字母组成的字符串序列 xff0c 且病毒的DNA序列是环状的 例如 xff0c 假设病毒的DNA序列为baa xff0c 则该病毒的DNA序列有三种变种 xff1a baa aab aba 试编写一程序
  • http、https 等 常用默认端口号

    HTTP协议代理服务器常用端口号 xff1a 80 8080 3128 8081 9080 SOCKS代理协议服务器常用端口号 xff1a 1080 FTP xff08 文件传输 xff09 协议代理服务器常用端口号 xff1a 21 Te
  • 网络传输性能netperf测试方法和下载

    简介 Netperf是一种网络性能的测试工具 xff0c 主要针对基于TCP或UDP的传输 Netperf根据应用的不同 xff0c 可以进行不同模式的网络性能测试 xff0c 即批量数据传输 xff08 bulk data transfe
  • 个人服务器(Linux)安装confluence

    个人服务器 Linux 安装confluence 文章目录 个人服务器 Linux 安装confluence 前言 一 服务器配置 二 JDK环境安装 1 下载java8 2 上传安装包 3 解压缩并重命名 4 配置jdk环境变量 5 测试
  • 关于Windows利用Mstsc远程访问Ubutu的VNC方法

    这里发现了一篇网上很好的文章 xff0c 实现也很顺利 xff0c 因此将那篇文章直接引用过来 地址为 xff1a https www cnblogs com xuliangxing p 7642650 html
  • VSCode 常用且好用的插件推荐

    python相关插件 Tabnine AI代码提示器 xff08 支持JavaScript Python Java Typescript amp all other languages xff09 Python vscode 的 pytho
  • Qt中实现图片透明度设置与显示

    在使用QGraphicsScene过程中 xff0c 想要实现背景和前景图层叠加显示 xff0c 需要设置对应层绘图的透明度的设置 采用重写drawBackground QPainter painter const QRectF amp r
  • c语言现代发方法19章学习经历记录

    19 4 5用栈实现抽象数据类型 这里简直太牛了 xff0c 直接定义一个结构体类型的栈 xff0c 里面是一个头节点 xff08 也是一个指针 xff09 后面直接定义一个栈的指针对象 xff0c 那么就可以随意改变栈里面的内容 xff0
  • 计蒜客 信息学题库 T1068 救援

    T1068 救援 救生船从大本营出发 xff0c 营救若干屋顶上的人回到大本营 xff0c 屋顶数目以及每个屋顶的坐标和人数都将由输入决定 xff0c 求出所有人都到达大本营并登陆所用的时间 在直角坐标系的原点是大本营 xff0c 救生船每
  • 计蒜客 信息学题库 T1079 开关灯

    T1079 开关灯 假设有 N 盏灯 xff08 N 为不大于 5000 的正整数 xff09 xff0c 从 1 到 N 按顺序依次编号 xff0c 初始时全部处于开启状态 xff1b 有 M 个人 xff08 M 为不大于 N 的正整数
  • 利用python实现ftp的文件读写

    ftp登陆连接 from ftplib import FTP 加载ftp模块 ftp 61 FTP 设置变量 ftp set debuglevel 2 打开调试级别2 xff0c 显示详细信息 ftp connect 34 IP 34 34
  • Serdes原理

    Serdes原理 1 为什么需要SerDes 电子系统中 xff0c 传送数据的方式一般有两种方式 xff0c 串口或者并口 xff0c 具体定义不区分 先来说一下同步与异步通信 二者的区别在于是否有时钟线来对齐数据 xff0c 采样数据
  • 02、oh my zsh安装和git 常用命令简介

    大家好 xff0c 上一节我们简单介绍了git xff0c 对比了git xff0c gitlab github之间的关系 xff0c 最后安装了git xff0c 这节我们学习一些git的基本的命令 另外希望初学者可以跟着博客逐个练习这些
  • 技术转管理,先来试试管理好项目

    今天分享的主题是 xff1a 如果你想技术转管理 xff0c 先来试试管好一个项目 技术转管理 xff0c 是很多技术人员的梦想 xff0c 这也是30多岁之前还在做技术的人 xff0c 也会对自己常常发出居安思危的意识表现 xff0c 所