一. 项目的五个主体部门
无论是一个经验丰富的项目经理还是一个新手项目经理,都需要具备对项目团队下不同岗位进行划分的能力。这个划分是没有具体的要求和规定的,就像一千个读者一千个哈莫雷特一样,只要是合理的,自己能与其他人解释清楚就好。
我的划分是根据开发过程中流程进行划分的,项目从用户那里获取基础框架后,转给产品。
产品收到项目的框架之后进行设计,再指派给研发,然后便是测试和运维。
二. 项目经理
官方介绍:
项目经理( 英文:Project Manager,PM ) 是项目的核心,是为了实现项目整体的目标而进行努力。项目经理涉及到对项目的规划、组织、协调、控制,安全和评估等方面。项目经理需要明确项目的目标、范围、时间节点、预算和资源需求,制定项目计划,并监督项目的进展。他们要协调各个团队和成员之间的工作,解决项目中的问题和风险,确保项目按时、按质量要求完成。
我的理解:
因为我所在的公司是采用的是四种开发模式中的敏捷式软件开发,所以我对项目经理的理解偏向于敏捷式软件开发模式。
我们在项目开发的过程中,不断地获取用户的需求,然后通过腾讯会议,向日葵等常见的远程交互软件和产品进行交流沟通。产品确定好内容之后,项目给产品研发资源进行研发。当然这些都是在甲方规定的时间内保质保量完成的,所以一般在项目进到一个点的时候就非常考验项目经理的协调和控制能力。安全和评估能力的联系,看书的作用比较小,但是比较重要,需要紧跟项目学习。
三. 产品经理
官方介绍:
产品经理(英文:Product manager,缩写:PM)是连接用户需求和技术实现的桥梁。他们需要深入了解市场和用户需求,定义产品的愿景、功能特性和用户体验。通过市场调研、用户反馈和竞品分析,产品人员确定产品的定位和发展方向,并制定产品的路线图和计划。他们还需要与开发、测试、销售等团队密切合作,推动产品的开发和推广。
我的理解:
产品经理权限比较大能接触到客户的时候,可以自己提出需求进行设计,然后派发给开发进行设计,所以小型企业的产品经理和项目经理有可能是同一个人。权限不够的情况下,就等待项目经理给需求,然后商讨方案是否可行,再进行指给开发等内容。
产品经理在一个成熟的项目中也是很重要的,网页设计这一方面再整个系统项目中都是至关重要的。一个项目的美观,功能性都是由产品经理决定的。而且产品经理需要很能抗压力,要能抗住项目的压力,还有一群“逆子”的不配合。
四. 研发和测试
官方介绍:
开发是指创建新的软件、应用程序、系统或产品的过程。开发人员通常需要具备扎实的编程技能和相关技术知识,比如熟悉某种编程语言(如 Java、Python 等)、数据库管理、算法设计等。他们负责将产品的需求转化为实际可运行的代码,并不断优化和改进代码的性能、安全性和可扩展性。开发工作包括前端开发(如网页界面设计)、后端开发(如服务器端逻辑处理)、移动开发(如 iOS 和 Android 应用开发)等多个领域。
测试是保障软件质量的关键环节。测试人员负责设计和执行测试用例,以验证软件是否满足规定的需求和标准。测试类型包括功能测试、性能测试、安全测试、兼容性测试等。他们需要发现软件中的缺陷和问题,并及时反馈给开发人员进行修复,确保软件在交付给用户之前具有较高的质量和稳定性。
我的理解:
研发和测试是同胞兄弟。研发接收产品的设计框架,进行设计,然后转给测试。测试通过,研发笑嘻嘻,测试写文档。测试不通过,测试笑嘻嘻,研发继续研发。直到产品经理和项目经理都满意,研发和测试就可以进行下一个项目了。
研发和测试最大的优点就是可以吃夜宵,吃周六周日免费的水果和咖啡等零食饮料。当然对于我们这种应届生,研发的工资是最高的,测试是最轻松的,最重要的是两者上升空间都不大。
五. 运维
官方介绍:
运维主要负责确保系统的稳定运行和高效性能。运维人员需要监控系统的运行状态,及时处理故障和问题,进行系统的维护和升级。他们要管理服务器、网络设备、存储设备等基础设施,保障系统的安全性,防范网络攻击和数据泄露。此外,运维还包括优化系统性能、配置管理、资源分配等工作,以满足业务不断增长的需求。
我的理解:
运维的职责覆盖了产品从设计到发布、运行维护、变更升级及至下线的生命周期各个阶段。有系统监控,故障处理,系统优化,软件部署,系统更新,数据备份,资源管理等繁杂而重的工作。
运维虽然工资低,但是任务重,就业的好方向。
六. 中小公司流程图
七. 衍生岗位
五个部门衍生的岗位很多,例如:常见的UI,数据库工程师,项目分析师,而且研发也分了很多种。所以就导致了学习计算机最大的好处就是,就业相对简单。