软件开发有哪些类型
在学术界,关于个性分类及管理的理论层出不穷,其中迈尔斯和布里格斯的理论尤为引人关注。他们基于C. G. Jung的心理类型理论,建立了个性测试的理论基础,并提出了对个性进行分类的体系,形成了迈尔斯-布里格斯类型指标(MBTI)。这一清单使得心理类型理论更为实用,易于理解。特别是在《请理解我》一书中,这一方法得到了广泛推广。
众所周知,外向(extroversion)/内向(introversion)、感觉(sensation)/直觉(intuition)、思考(thinking)/情感(feeling)以及感知(perceiving)/判断(judgment)是Jung最初描述的个性特点。研究指出,许多程序员属于INTJ类型,即内向、直觉、思维、判断的个性倾向。公式化的个性分类在管理技术团队时存在风险,建议避免使用公式化的分类,而是关注已知的个性特点的管理。
右脑理论与左脑理论源于Roger W. Sperry的研究,指出大脑的左右半球具有不同的功能。程序员和技术人员往往属于“左脑型”,即更多地使用语言、逻辑和分析能力。但右脑相关的活动同样重要,因为程序设计是一门创意艺术。一些顶尖程序员甚至是音乐家,他们发现程序设计与音乐创作在某些方面有诸多相似之处。
在企业管理中,多数雇员属于白天型的人,而多数程序员则是夜晚型的人。他们倾向于在正常的办公时间之后工作,甚至熬夜完成关键项目。为了确保团队沟通有效,建议设定“核心时间”,以确保最低限度的合理沟通。要重视其他部门的看法,强调程序员为团队做出的贡献。
在软件开发文化中,多数程序员倾向于像“牧童”一样独立解决问题,跳过规划以得到一次性的解决方案。营造一种既允许独立创新又遵循系统生命周期的开发文化至关重要。对于内向的职员,要在会议中鼓励他们发言,分享意见,给予正面支持,帮助他们建立自信。避免雇佣那些心存不满、散布负面情绪的人,他们可能对团队造成。遵循“不奇葩”的法则,将每个人视为独特的个体,作为软件开发经理会更成功。