当前位置: 首页 > news >正文

我的项目管理生涯

1 前言

从好几年前就想写几篇关于自己职业生涯的文章了,一直由于各种原因没有写成,正好借新的工作机会,尤其是项目管理这段工作经历,计划通过这一二篇文章进行总结和反思一下,以期更顺利的开展相关工作或是自己能更上一层楼。

2 主要经历

从2012年年中开始,我由Java架构师转做项目经理。当时转型原因也是因为看了不少“程序人生”的文章,了解了大家现在所熟知的35岁现象,借着一个机会就转做项目经理了。从12年7、8月份开始做企业的相关项目,一直做到了14年。现在回想起来当时做项目经理最大的感受是心累,作为项目经理各方面都得操心,不像做程序员时,写好自己那部分的程序代码就可以了。作为项目经理,你相当于是公司派出去的代表,你要对项目团队最后的结果负责,你要利用有限的人力、物力、时间内给公司和甲方有一个基本满意的交待。最后还好,凭借着自己技术功底和理论的项目管理经验,算是合格过关了。

时间来到了15年,公司开始进行组织机构改革,要变成强矩阵式的管理。凭着前2年的项目经历和公司领导的认可,我顺利当上了PMO部门经理。挑战又进一步加大了。整整一年多的时间,我坚持了下来,以至于后续的2年时间,我感觉无比的轻松。记得高峰时间我当时管理了接近20个项目经理,60多个项目在并行。我们制定了一系列的项目管理制度,印象比较深的有项目工时估算、项目激励与考核还有各种项目文档模板。16年和17年我们成立了业务事业部,我负责其中的一个业务部。工作也由前几年项目工作再往前进了一步,做了一些市场和销售支持的工作。

时间来到了18年,由于公司业绩对赌没有完成,公司又进行了一系列的调整。我先后做了研发管理和项目管理的相关工作直到最后公司解散。2021年3月,我离开了工作14年的公司,通过猎头顺利进入到了另一家大型软件公司,也终于去感受到大型软件公司的工作氛围,在23年年初,由于一些机缘巧合我跳槽到一家创业公司去做了公司的合伙人,主要是负责企业的产品研发和实施工作。

3 感悟和收获

3.1 关于打工和事业

在一家公司内,只要你不是公司的实际控制人,职位做到再高,你也只是打工人,这份工作不是你自己的事业。换句话说,你要随时做好走人的准备。因为天有不测风云时常发生,尤其在这个经济环境下。所以上了年纪的人(这里可以是35岁或者40岁或更大)一定要有危机意识,离开了公司,一定要有自己能干的事。当然财务自由的人除外。

3.2 关于项目管理证书

建议做IT行业的同志,无论你做哪一个岗位,有了三五年的工作经验后,一定要考取一个项目管理证书。建议考一下软考的“信息系统项目管理师”证书和PMP证书。其中取得“信息系统项目管理师”证书的人员可以申请评聘为高级工程师职务,PMP证书有些单位招聘项目经理时,有此证书的可以优先录用。当然,大家也可以像我一样,先拿到软考的“系统集成项目管理师”,再拿“信息系统项目管理师”,最后拿 PMP证书。怎么才能拿到证书,我认为最快的方式是参加培训,因为培训老师已把项目管理知识体系已给我们梳理的非常清楚了,只要按照老师的方法去实践,拿到证书是没有问题的。

3.3 关于项目管理知识

学习和实践了这么多年项目管理,给我印象最深的还是范围、时间、成本、质量的项目管理三角形,如下图所示:

一、范围:范围是项目管理的核心,项目管理一定要从这个项目的业务核心目标出发,要能识别出业务的核心目标,并且超预期的满足它,项目基本上就成功了一半。

二、时间、成本、质量都是项目成功重要约束条件,一个成功的项目在进度、成本和质量上都应该基本符合项目的要求。

三、项目范围如果扩大或缩小,就直接影响了时间、成本和质量的大小(长短、高低、好差)。在范围不变的情况下,时间、成本和质量之前也是相互影响的,他们之间一定要形成一个三角形的。

另外5个过程组和9个知识领域,也得需要基本清楚,基本上只要记住大块的内容就可以了,以下内容大家可以参考一下:

知识领域项目管理过程组
启动过程组规划过程组执行过程组监控过程组收尾过程组
整合管理制定项目章程制定项目管理计划指导与管理项目执行监控项目工作结束项目或阶段
实施整体变更控制
范围管理收集需求核实范围
定义范围控制范围
创建工作分解结构
时间管理定义活动控制进度
排列活动顺序
估算活动资源
估算活动持续时间
制定进度计划
成本管理估算成本控制成本
制定预算
质量管理规划质量实施质量保证实施质量控制
人力资源管理制定人力资源计划组建项目团队
建设项目团队
管理项目团队
项目沟通管理识别干系人规划沟通发布信息报告绩效
管理干系人期望
项目风险管理规划风险管理监控风险
识别风险
实施定性风险分析
实施定量风险分析
规划风险应对
项目采购管理规划采购实施采购管理采购结束采购

3.4 关于管理

做了这么多年的项目管理和部门管理,我认为最重要的沟通方面是最重要的,也是最最基础的。我也接触了不少讲沟通的一些理论模型,我认为还是以下这个模型,是我印象最为深刻的,今天翻出来,重新温习一下。

沟通要做到人和事并重,才能达到最好的效果,尤其和同级或下级的沟通更是如此。关于沟通和管理方面的技能培训,推荐大家可参加“DDI英跃”学习,一定会让你受益匪浅的。

和上级的沟通,是最重要的。首先沟通的对象一直要搞清楚,如下面的场景:在一个部门里,有部门的老大,老二,你作为老二管辖下的这个部门的组长,这种场景下千万别以为你只需要和老二沟通好就可以了,尤其在部门的老大和老二看起来不是那么和谐的情况下,因为决定你生死的一般情况下只有老大说了算。其次,老大肯定是很忙的,你要定期的和你的上级(这种情况一定是老大本人)进行沟通,让他能够理解和支持你的工作。

3.5 关于项目和产品

做项目时间长了再转型做产品的确是需要花些时间的,最近这两年一直做B端的产品,感受还是很明显的。

一、做项目时,你只需要面对一个客户就行,而做产品你需面对整个行业和许多客户,这就要求你必须得是个业务行家才行,否则你容易走向偏道,光是需求你就搞不清楚该不该做。如何判定需求该不该做,比较实用的办法就是这个需求是不是至少3个客户都提了,如果都提了,可能就是一个非个性化需求。

二、项目的需求在一定程度上范围是明确的,而产品的需求及优先级需要产品经理通过对行业和产品业务目标的理解,进行明确。随着客户的催促,产品经理一不小心就跳进了过度研发的泥潭。

3.6 关于职业生涯

做IT的尤其是写代码,肯定得需要做职业发展规划的。35或40岁了还在以写代码为主,在我们国内肯定是不行的,要更早的转向其它岗位,如技术管理岗、项目管理岗等。我个人的职业岗位路径程序员、架构师、项目经理、部门经理、其它管理岗位。

3.7 关于赚钱

君子爱财,取之有道。无论是打工、还是创业一定要走正道赚钱。因为我亲眼目睹了曾经的老板,由于公司经营的不合规,导致最后自己在晚年不保的事实,给我的冲击还是很大的。

4 最后

以上的观点,是本人的一些想法和体会而已,不见得一定对,欢迎大家进行交流,相互学习,共同进步。

相关文章:

我的项目管理生涯

1 前言 从好几年前就想写几篇关于自己职业生涯的文章了,一直由于各种原因没有写成,正好借新的工作机会,尤其是项目管理这段工作经历,计划通过这一二篇文章进行总结和反思一下,以期更顺利的开展相关工作或是自己能更上…...

ChatGPT Canvas:交互式对话编辑器

自两年前 ChatGPT 发布以来,主流 AI 均以对话形式进行交互。传统的对话式界面可以直观看到反馈结果,但在需要深度编辑和协作的项目中就略显局限。为了解决此问题,几个月前 Claude 就发布过 Artifacts 功能,用来拓展原有对话。而现…...

[Linux] Linux 的进程如何调度——Linux的 O(1)进程调度算法

标题:[Linux] Linux 的进程如何调度——优先级与进程调度 个人主页水墨不写bug 目录 一、前言 二、将要出现的概念 1.进程调度队列 2.位图 3.进程的优先级 三、Linux进程的调度过程 1.活动队列(*active指向的队列) 2.过期队列&#…...

Python使用Selenium动态爬取CSDN社区帖子的URL链接

前几天读了一篇CSDN社区的帖子,发现文章内容写得极好,值得借鉴学习。于是我想将那个社区的帖子都爬下来,但是那个社区发布的贴子挺多的,一直往下拉才到2022年5月的发布。于是我就只将5月份之前的爬下来就行,但是帖子是…...

【ShuQiHere】双系统指南:如何在 Linux 系统情况下安装 Windows 11,处理引导与网络问题 ️

【ShuQiHere】 🖥️💡 在安装 Windows 11 和 Linux 双系统时,常常会遇到各种棘手的问题,特别是在网络连接、BIOS 设置和引导修复方面。今天我将详细带你解决这些问题,让你顺利完成 Windows 11 安装,并恢复…...

jQuery EasyUI 扩展

jQuery EasyUI 扩展 引言 jQuery EasyUI 是一个流行的 HTML5 框架,用于构建交互式网页界面。它提供了一系列的 UI 组件,如布局、窗口、数据网格等,使得网页开发变得更加简单快捷。然而,尽管 EasyUI 功能丰富,但在某些特定场景下,开发者可能需要更多的定制化功能或组件。…...

408算法题leetcode--第24天

#378. 有序矩阵中第 K 小的元素 378. 有序矩阵中第 K 小的元素思路&#xff1a;值二分&#xff0c;如注释时间&#xff1a;O(log(r-l) * n)&#xff1b;空间&#xff1a;O(1) class Solution { public:int check(vector<vector<int>>& matrix, int target){/…...

【CKA】二、节点管理-设置节点不可用

2、节点管理-设置节点不可用 1. 考题内容&#xff1a; 2. 答题思路&#xff1a; 先设置节点不可用&#xff0c;然后驱逐节点上的pod 这道题就两条命令&#xff0c;直接背熟就行。 也可以查看帮助 kubectl cordon -h kubectl drain -h 参数详情&#xff1a; –delete-empty…...

STM32中断编程指南:NVIC和中断优先级

在STM32微控制器编程中&#xff0c;中断是实现多任务处理和实时响应的关键技术。NVIC&#xff08;Nested Vectored Interrupt Controller&#xff09;是STM32中的中断控制器&#xff0c;负责管理中断请求、优先级和中断向量。本文将详细介绍STM32的NVIC配置和中断优先级设置&am…...

ThreadLocal底层原理及数据结构详解

ThreadLocal允许为每个线程创建独立的变量副本&#xff0c;使得同一个ThreadLocal对象在不同的线程中拥有不同的值。它的主要作用是在并发环境下提供线程隔离&#xff0c;避免多个线程共享同一个变量&#xff0c;从而减少线程间的相互干扰。 ThreadLocal的核心在于为每个线程维…...

Android Framework AMS(02)AMS启动及相关初始化5-8

该系列文章总纲链接&#xff1a;专题总纲目录 Android Framework 总纲 本章关键点总结 & 说明&#xff1a; 说明&#xff1a;本章节主要涉及systemserver启动AMS及初始化AMS相关操作。同时由于该部分内容过多&#xff0c;因此拆成2个章节&#xff0c;本章节是第二章节&…...

速盾:游戏被攻击怎么办?

随着游戏行业的发展&#xff0c;游戏被攻击的情况也越来越多见。游戏被攻击可能导致游戏服务器崩溃、用户数据泄露、游戏体验受影响等问题。作为游戏开发者或运营商&#xff0c;面对游戏被攻击的情况&#xff0c;应该采取一系列的措施来应对。 首先&#xff0c;要及时发现游戏…...

BUU刷题-Pwn-shanghai2018_baby_arm(ARM_ROP_csu_init,ARM架构入门)

解题思路&#xff1a; 泄露或修改内存数据&#xff1a; 堆地址&#xff1a;无需栈地址&#xff1a;无需libc地址&#xff1a;无需BSS段地址&#xff1a;无需 劫持程序执行流程&#xff1a;ARM_ROP && mprotect函数(运行内存权限修改) && [[ARM_ROP_csu_init]…...

flutter_鸿蒙next(win)环境搭建

第一步 拉取鸿蒙版本flutterSDK仓库 仓库地址&#xff1a;OpenHarmony-SIG/flutter_flutter 第二步 找到拉取的仓库中的README.md 并根据说明配置环境 第三步 配置好环境变量之后 用管理员开启cmd 输入&#xff1a;flutter dcotor 并查看此时flutter所支持的系统 包括&…...

腾讯一面-LRU缓存

为了设计一个满足LRU&#xff08;最近最少使用&#xff09;缓存约束的数据结构&#xff0c;我们可以使用哈希表&#xff08;HashMap&#xff09;来存储键值对&#xff0c;以便在O(1)时间复杂度内访问任意键。同时&#xff0c;我们还需要一个双向链表&#xff08;Doubly Linked …...

k8s实战-1

k8s实战-1 一、资源创建方式1.命令行2.yaml 二、命名空间三、Pod总结 一、资源创建方式 1.命令行 就是直接通过命令的方式创建&#xff0c;比如我要创建namespace&#xff0c; kubectl create namespace hello删除&#xff1a; kubectl delete -f hello2.yaml 简单来说&am…...

Python进程池:提升你的并发性能

引言 在现代编程中&#xff0c;多核处理器的普及使得并发编程变得尤为重要。Python&#xff0c;作为一种广泛使用的编程语言&#xff0c;提供了多种并发和并行编程的工具。其中&#xff0c;multiprocessing库中的进程池&#xff08;Pool&#xff09;是一个强大的工具&#xff…...

内存占用估算方法

优质博文&#xff1a;IT-BLOG-CN 通过掌握每种数据类型的大小&#xff0c;就可以更准确地预测对象和数据的内存消耗。 一、基础数据类型 Java基础数据类型结构&#xff0c;在64位系统开启指针压缩情况下的内存占用字节数&#xff1a; booleanbytecharshortintlongfloatdoub…...

拓扑排序简介

拓扑排序(Topological Sort)是一种重要的图算法,用于对有向无环图(DAG, Directed Acyclic Graph)中的节点进行排序。拓扑排序的结果是一种线性序列,使得对于图中的任意一条有向边(u, v),顶点u都在顶点v之前。这种排序常用于任务调度、编译器依赖关系分析等领域。 拓…...

使用iTextPDF库时,设置文字为中文格式

在使用iTextPDF库时&#xff0c;设置文字为中文格式主要涉及选择合适的中文字体&#xff0c;并确保该字体能够正确渲染中文字符。由于iTextPDF的内置字体通常不支持中文&#xff0c;因此你需要加载一个支持中文的字体文件&#xff08;如TrueType字体&#xff0c;.ttf文件&#…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

反向工程与模型迁移:打造未来商品详情API的可持续创新体系

在电商行业蓬勃发展的当下&#xff0c;商品详情API作为连接电商平台与开发者、商家及用户的关键纽带&#xff0c;其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息&#xff08;如名称、价格、库存等&#xff09;的获取与展示&#xff0c;已难以满足市场对个性化、智能…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

20个超级好用的 CSS 动画库

分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码&#xff0c;而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库&#xff0c;可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画&#xff0c;可以包含在你的网页或应用项目中。 3.An…...