余晖落尽暮晚霞,黄昏迟暮远山寻
本站
当前位置:网站首页 > 编程知识 > 正文

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

xiyangw 2023-10-10 15:23 28 浏览 0 评论

背景

每年会遇到不同阶段程序员在问,新入职场的,有过几年职场经验的,甚至还未毕业的未来程序员,总是会问“程序员到底要不要懂业务”的问题。
近几年,作为项目负责人做了几个0-1的项目,并作为团队leader在负责持续的迭代版本和架构演进。 这几个项目中,有的是作为技术团队的负责人,和产品经理相互协作来完成的;有的是直接作为总负责人,来组织整个项目的。

在整个工作过程中,不管是前者还是后者,我发现都已经离不开业务。尤其是作为项目的总负责人,更多的视角都会基于业务,从数据的视角出发,数据驱动业务。关注对业务的支撑,关注业务的发展。
在这里结合我自己的经历和身边其他同事的经历,和大家聊聊这个话题。这是一个开放的话题,每个人在参加工作之后,因为就职公司的背景、文化还有自己的工作经历不同,都会有所影响和不同。 我们接下来会描述一些真实的职场情况,让大家能有所感受,给大家接下来的工作能有点启示,找到自己合适的工作方向。

现在流行这么几种说法

  1. 我是一个程序员,需要关注的重点是技术,并不需要知道业务。
  2. 企业以价值产出为导向,因此程序员必须关注业务
  3. 因为程序员不懂业务,只能听产品经理讲方案,结果需求改了又改,甚至推翻出来。

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

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

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

架构师: 负责整个项目的技术架构,技术实现,技术攻坚难点和统筹整个项目;并用技术实现项目业务内的所有需求。

产品经理: 负责整个项目的业务需求梳理,需求分析,输出产品原型PRD(也是项目的雏形)。

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

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

运营(业务): 负责产品上线后的日常运营和维护工作,包括用户增长、广告投放、用户资料维护等。这里公司分甲方和乙方不同,运营和业务区分也不同。

这里面不同公司,项目经理和产品经理谁起主导作用可能会有不同。

那什么是业务呢?

业务就是这个行业怎么发展起来的,现状如何,未来趋势如何,用了什么技术,有什么企业,商业模式如何,盈利能力如何,目前主要面临什么问题,消费者有什么特点,等等。

世界很复杂,单个细分行业的业务也很复杂。

一个过来人的看法

“程序员其实是要懂业务的”,这里有可能要被好多人吐槽了。但是近10年的技术经历让我见到了,如果你只会写代码,你不是不可替代的,而是可有可无的。尤其是现在更是大有趋近饱和的趋势。
但话也不是那么极端,除非你的技术很牛逼,在国内或者某个行业内能够排上号的。 但技术牛逼的人,也不是只是技术超群,还常常因为能够利用手中的技术解决某方面的业务问题,做了哪些突出的贡献。

从行业现状来看

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

从个人发展来看

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

这里可能又会有好多人说,能成为P8的能有多少。但是我想说,即便你成不了阿里的P8,但是至少在你的行业和你的公司,不可替代性总会是越来越大的,如果能成为某个领域的专家那就更好了。

现在DDD理论中也有领域专家不是。咱们现在的民营企业中,不知道能有多少老板会忍受一个大龄程序员一直从事一些业务代码的开发。我们作为架构师,也要规划业务架构和技术架构的迭代与演进,也脱离不了业务。
chatgpt最近是持续热门的话题,他都可以在你准确的描述下,写出优雅的代码了。 这个世界,缺的是技术过硬又精通业务的工程师,缺的是真正能解决实际业务问题的人,缺的是复合型的人才。
上篇先写到这里,从目前行业和个人的现状给大家介绍了一下,希望对大家的思考和工作能有所提示。接下来还有下篇,结合我自己工作中遇到的一些场景来展开说一下我自己的一些感受和想法,希望大家持续关注。

相关推荐

华为交换机配置命令总结

1、配置文件相关命令[Quidway]displaycurrent-configuration显示当前生效的配置[Quidway]displaysaved-configuration显示fla...

解决账户无法登录的故障
解决账户无法登录的故障

在优化系统时错误地根据网上的提示,将唯一的Administrator账户设置为禁用,导致重启后无法进入系统。类似的故障还有使用组策略限制本地账户登录,导致重启后...

2023-10-11 17:16 xiyangw

S5720交换机登录提示初始密码存在安全风险
S5720交换机登录提示初始密码存在安全风险

问题描述客户每次登录输密码时,提示初始密码不安全,现在客户嫌麻烦想要去掉:Username:huaweiPassword:Warning:Theinitia...

2023-10-11 17:15 xiyangw

Springboot,Mybatis修改登录用户的密码
Springboot,Mybatis修改登录用户的密码

一、Mybatis.xml<updateid="changePassword"parameterType="string...

2023-10-11 17:15 xiyangw

PHP理论知识之沐浴更衣重看PHP基础(二)
PHP理论知识之沐浴更衣重看PHP基础(二)

接上篇,咱们继续讲解PHP基础八、标准PHP组件和框架的数量很多,随之产生的问题就是:单独开发的框架没有考虑到与其他框架的通信。这样对开发者和框架本身都是不利的...

2023-10-11 17:15 xiyangw

新鲜出炉UCloud云主机“数据方舟”评测报告(5)— — 关其城
新鲜出炉UCloud云主机“数据方舟”评测报告(5)— — 关其城

2015年10月29日,UCloud云主机黑科技——“数据方舟”功能正式上线,首轮内测随即开放。截止至2015年12月6日,我们共收到了534位用户的评测申...

2023-10-11 17:14 xiyangw

业余无线电Q简语及英文缩语
业余无线电Q简语及英文缩语

Q简语:语音通信及CW通信通用(加粗为常用)QRA电台何台QRB电台间之距离QRG告之正确频率QRH频率是否变动QRI发送音调QRJ能否收到QRK信号之可...

2023-10-11 17:14 xiyangw

非常详细!如何理解表格存储的多版本、生命周期和有效版本偏差
非常详细!如何理解表格存储的多版本、生命周期和有效版本偏差

表格存储在8月份推出了容量型实例,直接支持了表级别最大版本号和生命周期,高性能实例也将会在9月中旬支持这两个特性。那么,最大版本号和生命周期以及特有的...

2023-10-11 17:14 xiyangw

H3C交换机恢复出厂和各种基本配置,这20个要点你知道吗?
H3C交换机恢复出厂和各种基本配置,这20个要点你知道吗?

私信“干货”二字,即可领取138G伺服与机器人专属及电控资料!H3C交换机不知道密码如何恢复出厂设置1、开机启动,Ctrl+B进入bootrom菜单,选择恢复出...

2023-10-11 17:13 xiyangw

在使用移动支付系统的时候如何保护信息安全?

移动支付的方式近年来不断被更新,使得Venmo(据嘉丰瑞德理财师了解,此为美国的“支付宝”)之类的支付方式已经可以某种意义上代替随身携带现金了。但是你必须防范那些第三方应用程序轻松地获取你的银行卡以及...

界面控件DevExpress WinForms MVVM入门指南——登录表单(下)

从本文档中,您将了解如何向应用程序添加登录表单。在本节教程中着重讨论了如何实现此任务,这基本上是附加应用程序功能的一部分。DevExpressUniversalSubscription官方最新版免...

linux基础命令(一)
linux基础命令(一)

为啥要学linux?您可能熟悉WindowsXP、Windows7、Windows10和MacOSX等操作系统。Linux就是这样一种强大的操...

2023-10-11 17:13 xiyangw

MySQL数据库密码忘记了,怎么办?

#头条创作挑战赛#MySQL数据库密码忘记了且没有其他可以修改账号密码的账户时怎么办呢?登录MySQL,密码输入错误/*密码错误,报如下错误*/[root@TESTDB~]#mysql-u...

MobaXterm忘记Session密码,如何查看已保存的密码
MobaXterm忘记Session密码,如何查看已保存的密码

MobaXterm工具登录过SSH终端后,如果存储了Session(存储后再连接ssh的时候只需要输入账号不需要输入密码就可以直接连接上ssh),则可以...

2023-10-11 17:12 xiyangw

华为交换机密码丢失修改方法
华为交换机密码丢失修改方法

华为S2300交换机找回密码设置一、目的交换机的console和telnet密码丢失,无法登录设备。交换机已进行过数据配置,要把密码恢复而数据配置不能丢失。二、...

2023-10-11 17:12 xiyangw

取消回复欢迎 发表评论: