【郭东白架构课 模块一:生存法则】13|法则六:如何鉴别文化环境是否有利于架构师的生存?

news2024/11/16 13:46:07

你好,我是郭东白。

架构师通常并不管理团队,而是管理架构活动。更准确地说,是定义和引导架构活动。因为每个参与架构活动的个体,都有各自工作的优先级和汇报关系。因此在没有管理、考核和激励等手段的保障下,唯一能够帮助到架构师开展工作的,就是良好的文化环境了。

这就是我们第六条生存法则要覆盖的内容:架构师要在一个相对友善的环境下,才能找到并推进一个正确的架构方案,进行有效的架构探索。但企业文化环境很难改变,所以架构师就要通过包容和求真的认知态度,以及有良知有勇气的行为,来影响所有参与架构活动的人。如果企业文化环境无法帮你完成有效的架构探索,那就要选择另一个更友善的环境了。

架构师需要什么样的企业文化环境?

先定义一下企业文化。我们这里侧重指企业内部默认的工作方式,主要包括企业宣导与实践的价值观,团队或个人的决策方式、沟通方式和执行方式。

因为一个企业的文化,主要会在如下三个维度影响架构活动:

  • 决策方式:出现各种有争议的问题之后,争议各方最终是怎么做决策的呢?比如确定架构选型、架构设计、交付等等。
  • 沟通方式:团队上下级是怎么沟通的?在制定架构方案之前,你有办法获取到企业的真实目标吗?你能把这个目标传递给架构活动的其他参与者吗?
  • 执行方式:任务执行过程中是怎么样呢?是架构师和研发人员一起主动提升认知、寻找最优的实现方案吗?还是说所有执行者都以交付需求为目的,不论对错,只要按时完成就可以了呢?

可以说,架构师日常工作中经常要面对的就是决策、沟通与执行了。这个时候,如果你能从企业文化环境上借力,那将有助于自己发现那个最优的架构方案,并推动架构方案的彻底执行。
那么,什么样的文化环境才能提升架构师创造价值的效率呢?

什么样的文化环境对架构师是友善的?

我们上节课讲了,架构师要靠为企业的技术体系注入外部适应性来创造价值。而注入外部适应性的探索过程,其实与科学探索的过程具有很大的相似性,都是在不断探索、发现和尝试。

如下图所示:
在这里插入图片描述
这是从科学方法(Scientific Method)那里借来的。我把用词稍作修改,你可以看到它比较好地表述了架构探索的过程。可以看到,科学方法也适用于架构活动:先从一个假设开始,再根据实验和观察得到一个客观的结论,最后这个结论如果是正向的,说明你的设计非常有效,也创造了价值。如果结论是负向的,说明你要发现问题,修改设计,再提出新的假设与设计。
我认为这就是一个架构师的做事方式:你从技术洞察中产生一个商业假设,也就是你期望技术能带来的商业价值,然后再通过架构设计最大化你创造的价值。如果项目上线后成功了,那你预期的商业价值也就实现了。反之,如果你发现问题,那么就需要重新修正你的假设和设计。

也就是说,这是一个不断假设、求证、再假设的过程。这个过程像科学方法一样,你要主动探索而不是被动执行。

那么什么样的环境才有利于架构的科学探索呢?我认为企业的文化环境必须要足够包容和求真。这种文化主要是在思想和认知层面,属于知行合一中“知”的部分。

包容有几层逐渐递进的含义。

第一层,企业对探索过程的包容,尤其是对失败的包容。

第二层,企业对不同观点的包容。架构方案的最终质量,取决于你与所在组织能够吸纳多少不同的意见。愿意接受不同观点,并对不完美方案做出修正的人,就越容易获取更高质量的观点和建议,做出更好的决策来。

第三层,企业对人的包容(Inclusive)。意思是说,你与企业都不排外,要带着大家一起玩。不是一层一层越来越小的圈子,而是一个开放的社群。这是你作为架构师获取高质量观点的前提。

求真也有三层含义。

第一层,你与合作伙伴求真的信念。我们上节课提到了,在当前的竞争环境下,大多数架构活动都没有清晰的战略指引,而是所有参与者都在学习、探索。那么谁能找到正确的答案呢?

我认为这和科学探索一样,最终能够持续逼近商业规律的真理的人,必然对真理有一种发自内心的执着。这种求真的性格和工作方式,有利于帮助整个架构活动产出更逼近真理的架构方案。

第二层,企业内部的所有决策者,对企业想要逼近的那个“真理”有共识。这个真理简单来说,就是一个企业可以长期利用的商业规律。但是更深层次上,是一个企业追逐的真实目标是什么?到底什么对企业最重要?是赚到更多的钱?还是占有用户更多的时间?还是商家和店铺在你这里得到最大限度的成长?这就是法则一里提到的正确目标的概念。其实这些问题的本质,也就是大家常听到的使命、愿景和价值观。

第三层,企业在求真上要知行合一。我们不仅要听企业挂在嘴上的使命、愿景和价值观,还要看企业内部是不是真的在践行,包括业务、产品和技术。毕竟,在知道跟做到之间,横跨着一条不可逾越的鸿沟。

这里就有一个问题了,怎么识别企业的真实文化环境呢?怎么看企业是不是做到了知行合一呢?

如何识别企业的真实文化环境?

一个企业真实的文化,与他宣扬的不一定完全一致。举个比较极端的例子。美国历史上最大的财务造假和审计丑闻,就出自世界最大的能源公司安然公司和原国际“五大”会计师事务所安达信。财务造假不仅导致两家公司直接破产倒闭,更是在全社会引起了轩然大波,以至于美国国会迅速通过了《萨班斯法案》,来确保企业财务数据的真实性和审计的有效性。

你可能没有料到,这个充满欺诈的公司,他们宣扬的价值观竟然是:“Respect、Integrity、Communication and Excellence(尊重、正直、沟通和卓越)”。显而易见,公司选择造假的真实行为,与其奉行的价值观完全背道而驰。

所以说听其言不够,更重要的是观其行。

那么怎么观其行呢?我觉得比较容易的办法,就是在公司内部观察。具体而言,有这么三种方式,可以帮助你鉴定企业是否真正做到了“知行合一”。

第一,看行为方式的对称性。所谓对称,就是指企业用来约束员工行为方式的规则,是否适用于所有员工。换句话说,是否存在特权阶层可以随意解释、更改和超越行为约束的规则呢?如果存在,企业的规则就不具备对称性,也就是说企业不是靠法制来约束员工的。那么员工就不会把企业宣扬的“法”,也就是文化,来当回事儿。顺便说一句,前面提到的排外的文化,本身就具有不对称性。而包容的文化,可以让有不同观点和背景的人之间建立更高质量的信任,这种文化就是对称的。

第二,看最终的反馈机制。比如一个企业鼓励员工不唯上,要有勇气反对领导的错误决策。但真正有勇气站出来反对的人,他们的命运如何呢?是被晋升还是被打压了?反之,那些唯上的人呢?他们是被晋升还是被打压了?你只有从反馈机制看企业要什么、不要什么,才能获得更真实的信息。如果反馈机制与企业宣扬的文化背道而驰,就说明这种文化不可信。

第三,看企业文化的连续性。企业可以快速发展变化,但企业文化却要保障其内在连续性。因为文化约束力需要长时间的养成。如果文化不断被调整,证明这个企业的文化在生成过程中的决策机制,大概率是存在问题的。此外,文化的形成时间越短,就越难以被多数人认同。没有认同,那么文化对行为的约束就会失去效力。换言之,频繁变化的文化,不太会在企业内部产生足够的约束力。而真正产生约束力的,一般会是其他利益分配机制或惩罚制度。

总结一下,如果企业的文化连续时间长、约束规则对称,而且真实反馈也与宣扬的一致,那么这个企业的文化就是知行合一的。反之,就证明这个企业没有可以让架构师借力的文化环境。

然而现实是,任何企业都不可能为架构师这个单一职能专门设计一个文化环境。哪怕是知行合一的企业文化,也不一定能够帮助到你。那么这个时候,架构师就很有必要在自己负责的架构活动这个小范围内,打造一个友善的文化环境。

架构师如何在小范围内打造一个友善的文化环境?

答案很简单,那就是通过你的行为(Leadership by Example)来影响和打造。你的行为方式往往会影响身边人,甚至是参与架构活动的人。

我认为,一个架构活动内部必须具备有良知和有勇气的文化,才有利于架构探索。这种文化主要是在行为层面的,是知行合一里面的“行”的部分。这种文化需要你这个架构师来打造。

我们经常把架构师称为技术领导者,领导者有一个重要的能力,那就是影响力。不是通过职位,也不是通过权益的分配,而是通过你的行为来影响周围人的行为。

举个例子,如果一个架构方案,从整体层面来看是最优的,但却会伤害到你的个人利益,那怎么办?比如,你的日常工作是负责系统的稳定性,管理企业的整体稳定性相关的系统和框架,有十几个人的团队汇报给你。现在你发现,如果用开源方案,公司稳定性体系逐渐迁移到 Service Mesh 上,可以节省大量的人力,而且最终的稳定性要更高。这个时候你怎么办?
这时候,你就需要一个架构师最重要的品质了——良知。不过什么是良知呢?其实良知和价值观有关,不存在一个普遍适用的定义。在我们这个上下文里,良知是你选择企业生存和长期利益优先做决策的过程。

如说,你把企业的稳定性体系迁移到 Service Mesh 的决策,就没办法同时让整个企业和你自己团队的利益都最大化,但是你选择了前者。

你可能会问我,为什么在很多人都做自私决策的环境下,要让我有良知?我认为架构师这么做是有必要的。架构师的角色有一个极大的特殊性:你是在代替许多人甚至是整个企业做决策。别人把他的领域的决策权交给了你,所以你其实预支了他给你的信任,从而获得了做决策的机会。这份信任和机会,是靠你的良知换取的。

如果你的决策是自私的,仅仅从个人层面考虑,那就破坏了向他人预支的信任,也毁坏了架构师这个角色可以正常工作的前提。如果没有人相信你作为一个架构师的决策是对他有利的,那么你的决策将一文不值。

所以,作为一个架构师,有良知是一个必要条件,而不是一个选择。良知,有利于你与架构活动参与者建立信任,最终推动整个架构活动走向成功。

这里我特别强调一下,架构师有良知是个必要条件,却不是对其他架构活动参与者的要求,也不是你日常生活的要求。从上帝视角来看,自私是人的本性。只是我们架构师在行使决策权时,其实已经进入了一个事先拟定好的条约里。在这个条约之下,我们的决策必须是由良知驱动的,从整体利益出发,而不应该有任何自私的一面。

那么什么是勇气呢?我认为在一个架构活动中,有勇气是你在一个架构活动中敢于面对冲突,敢于对不合理的决策表达反对意见。

我们已经提到了,由于认知的局限、不同职能在工作上的优先级、人性等等,在一个架构活动中,架构师和很多研发人员都会面临冲突。在冲突中,多数人往往会保持沉默,尤其是一个大公司里。

同样,我认为勇气也是架构师这个职能的必须选择。架构师是一个组织里全局视角和长期视角的唯一代言人,沉默就可能造成严重后果,比如架构方案被完全扭曲。你的勇气可以帮助所有架构活动参与者认识到企业的全局利益和长期规划,最终帮助大家找到最利于整个企业长期生存的架构方案。

但是你作为一个架构师,如果参加架构活动的各方势力比你大,层级比你高,甚至决定了你的薪酬奖金和晋升。那么有勇气去表达你的看法,的确是一个非常不容易的事情。我自己的职业生涯也因为有这样的勇气而最终损失了收入。但我始终坚信,这是一个架构师的职责所在。而在这个过程中,你的判断力也会有大幅度的提升。这是你靠勇气来换取的。

对文化环境的选择

不过我们刚才也提到了,企业文化也不一定能帮助到你。事实上,我认为这是一个常态。你可以试着推演一下。一个企业,能在一个准入门槛相对较低,并且高度竞争的行业下得以生存。那么它的文化应该是帮派文化。这种文化,并不是为了最大化架构探索的成功率而设计的。

这个时候,就要思考一下:你所在的企业的文化环境,是不是能帮助你这个架构师,顺利完成一个架构活动呢?

如果你以包容和求真的方式做事情,有良知和勇气,你最终能引导公司走向一个正确的架构方案吗?

事实上,在某些企业里面,这两个问题的答案的确是“否”,甚至都不是“难说”。这意味着,你所处的环境不但是不友善的,甚至是有害的。那你该怎么办呢?我建议你果断离开。因为企业文化一旦形成,就很难改变。架构师很难凭借一己之力,改变整个企业的文化。那种张无忌调和明教和六大门派的奇迹,只会在武侠小说里出现。

在企业里,你只有在一个相对安全的环境才能做有效的架构探索,找到真正能够为企业生存带来长期优势的架构方案。如果你整天忙着在各个门派之间做和事佬,那训练的不是你的架构能力,而是你的外交能力。

架构师的黄金年龄很短,良禽择木而栖。哪怕你拿着不低的收入,那我也建议你考虑离开,因为你在不断丧失可以提升你架构能力的机会。

小结

其实大多数企业的文化其实能够包容不同意见,也鼓励对真理的追求。甚至能够容忍一定程度的试错和探索。那么这就是一个对架构师友善的环境了。在这样的环境里,你自己除了在思想上要保持包容和求真的态度,还要在行为上有良知和有勇气。你能在这两个方面做到知行合一,我相信你的架构活动最终一定能取得成功,而你也会获取更多的信任的。

另外我也建议,在个人的学习和探索上,你可以更加有勇气,这会加速你作为架构师的成长的。

思考题

还是三道题,选择你最有感触的一道题来做:

  • 你现在所在公司的文化是什么样的呢?这种文化哪些地方有利于架构探索?哪些地方不利于架构探索呢?
  • 文化环境对一个人产生的冲击还是非常大的。你有没有经历过印象深刻的人和事情?可以分享一下吗?
  • 如果你曾在多家文化氛围非常强的公司任职过,那么能否对比一下,这几家公司的文化对架构探索影响的差异性在哪里呢?对最终的架构方案和商业结果呢?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/356107.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Chrome 又不支持 HTTP/2 网站的原因

导读昨晚偶尔清理 Chrome 插件时发现我的 “HTTP/2 and SPDY indicator”插件好像好久没亮了。这个插件在你访问到一个支持 HTTP/2 (或之前的 SPDY 协议)的网站时会点亮,而我明明记得之前专门让 https://linux.cn/ 支持了 HTTP/2 。 我的第一…

软考高级-信息系统管理师之整体管理(最新版)

整体管理 1、项目整体管理概述2、制定项目章程(选择,案例,论文)制定项目章程过程制定项目章程的依据1、协议2.项目工作说明书:3、商业论证4、事业环境因素包括,但不限于如下事项。5、组织过程资产:项目选择方法项目启动会议项目目标引导技术3、制订项目管理计划(选择)项目管…

MakeFile编写 使用

目录 1、基本格式如下:2、GCC编译过程3、Makefile具体流程可参考下图:4、Makefile变量解析![在这里插入图片描述](https://img-blog.csdnimg.cn/50fdafadef79400abea65b64a12f8ec8.png)5、实例项目目录5.1 使用g直接编译5.2 Version 15.3 Version 25.4 V…

[oeasy]python0086_ASCII_出现背景_1963年_DEC_PDP系列主机_VT系列终端

编码进化 回忆上次内容 上次 回顾了 字符编码的新陈代谢 ibm 曾经的EBCDIC 由于 字符不连续导致 后续 出现无数问题 随着 网络的发展 数据交换的 需要原来的小隐患现在 产生了 巨大问题 Bemer 联合各方巨头 想要推出 字符连续的编码集 这新编码集 具体长什么样 呢&#xff1…

springmvc绿植培养交流平台java的ssm设计与实现

本绿植培养交流平台设计与实现以SSM作为框架,B/S模式以及MySql作为后台运行的数据库。本系统主要包括以下功能模块:个人中心、用户管理、品种类型管理、绿植信息管理、视频分类管理、视频信息管理、经验交流、系统管理等模块,通过这些模块的实…

Java之动态规划之机器人移动

目录 0.动态规划问题 一.不同路径 1.题目描述 2.问题分析 3.代码实现 二.不同路径 II 1.题目描述 2.问题分析 3.代码实现 三.机器人双向走路 1.题目描述 2.问题分析 3.代码实现 0.动态规划问题 动态规划(Dynamic Programming)算法的核心思想是:将大问题划分为小问…

九龙证券|连续七周获加仓,四大行业成“香饽饽”!

本周17个申万职业北上资金持股量环比增加。 北上资金抢筹铝业龙头 本周A股商场全体冲高回落,沪指收跌1.12%,深成指跌2.18%,创业板指跌3.76%。北上资金周内小幅净流入。在大盘体现较差的周四周五,北上资金别离逆市回流67.94亿元、…

Vue项目创建首页发送axios请求

这是个全新的Vue项目,引入了ElementUI 将App.vue里的内容干掉,剩如下 然后下面的三个文件也可以删掉了 在views文件下新建Login.vue组件 到router目录下的index.js 那么现在的流程大概是这样子的 启动 写登陆页面 <template><div><el-form :ref"form"…

blackduck issue fix

文章目录场景依赖包风险扫描插件——synopsys codesight安装其他工具snyk公司提供/允许的工具指定依赖版本场景 你在一个前端nodejs项目中使用到了好多个依赖包&#xff0c;其中某几个依赖包的某些版本是有风险的。 在项目上线前&#xff0c;你最好修复这些安全风险。这时&…

SVN 获取多版本间的更新内容

文章目录背景介绍操作步骤 - 获取某段时间内的代码更新内容背景介绍 公司有个项目期初明确要做微信小程序&#xff0c;没有做其他端的意向&#xff0c;并且当时团队人数有限&#xff0c;没有项目实践过 uniapp&#xff0c;项目时间周期紧&#xff0c;就没有用 uniapp 去实现 然…

Linux架设魔兽争霸3战网Battle.net私服

文章目录 用到的工具pvpgnpvpgn-support-1.2Warcraft 3 Loader for PvPGNBNetEditor.exe搭建服务端魔兽争霸3登录战网私服添加战网服务器地址使用Warcraft 3 Loader启动魔兽争霸3工具下载用到的工具 pvpgn PvPGN是一款免费开源的跨平台服务器软件,支持Battle.net和Westwood …

SpringSecurity源码分析(一) SpringBoot集成SpringSecurity即Spring安全框架的加载过程

Spring Security是一个强大的并且高度可定制化的访问控制框架。 它基于spring应用。 Spring Security是聚焦于为java应用提供授权和验证的框架。像所有的spring项目一样,Spring Security真正的强大在于可以非常简单的拓展功能来实现自定义的需求。 在分析SpringBoot集成的Spri…

张晨光-JAVA零基础保姆式技术教程之-事务

事务 课程目标 1、什么是事务 2、jdbc如何控制事务 3、设置事务的回滚点 4、事务的特性ACID 5、数据库事务的隔高级别事务理解 什么是事务&#xff1a; 指逻辑上一组操作&#xff0c;要么同时成功&#xff0c;要么同时失败。 举例&#xff1a; 转账 a 给b 转账 100 a原来有…

React Native Cannot run program “node“问题

概述 前几天mac重装系统了&#xff0c;用Android studio重新构建React native项目时&#xff0c;报Cannot run program "node"错误。 电脑系统为macOS 12.6.3 (Monterey)&#xff0c;M1 Pro芯片。设备信息如下图所示&#xff1a; 完整错误信息如下图所示&#xff…

链表OJ(七)删除有序链表中重复的元素-I -II

目录 删除有序链表中重复的元素-I 删除有序链表中重复的元素-II 删除有序链表中重复的元素-I 描述 删除给出链表中的重复元素&#xff08;链表中元素从小到大有序&#xff09;&#xff0c;使链表中的所有元素都只出现一次 例如&#xff1a; 给出的链表为1→1→21→1→2,返回1…

码农饭碗不保——ChatGPT正在取代Coder

码农饭碗不保——ChatGPT正在取代Coder 最近被OpenAI的ChatGPT刷屏了。我猜你已经读了很多关于ChatGPT的文章&#xff0c;不需要再介绍了。假如碰巧您还不太了解ChatGPT是什么&#xff0c;可以先看一下这篇文章&#xff0c;然后再回来继续。 与ChatGPT对话很有趣&#xff0c;…

【尊享版】如何从零到一掌控习惯?

超友们&#xff0c;早上好&#xff5e; 今天为你带来的分享是《如何从零到一掌控习惯&#xff1f;》&#xff0c;主要分为八个部分&#xff1a; 一、【为什么要培养习惯&#xff1f;】 二、【养成新习惯为什么很难&#xff1f;】 三、【习惯养成的原理是什么&#xff1f;】 …

D3.js绘图流程

简介 D3.js是由javaScript语言编写绘图库&#xff0c;其原理是&#xff1a;通过调用一系列内置函数&#xff0c;生成SVG&#xff0c;并在网页渲染。 本文以频率分布直方图案例为例&#xff0c;介绍使用D3.js的流程 流程 第一步 引用D3.js库 建立一个html文件&#xff0c;在…

【Flutter】入门Dart语言:初步了解内建类型

文章目录一、概述1.为什么叫内建类型&#xff1f;2.Dart的内建类型有哪些&#xff1f;二、内建类型详解1.num2.int3.double4.String5.bool6.List7.Map8.Function三、总结一、概述 "The greatest glory in living lies not in never falling, but in rising every time we…

分享111个HTML体育竞技模板,总有一款适合您

分享111个HTML体育竞技模板&#xff0c;总有一款适合您 111个HTML体育竞技模板下载链接&#xff1a;https://pan.baidu.com/s/1JmjlNVApPLVWnSEN5VlILQ?pwd5kzl 提取码&#xff1a;5kzl Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 响应式户外攀岩运动宣传…