工程师和码农

其实这篇是我昨天写好的,和我昨天写的那篇《啥叫工程?啥叫工程师?》是一体的,但是内容又庞杂,所以就分成了两篇文章。

(1)前导故事1

我曾经开发过一个核心模块,受好多人关联依赖调用和状态更新,于是我用状态机重写了一遍代码,一劳永逸了。

但是后来的人却接不起来我的代码。业务专家和产品经理给他讲的是现实业务场景,他返回头打开代码一看,无法产生直接映射关系。

咱们大多数中国程序员是:现实业务什么逻辑、到了电子计算机里就什么逻辑、到了代码里就是什么逻辑。

(2)前导故事2

我曾经手下有个开发Leader,能力在众多开发Leader之中还算水平可以的。他也很喜欢设计模式之类的东西。但是他又没学到那么精通吃透的地步。

于是他就产生了东施效颦的问题:他没有抽象能力但是他还努力去做抽象-共用,最后反而弄巧成拙,大家都关联依赖他,他还做不到接口设计稳定,他也做不到这块代码的内部简约性-架构性。于是,大家有什么需求,他都得改他这块代码。他有时候要满足大家各个口的需求所以不得不又把接口改掉,于是,大家又得连带着被迫改一遍大家自己来适配他。这就形成了共振。

其他程序员和开发Leader的水平还不如他呢。所以面对这样的情况,我后来下了一个原则:尽量不要抽象-共用-关联依赖。要复制-独立隔离

为了达到这个原则,我纠集了一批核心产品经理和一批核心开发Leader:

产品经理梳理各自负责的产品系统,从中识别出经常出现的典型功能和典型UI

开发Leader把这些典型功能和典型UI代码打开,从中抽取出通用的代码,形成代码模板。

后来形成了13套常用功能和典型UI的模板,每批新人来了,都用这套来培训,这样也形成了产品详细设计文档相对标准化、代码开发相对标准化,也降低了一般产品经理和一般程序员的工作技能要求。

(3)

不同的功能是有不同的业务要求-设计要求-代码要求-数据库要求的。

比如高频窗口处理类功能,业务处理需要非常高效快捷,所以UI一定要简约,还得高性能、防着并发-锁控制,还得高稳定-高可用。

比如计费-核算类功能,要求的就是精确,不仅计费-核算逻辑要精确,而且在代码层-数据库层进行数据类型处理和数据位数处理都得要求精度。这类功能除了高性能、并发-锁控制、高稳定-高可用,还得额外注重事务处理-数据高一致性。

比如逆向操作类功能。很多程序员写主干流程-正常正向处理流程,都还能保证功能符合度并且不会出现什么疏忽逻辑bug。但是一涉及到异常业务处理流程尤其是常见的逆向操作类功能,很多逻辑就开始想不清楚了。其实这个问题在现实业务中也同样存在,正向出库仓储物流很简单,但是一旦涉及到退货退库这种逆物流,很多业务流程就开始乱套了。

比如审批类功能,好几个功能靠一条审批链条串联在一起,不同的审批环节需要做额外的不同操作才能走通整个审批流程。很多人不会写这类功能。

比如需要数据可追溯、数据版本化的功能。很多中国企业软件做不到数据版本化,比如你现在查询上个月的数据,和你下个月查询上上个月的数据,很多时候出来的数据就不是一个数据了,因为数据没有版本化,数据状态被更改了。还有数据可追溯,关联性不足,既不能做横向关联追溯,也不能做纵向追溯。很多程序员笨拙地用常规做法做,却很少把Cube的上钻下钻切片旋转的范式迁移过来。

比如决策层需要的功能,需要可视化多,需要操作简便,需要看汇总统计数据多,所以这也相应给UI设计、代码实现设计、数据库设计,需要做特殊的设计,不能再像过去写业务处理功能那样思维了。

(4)

综上所述,不同类型的功能,需要有针对性的功能设计-UI设计-代码实现设计-数据库设计。

这些功能,也应该分开发Leader、高级程序员、中级程序员、初级程序员不同级别的程序员来担当。一般跨好几个模块要串联的功能,由开发Leader来亲自开发(如审批类功能)。一般非常核心的功能(如高频窗口处理、计费-核算、逆操作)的就需要高级程序员来开发。对于主干流程上的功能就需要中级程序员开发,而初级程序员只能担当开发旁支流程功能。

(5)

至于高弹性IT资源需求的功能、局限IT资源需求的功能、高安全要求的功能、高集成要求的功能,则需要平台下大力气,然后应用开发高级程序员和平台开发程序员一起协作。

(6)

最近ChatGPT+Github写代码能力被IT业界人们讨论得沸沸扬扬的。我想对于代替CRUD增删改查功能问题不大、对于代替只会使用开源框架只会调用API的码农也是问题不大。但是要代替我上述说的,那我是想象不出来的。

毕竟,在建筑工程行业有工程师也有农民工,在软件工程行业也有软件工程师也有码农。

过去几年一堆人搞所谓的低代码工具,我想了想,这和OA表单无代码本质是一样的,这也和各个企业软件中的Script代码也是一样的(甚至达不到人家PeopleSoft PScript的能力,更达不到PowerBuilder Script的能力,因为这事要求编程语言技术和编译器解释器技术的,中国尚未有能力做)。至于ChatGPT+GitHub,大家想起90年代初的大连雅奇MIS没,也是代码生成模板框架的工具。

3e8b8217bdc2cf8ca6e3a130c8426d0c.jpeg

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

当我开始用ChatGPT帮我准备面试题…

转眼间,北美的“金三银四”已经快结束了,可是各大厂裁员的消息仍是此起彼伏。即使有HC,也不敢冒然申请,害怕还没准备好,面试搞砸了怎么办…… 那如果借助“外挂”来面试,会怎么样?没错&#xf…

阿里版GPT官宣“阿里全家桶”:所有产品都将接入

“阿里版GPT”——通义千问邀测才几天, 在本周的2023阿里云峰会现场,CEO张勇就宣布: 阿里巴巴所有产品未来都将接入“通义千问”大模型,进行全面改造。 与此同时,通义千问的能力也将通过API对外开放,帮助每家企业打…

从华为云计算岗跳槽到银行科技岗,好难!

点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~中文详细注释的开源…

AIGC人才趋势洞察: AIGC时代属于跨界复合型人才,⼈才和创新机制是成功的关键

目录 一、行业背景 (一)从Chat GPT到AIGC:ChatGPT现象级出圈,AIGC关注度爆发性增⻓ (二)AIGC定义:广义与狭义 (三)AIGC应用图谱 二、AIGC招聘需求 &am…

没背景、没学历?专科程序员进入互联网大厂是不是真的没希望?

最近知乎上的一个帖子引起了大众的热议。 疫情结束后,不少大厂又开始了新一轮的招人模式,虽然其中各个方面的要求有所不同,但其中一个招聘要求却出奇的一致——“本科及以上学历。” 互联网用七个字,筑起了一座座学历高墙。 对于…

从华为跳槽到银行科技岗,好难!

今年我们团队在西安的招聘名额比较多,我作为团队的招聘组长,筛选了一波又一波的候选人。 西安是一个有实力的城市,名校云集,985/211 院校很多,包括西安交大、长安大学、西北工业大学、西安电子科技大学、西北大学、西…

学术风波不断,英国24所大学为何改变态度?

近期,一项备受关注的议题引发了英国教育界的热议:是否允许学生在学业中使用生成式人工智能工具ChatGPT?经过一系列的争论和讨论,英国罗素集团的24所顶尖大学最终达成了共识,并发布了关于人工智能使用的原则&#xff0c…

《弥合鸿沟——2023校园招聘调研报告备战攻略》重磅发布!一文速览10大关键发现

校招是企业抢人的主擂台,也是学生上岸的摆渡船。从象牙塔到写字楼,学生们想通过校招完成身份的蜕变,而从写字楼到象牙塔,企业也希冀通过校招引入年轻人才,寻觅那些可助力组织持续发展的新动力。 但在企业和学生之间似乎…

深度学习应用于脑电信号处理

获取了数据还要读懂数据,周期,时间,采样频率,通道等等信息,可以通过说明文档,一般数据都会有。或者用matlab打开数据集来获取。 一、脑电信号数据 开源数据集,注意数据的格式,我用…

脉冲神经网络 神经元模型-HH模型(1)

脉冲神经网络 神经元模型-HH模型 Hodgkin Huxley 神经元模型及实现一 原理1. 电路图2. 常微分方程 二 代码实现-python版本1. 模拟离子通道2. 模拟膜电位 三 代码实现-matlab版本四 参考 Hodgkin Huxley 神经元模型及实现 最近在接触脉冲神经网络相关知识,如有错误…

(DEAP)基于图卷积神经网络的脑电情绪识别(附代码)

1. 数据集介绍以及特征部分见上篇文章: DEAP数据集介绍以及特征提取部分 深度学习基于DEAP的脑电情绪识别情感分类(附代码)_qq_3196288251的博客-CSDN博客 2. 图卷积神经网络哟结合LSTM 本文主要介绍利用图卷积神经网络结合LSTM进行脑电情绪识别。 由于脑电通道…

神经元是多输入单输出吗,单输入单输出神经网络

1、人工神经网络的知识表示形式 人工神经网络的知识表示形式: 1、每个神经元都是一个多输入单输出的信息处理单元 ; 2、神经元输入分兴奋性输入和抑制性输入两种类型 ; 3、神经元具有空间整合特性和阈值特性 ; 4、神经元输入与输…

神经元内信号传递的计算模型-HH模型

神经元内信号传递的计算模型-HH模型 神经元动力学可以被设想为一个总和过程(有时也称为“集成”过程),并结合一种触发动作电位高于临界电压的机制。 在这里主要介绍Hodgkin Huxley模型模拟离子通道,膜电势的改变。 原理 基础知识 细胞膜两侧离子浓度…

Pytorch+PyG实现GAT(图注意力网络)

文章目录 前言一、导入相关库二、加载Cora数据集三、定义GAT网络四、定义模型五、模型训练六、模型验证七、结果 前言 大家好,我是阿光。 本专栏整理了《图神经网络代码实战》,内包含了不同图神经网络的相关代码实现(PyG以及自实现&#xf…

脑电信号特征提取方法与应用

前言 脑电图(EEG)信号在理解与脑功能和脑相关疾病的电活动方面发挥着重要作用。典型的脑电信号分析流程如下:(1)数据采集;(2)数据预处理;(3)特征提取;(4)特征选择;(5)模型训练与分类;(6)性能评估。当信号分…

基础2-用卷积神经网络进行颅内和头皮脑电图数据分析的广义癫痫预测

A Generalised Seizure Prediction with Convolutional Neural Networks for Intracranial and Scalp Electroencephalogram Data Analysis 为了改善耐药癫痫和强直性癫痫患者的生活,癫痫预测作为最具挑战性的预测数据分析工作之一已引起越来越多的关注。许多杰出的…

异质图神经网络(持续更新ing...)

诸神缄默不语-个人CSDN博文目录 本文将对异质图神经网络(HGNN, heterogeneous graph neural networks)的方法演变进行梳理和介绍。 最近更新时间:2023.5.10 最早更新时间:2022.10.31 文章目录 1. 异质图2. 处理为同质图3. 知识图…

Python画棵圣诞树 ~ Merry Christmas ~

圣诞节快到了,用python、turtle画棵圣诞树吧~_Ding2langdang的博客-CSDN博客 转载于Ding2langdang 最近圣诞节快到啦,CSDN的热搜也变成了”代码画颗圣诞树“,看了几篇博客,发现原博主把一些圣诞树给融合在了一起。 我更喜欢树叶…

圣诞树网页和圣诞树应用程序

圣诞树网页和圣诞树应用程序 1、圣诞树网页 效果图 代码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <title>写给xxx的的圣诞树</title> …

【圣诞节限定】教你用Python画圣诞树,做个浪漫的程序员

最近在各大社交平台看到好多圣诞树,看到大佬们画的圣诞树一个比一个精致,我也特别想尝试画一棵特别的圣诞树。下面是我画的一棵简易的圣诞树,虽然和网络上大佬们的圣诞树相比不是很精致,但是对于萌新们来说,画这样一棵简易的圣诞树还是非常轻松的。 ps:重要的不是圣诞树,…