转自 http://www.aqee.net/how-to-manage-your-programmers/
以一个组织的形式完成项目、任务或实现某些目标,这被称作公司,这需要有完善的信息流转机制和长期的规划。过程管理在这种组织里是一个非常复杂的问题。这就是为什么这些年会出现了大量的诸如Scrum,
Kaizen, Kanban等技术和方法论来尽可能简化这个过程。简言之,这些东西都是用来最有效的发掘你的员工的全部潜能的。
你有了一个领导
基于此,我们通常会有一个重要人物,他可能是一个领导,一个经理或一个总监,等等。这就有了问题:这些人有什么样的特征?一个管理者和一个程序员之间的不同之处在什么地方?他们的角色可以互换吗?
为了弄明白这个问题,我们需要从人的视角上去思考。换种方式来说,我需要用到人的因素这个词。
如果他错了呢?
首先,要想管理人,你需要去理解他们。要做到这些,我们需要有情商。这并不仅仅指只针对我们这部分人。我们做的任何事情中都存在情感,你要从个人角度去体验它,要熟练掌握,在我们的公司管理中的合作方式上不能忘记这一点。管理并不仅仅指控制和命令,它还包括聆听,理解,沟通和对复杂的情绪上的问题给出有效的方案,这都是至关重要的。
弄清他们的感受
很多人都忽略了管理工作中的这方面问题。有时候会很戏剧化,类似于这样:“鲍勃,从明天开始你就是一名项目经理了,因为我们的程序员太多了,需要去管理,但不用担心,你就要去上一个Scrum大师班了”。我们都知道这样的认证证书是什么样的,有什么价值。这跟那个10天的ICC培训课程后成为一名教练的故事非常的相似——这行不通,你要铭记!
另一方面,Mark Foster在他的标题为《How to make your dreams come true(如何实现你的梦想)》一书中谈到,实现目标有两种方式:推(Push mode) 和 拉(Pull mode)。前者是使用一种工艺上的技术来完成一项任务,比如程序员编程,而后者依赖于经验、直觉和情商,从而选择最好的方式解决一个问题——这是管理者的视角。当使用这种管理模式时,管理者是不能和程序员进行角色互换的,反之亦然。一些大公司通常使用这种管理模式。而这种方式有时会损失一些员工的潜能,因为在多个级别的管理职位中产生的太复杂的层级关系。
相互协作
为什么?很多的小公司都使用敏捷方法论。这是一种基于合作的方法论。上面描述的模式并不能满足他们的需求。在不同层级上的管理者和程序员之间始终存在着一个隔膜。人们会被分成“脑力劳动者”和“体力劳动者”。结果就是导致我们失去那些同样有大脑却从来未被使用的人。如今,所谓使用有效率的员工就意味着把所有人都当作脑力劳动者。
Evan Rose 说:
命令/控制(Command-and-control)文化使人们把公司成员分成了脑力劳动者和非脑力劳动者。他们让脑力劳动者去思考,让其他人去执行命令。这种文化中,合作没有基础。更重要的,信息的流转应该是多向性的,而不是瀑布式的从高层经过多个管理层流到一线员工。事实上,如今的每个人都有资格成为一个脑力劳动者
现在出现了一种称作自我管理的形式,这种形式本是我们这个世界的基础。如果我们本来是自我管理的,为什么不更进一步呢?也许我们根本不需要管理者。37Signals 和 DHH都实现了这样的思想,描述起来如下:
我们同样也让我们的团队管理自己。每周,一个员工会站出来当管理者,他制定简单的日程计划,审查其他人的工作,更新公司动态信息,他对于其他同事来说是一个关键人物。这种职务轮换每周一次。你知道我们发现了什么吗?当每个人都知道自己要当一周的国王时,神奇的事情发生了。对管理者强迫自己做某些事情的抱怨消失了,因为职务的轮换让他们有机会同时清楚的了解了围栏两边的景观。如果你让员工们这样做,这给了他们提高和成长的机会。
找到共识,一起努力
但不要想当然。这并不是适用于任何地方任何人。但就像David说的:这种方法可行性很大。如果你能理解这点,你可以在团队或部门里试验一下。通常在小公司里当某方面出现问题时你能相当很快的对其作出反应,这能让你更容易的避免重大事故的发生。
简言之,不管你的管理方式是什么样的,永远要记住,在公司组织结构的深处有一种叫“人的因素”的东西,它在等待着你去照顾,它能摧毁你所有美丽的计划。唯一你防止这种灾难发生的办法就是要认识到:你在跟人打交道,不是机器。
[本文英文原文链接:How to manage your Programmers ]
分享到:
相关推荐
程序员专用个人知识管理 可以很好对知识进行管理 方便查看回顾
超好用的资源管理器 四窗口同时操作 秒杀系统自带管理器 程序员不可多得的工具
WINDOWS程序员使用指南(一)----DLL和内存管理.rar
文件为pdf格式 请用相应的阅读器阅读 windows程序员指南关于.dll和内存管理方面
大公司是如何做信息安全管理的__程序员注意事项__Java_Python_C语言_C++等项目管理
达梦数据库管理系统DM程序员手册,讲述达梦7数据库的安装,作为管理员的日常管理操作
国外程序员整理的系统管理员资源大全
通信网络管理计算机程序员复习资料.pdf
WINDOWS程序员指南1--DLL和内存管理
• 效果联想: o 员工会抓紧时间完成手中任务以获取更多的奖金和未来的加薪预期。没有任何参与评估简易度。 o 难度将以曲线式递增。以增加员工工作效率换取更多的成长空间。 o 不要跟我谈加薪 o 不要跟我谈理想 ...
源代码管理软件 2.0┊为程序员设计的一款源代码管理软件┊简体中文绿色免费版
Windows程序员使用指南(一)——DLL和内存管理,很好的资料。
网络课程设计,小型网络的实现。网络课程设计,小型网络的实现。网络课程设计,小型网络的实现。网络课程设计,小型网络的实现。
最真实的草根程序员的创业之路】《程序员在囧途》通过幽默有趣的故事,潜移默化地把技术开发、程序员求职、项目管理、创业思路、软件行业商业运作、职业转型、自我修养等各个方面融合在一起,让读者在开心地读故事的...
程序员第二步:从程序员到项目经理, 有兴趣的人看一下
# 基于可视化算法程序员管理系统的...- 数据库技术:采用MySQL数据库存储和管理程序员和任务等相关信息。 该系统的实现将有助于公司更好地管理和分配其程序员资源,提高工作效率和生产力,实现公司的长期可持续发展。
第六章,关于在pycharm中编写名片管理系统演示案例。其中包括源代码。
黑马程序员匠心之作 C++教程讲义,适合初学者,视频教程全程无废话
_ WINDOWS程序员使用指南(一)--DLL和内存管理.zip win32编程的参考
黑马程序员JavaEE49期