在一个软件开发团队或公司中,政治(Politics)并不是一个特别敏感、但也不是一个可以置之不理的话题。通俗的讲政治可以理解为通过与别人协作把事情办成的一种艺术。当然,想让别人与自己协作远非想象中那么简单,关系到双方或多方的利益和冲突,也关系到协作的推动者和被推动者的目标和动机,为了能够让别人和自己站在同一立场和角度去看问题、解决问题,我们同样需要应用方法论,利益、冲突、目标、动机、关系是政治中的关键词。

1. 政治因素

每个角色对政治的理解不尽相同,对于架构师而言,承接的是技术负责人的角色和职责,在使用政治这门协作相关的艺术时,环境、时机、原则和策略是所需面对的最基本的几项政治因素,也是我们思考和解决问题的出发点。

(1)政治环境和时机

政治环境和时机上,首先应该把握一个公司的企业文化。企业文化的表现形式有很多,包括对加班的态度、绩效管理、晋升制度、开会方式等。企业文化可以理解为一种事业环境因素(Enterprise Environmental Factors),即我们只能适应而无法改变。同时,当我们有任何一个想法尝试去推行时,确保该想法与公司的战略方向一致。架构师虽然是技术岗位,但对公司高层次的战略方式还是要有一定的敏锐性,从把握领导关注的问题上,可以体会出公司层面的一些想法和做法。最后,政治环境是一个不断经营的过程,尤其体现在人际关系的建立上。

(2)政治原则

政治原则上同时考虑对上/对下的入口和出口对于技术管理人员尤为重要,这也意味着需要把握信息透明度。如同在项目管理中项目经理需要考虑对项目的范围、时间和成本等信息进行有效过滤一样,对上级的向上管理和对下级的向下管理过程中所采用的信息管理策略也需要有所不同,不应该把你所有知道的信息都直白的同步给别人,信息的转换胜于信息的透传。在上级和下级需要帮忙时能帮就帮,但不要为自身价值而妥协。

(3)在政治策略

在政治策略上,帮助别人达成目标,很多政治因素也不会因个人努力而改变,学会享受过程而不是目标本身。小事情上可以妥协,但在关键点上,我们争取尽全力出成绩。当出现因人际关系导致的问题时,首先尝试把人际关系问题私有化处理。

2. 协商

在任何团队中,任何场景都可能会有“扯皮”现象。扯皮现象有利有弊,很多结果有时候并不是做出来的,而是协商出来的。有些事情看上去很难,但一协商发现并不是那么难,而一点小事如果没有协商可能变成一件大事。

对于协商,换位思考或者说同理心可能是消除协商过程中出现过多扯皮现象的一大原则。站在对方的立场上思考问题,然后再抛出符合对方立场的言论但能引导到己方利益的观点需要技巧性,这种技巧性的培养需要循序渐进的把握协商过程,而不是对任何问题都直奔主题。

同时,在协商过程中,不要掩盖问题,尤其是对双方都有影响的问题确保在协商过程中明确的提出来,并得出确切的结论。最后,关于协商原则记住一句话,态度要和蔼但立场要坚定。

有一些障碍会导致协商过程的正常推进,其中包括上文提到的政治因素,对架构师而言,可能也会面临很多技术性障碍。面对障碍,尽量寻找双方的共同点,并寻找“足够好”而不是“最完美”的方案。

我们把整个协商过程分成协商前、协商中和协商后三个环节。其中,协商中的过程具体问题具体分析,对协商前和协商后则可以采取一些通用的手段和策略。在协商前,最重要的是明确此次协商的目标,包括最低和最高目标。梳理哪些内容是可以或不可以协商的,明确相关干系人,团结一切可以团结的力量。另一方面,充分的准备是协商成功的一大关键,关于这次协商的数据、文档、环境等因素都在考虑范围之内。对于某些预想中比较难以协商的内容,协商前对某些关键关系人或某些关键文件数据等进行私人或内部团队之间的预演可能也是必要的一些环节。

当协商完成之后,不过协商结果如何,记录是必不可少的。对于本次协商中重要的决议确保进行文档化和邮件化,如有必要也可以纳入版本控制系统之中进行管理。对决议的执行过程中,明确决议的边界,执行自身相关的任务。但对于技术管理者而言,还要尝试学会委派下面的人进行任务执行。

如果对文章感兴趣,可以关注我的微信公众号:程序员向架构师转型,或扫描下面的二维码。

我出版了《系统架构设计:程序员向架构师转型之路》、《向技术管理者转型:软件开发人员跨越行业、技术、管理的转型思维与实践》、《微服务设计原理与架构》、《微服务架构实战》等书籍,并翻译有《深入RabbitMQ》和《Spring5响应式编程实战》,欢迎交流。

向外管理之政治与协商相关推荐

  1. 什么是带内管理 带外管理?(转)

    什么叫带外管理? 常见的设备管理方式有SNMP.RMON.Web.TELNET以及通过CONSOLE.AUX接口管理,有些高端设备还具备100BASE-TX的带外管理端口. 我在网上查到大概SNMP. ...

  2. F5 V9 利用SCCP实现带外管理及重装系统

    Bob Chen 标签: f5,v9,sccp BIG-IP V9设备随机不再附带配置串口线,当现场没有串口线时可以使用BIG-IP SCCP来实现带外管理.此外,SCCP还可以用于重装系统. 1.1 ...

  3. oracle服务器支持ipmi带外管理,ipmi带外管理

    IPMI的功能 通过web访问IPMI,你可以实现对机器的操作,linux 下可以通过ipmitool 直接访问: 开机,关机,重启,查看机器当前的通电状态 安装系统.有些服务器的IPMI,没有内置i ...

  4. 华为S/CE系列交换机stelnet示例(带外管理地址绑定vpn实现业务和管理平面的隔离)

    华为交换机stelnet示例 组网需求 配置思路 操作步骤 在服务器端生成本地密钥对 (可选) 在服务器端创建SSH用户 1.配置VTY用户界面. 2.新建用户名为admin的SSH用户,且认证方式为 ...

  5. 网际,MAC,DNS,僵木蠕,木马,APT,dns隐蔽隧道,.pcap,开源情报,元数据,带外管理,磁盘阵列RAID,DRAC,ARP,充分必要条件

    网际网络是指在广域网与广域网之间互相连接的网络,包括不同类型的协议的网络的互联,比如TCp/IP网络和X.25网络的互联. 现在咱们通用的因特网(INTERNET)就是很明显的网际网络,因为因特网中包 ...

  6. 曙光服务器I840-G25带外管理

    曙光服务器一般出厂时默认不配置固定带外管理IP,但同时打开了另一扇DHCP的窗.因此,只需要给已经处于开机状态的服务器配置一个DHCP服务器,使其能够自动获取IP,就可以实现带外管理功能. I840- ...

  7. 什么是带内管理和带外管理?

    带外管理(Out-of-band-management)和带内管理(In-b-management)是服务器管理中的两种不同方式.下面,我将为您详细介绍带外管理与带内管理的来源.发展.以及它们的区别. ...

  8. 带外管理和带外管理的区别

    带外网管是指通过专门的网管通道实现对网络的管理,将网管数据与业务数据分开,为网管数据建立独立通道.在这个通道中,只传输管理数据.统计信息.计费信息等,网管数据与业务数据分离,可以提高网管的效率与可靠性 ...

  9. 带内管理与带外管理的区别

    因为之前有部署过一些安全设备,在部署完成之后往往需要给客户留一个管理地址,在翻阅手册的过程中涉及到了一个概念"带内管理"与之相对的是"带外管理". 上网搜索了一 ...

最新文章

  1. mysql中的 explain 关键字学习笔记
  2. python中str是什么函数_Python str()函数
  3. IconFont的制作使用
  4. CPU多核并发缓存架构介绍
  5. Linux系统启动的标准流程
  6. 机器人(人工智能python) arduino编程 scratch2.0 乐高ev3编程 教育政策及考试
  7. 卫计委电子病历架构基本概念
  8. win11电脑摄像头打不开,如下图
  9. 斐讯k2路由虚拟服务器,斐讯K2T分离式无线路由器 新思路解决老问题(无线信号那些事)...
  10. matlab 圣诞树,搞气氛!用MATLAB画一棵Bling Bling的圣诞树
  11. MySQL数据库(一)服务器数据库的搭建和远程访问
  12. 【大数据】Hadoop生态系统及其组件
  13. Mongoose Populate
  14. 打怪升级,看俄罗斯小哥是如何从互联网转行到自动驾驶行业?
  15. PCIe扫盲——PCIe简介
  16. 求最大公因数的几种算法
  17. 智能车浅谈——方向控制篇
  18. Android自定义的下拉列表框控件
  19. execute与executeUpdate的区别(学习笔记)
  20. 英语不好可以学编程嘛?程序员必备英文单词汇总

热门文章

  1. 8个提供免费高品质的照片网站
  2. Google Earth Engine(GEE)——全球土壤盐度数据集(1986-2016)
  3. 我的世界java版地图结构_地图物品格式 - Minecraft Wiki,最详细的官方我的世界百科...
  4. 从一台Linux服务器访问另一台Linux服务器
  5. [Object]面向对象编程(妙味课堂版)
  6. python中为程序添加小图标的方法
  7. XTU OJ 1214 A+BIV
  8. mysql prepare 存储过程_mysql prepare 存储过程使用
  9. 博主的简历: 金东升 justin.jin
  10. 《充分利用你的24小时》读后感