背景

每年会遇到不同阶段程序员在问,新入职场的,有过几年职场经验的,甚至还未结业的未来程序员,总是会问“程序员究竟要不要懂事务”的问题。
近几年,作为项目担任人做了几个0-1的项目,并作为团队leader在担任继续的迭代版别和架构演进。 这几个项目中,有的是作为技能团队的担任人,和产品司理相互协作来完成的;有的是直接作为总担任人,来组织整个项目的。在整个作业过程中,不管是前者仍是后者,我发现都已经离不开事务。尤其是作为项目的总担任人,更多的视角都会基于事务,从数据的视角动身,数据驱动事务。重视对事务的支撑,重视事务的开展。
在这儿结合我自己的阅历和身边其他搭档的阅历,和我们聊聊这个论题。这是一个敞开的论题,每个人在参加作业之后,由于就职公司的背景、文化还有自己的作业阅历不同,都会有所影响和不同。 我们接下来会描绘一些真实的职场状况,让我们能有所感受,给我们接下来的作业能有点启示,找到自己合适的作业方向。

下篇入口

现在流行这么几种说法

  1. 我是一个程序员,需要重视的重点是技能,并不需要知道事务。
  2. 企业以价值产出为导向,因而程序员有必要重视事务
  3. 由于程序员不明白事务,只能听产品司理讲计划,结果需求改了又改,甚至推翻出来。
    漫谈之程序员到底要不要懂业务(上篇)

先来回顾了解下互联网一个规范团队的成员组成和分工

一般一个团队包含这么几个人物:项目司理、架构师、产品司理、中心开发人员(TL)、开发、测试、运营(或事务方)。

项目司理: 一般是经由PMO建议项目后,由一个专人担任该项目的落地和整个后续推进作业等。项目司理直接对整个项目担任,并直接向CEO或PMO(项目管理办公司)汇报作业。

架构师: 担任整个项目的技能架构,技能完成,技能攻坚难点和统筹整个项目;并用技能完成项目事务内的所有需求。

产品司理: 担任整个项目的事务需求整理,需求剖析,输出产品原型PRD(也是项目的雏形)。

中心开发(程序员): 中心开发担任整个项目的中心模块和事务开发,或许担任项目的中心基础组件功用开发。除架构师外的一些技能难点攻坚,带领其他开发组员协同作业等。

测试: 担任整个项目的测试作业,测试用例编写,检验开发人员设计出来的体系或产品是否契合产品的事务预期,对产品的质量把关。

运营(事务): 担任产品上线后的日常运营和保护作业,包含用户增加、广告投放、用户材料保护等。这儿公司分甲方和乙方不同,运营和事务区别也不同。

这儿边不同公司,项目司理和产品司理谁起主导作用或许会有不同。

漫谈之程序员到底要不要懂业务(上篇)

那什么是事务呢?

事务就是这个工作怎么开展起来的,现状怎么,未来趋势怎么,用了什么技能,有什么企业,商业模式怎么,盈利能力怎么,现在主要面临什么问题,顾客有什么特点,等等。

国际很杂乱,单个细分工作的事务也很杂乱。

一个过来人的看法

“程序员其实是要懂事务的”,这儿有或许要被好多人吐槽了。可是近10年的技能阅历让我见到了,假如你只会写代码,你不是不行替代的,而是可有可无的。尤其是现在更是大有趋近饱和的趋势。
但话也不是那么极点,除非你的技能很牛逼,在国内或许某个工作内可以排上号的。 但技能牛逼的人,也不是只是技能超群,还常常由于可以利用手中的技能处理某方面的事务问题,做了哪些突出的奉献。

从工作现状来看

实事求是的说,绝大部分人从事IT研发,只是把他作为一份作业的挑选,不管是出于工作抢手,好就业,仍是说由于这个工作相对高薪,真实是由于对技能的执着追求而从事的相对是少量。
从事了IT研发的人,大部分又是从事事务领域的开发的,真实从事结构底层,中间件等纯技能作业的又是少之又少。我们出来混,也是要拿效果说话的,做过什么项目,有什么价值。这种价值往往就是针对事务而说的。
你看你在写简历的时分,一份好的简历通常说要有数据来展示你的效果,而这个数据恰恰又大部分来自于事务价值。

从个人开展来看

有人说,程序员只需要懂技能就好了,熟悉事务是产品司理或许需求剖析师的作业。
先抛开这两者的协作问题(作为IT人懂得都懂),先说一个程序员在工作开展,和在公司的开展中,想多一些表现的时机,想具有一定的话语权,在懂技能的背景下,再能熟悉事务,那你的不行替代性和话语权就会越来越大,否则,你就是作为后援部分(以前我们老板总是管研发部分叫成本部分)在后静静奉献的一批人,加之我国绝大多数老板不明白技能或许对技能一知半解。任由产品司理拿着天马行空的ppt,去和老板进行沟通汇报,反过来再压榨你的工期,频频的更改需求。熟悉事务,可以用事务话语来和老板沟通,你也多了一个向上管理的途径。
CTO就不必说了,这个岗位的职责自身已经身处战略层级了。
我们来看阿里p8关于岗位的要求:

漫谈之程序员到底要不要懂业务(上篇)

这儿或许又会有好多人说,能成为P8的能有多少。可是我想说,即便你成不了阿里的p8,可是至少在你的工作和你的公司,不行替代性总会是越来越大的,假如能成为某个领域的专家那就更好了。现在DDD理论中也有领域专家不是。我们现在的民营企业中,不知道能有多少老板会忍受一个大龄程序员一直从事一些事务代码的开发。我们作为架构师,也要规划事务架构和技能架构的迭代与演进,也脱离不了事务。
chatgpt最近是继续抢手的论题,他都可以在你精确的描绘下,写出高雅的代码了。 这个国际,缺的是技能过硬又精通事务的工程师,缺的是真实能处理实际事务问题的人,缺的是复合型的人才。


上篇先写到这儿,从现在工作和个人的现状给我们介绍了一下,希望对我们的考虑和作业能有所提示。接下来还有下篇,结合我自己作业中遇到的一些场景来展开说一下我自己的一些感受和想法,希望我们继续重视。