为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

在我眼里,也经常会把程序员分成两类为什么有人卖源码:一种是我等这种写业务代码的程序员,另外一种是研究高深算法、造“轮子”的“科学家”...

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

将他们称之为科学家是有些夸张,第一次冒出这样的想法是参加一个技术大会,当别的嘉宾都在分享开发、设计、架构、管理方面的经验时,一名在腾讯工作的算法工程师(应该已经是一个小领导了),他上台分享了一些诸如:滑动平均自回归模型、神经网络基因表达式编程、SVM回归机集成学习...坐在台下的我第一次冒出这样的念头:“这**是科学家研究的东西吧。”

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

当然,倒也不能说写业务代码就很 low,写业务代码也不是想象中那么简单的。

写业务相关的代码,必须了解业务流程,还需要了解业务人员心里是怎么想的,也就是业务出发点是什么样子的。

比如我最近遇到一个需求,过程大概是这样的:销售人员在卖一款产品,这款产品非常火,有些优秀的销售人员一周可能能卖出去几百上千单;结果我们接到一个需求,要限制每个代理人的销售数量,比如每人只能卖 10 个(之前已经卖掉的不算);这就让我们非常奇怪,本来卖的好好的,为什么要做这个限制呢?这个需求看起来就非常的不合理。

后来业务人员和我们解释了一下原因:因为这款产品公司不挣钱,销售人员为了推这个产品,花在别的产品上的时间就少了,所以出这个功能,就是让销售人员“收收心”,把精力放在其他产品上。

这么一解释,我们就立刻明白了;所以如果你不明白业务的时候,看着需求敲代码也是非常容易出错的。

有些人会认为业务逻辑就是一堆 if-else,但是我认为在实际工作中,这些 if-else 也是非常难做到的。

业务逻辑是人设计的,业务逻辑难不可怕,可怕的是它不严谨和变化快;业务逻辑和那些确定性的东西不一样,比如我们写好的代码 if-else 两个分支,那么再怎么也不会跳出这个范围,业务逻辑就不一样了,它是非常灵活的、不确定的,业务机会来的快消失的也快,我们很难开发出来一套全面的、完善的、灵活的的系统,去应对将来可能会发生的需求。

所以在开发过程中,如果可以将业务流程拆分成多个组件模型,组件和组件配合完成一个完成的业务流程;当业务发生变化或有新业务的时候,只需要重新编排这些组件,或对某一个组件做少量更改,就可以满足业务变化;如果能做到这个程度,也是非常不容易的。

在这个过程中,你需要做到高内聚低耦合,避免过度抽象,从业务流程和动机出发,已满足业务需要为主;既然做不了“科学家”,我们就努力把业务代码写好把。

我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。

1.程序员工资到底什么水平?

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

到底哪些工作属于高薪工作?2021年初,我们统计了北上广44个工种的工资,程序员绝对能排到前十,是不是一线大城市才这样呢?

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

为什么有人卖源码,大家怎么理解“业务代码”为什么有人觉得写业务代码很low

紧接着统计了二线城市哈尔滨、大连、沈阳、郑州相应工种的工资,统计结果显示,程序员工资水平较高,都在当地社会平均工资以上。具体数据可以关注[朵颜老师],查看历史统计数据。

2.程序员门槛较高

一个刚刚毕业的计算机系学生,如果仅仅掌握学校知识。基础好一点,一般来说只能做小小的功能模块,还不能独立完成一个复杂的功能,大一些的项目就更不可能了。虽然经过三到四年的学习,投入不少物力人力,很多学生都不能以程序员为职业,很多985、211院校的学生只能做跟计算机相关的行业比如说软件销售,某些同学进入阿里腾讯百度这样大厂的也只能做客服工作,接接电话。只有那些自我驱动力很强、热爱编程的学生,牺牲掉闲暇时间,学习和掌握一门或几门编程语言才有可能以编程为职业;每门语言都要从最基础开始,做基础的案例->研究->实际操作->遭遇挫折->克服->完成,学习新的知识,再循环往复。这个过程对一个毫无编程经验的学生来说是很焦灼的,但又是一个不得不经历的过程。

3.程序员工作时间较长

工作中的程序员

经过刻苦的学习,顺利通过招聘考试,进入了程序员的新手阶段。接到一个新手任务,完成一个模块,可能需要很久才能解决一个小问题,可是一个功能模块还有很多技术难题需要解决,上班时间完成不了,加班吧,于是有了996工作制度。逐步掌握了几项技术,熬成了技术骨干,加班成了习惯,私生活靠边站。

4.收益和利润都较高

老板给的工资高,说明这项职业创造了更高的收益和利润。

开发一款软件应用需要几个人呢,据微信产品经理张小龙透露,开发微信最初版本的时候,算上他一共十个人的团队。微信成熟稳定后用户量有多少呢,根据微信官方统计数据,2018年某个时刻,微信实时在线人数达8.27亿。十个人开发的一款产品,不断迭代成长,拥有数亿用户,成为一个巨大的流量入口,构建起一个内容丰富的生态圈,为腾讯带来滚滚财源。

再举一个身边的例子。朵颜老师一直在做统计数据相关工作,经常要把多张收集来的数据,整合到一张电子表格上,每个月都要做几次表格,非常繁琐,经常弄得头昏脑涨,还容易出错。公司的程序员花费几天功夫,写了小程序就把这个工作干了,把我从繁琐易错的操作中解脱出来,原来用几天才能完成的工作,现在仅仅需要几秒中。用程序替代重复繁琐的工作,提高工作效率和精确度,这就是程序员的价值。

5.工资真的高吗?小心高工资陷阱

挖下深坑等虎豹,撒下香饵钓金鳌。程序员就是陷坑中的虎豹、上钩的金鳌。程序员中流行九九六工作制,我们分析一下,从早上九点工作到晚上9点,一周工作六天共72个小时,比8小时工作制一周5天40个小时多出整整32个小时。意味着什么?996工作一周,相当于8小时工作日9天时间,一个月相当于8小时工作制近2倍。

朵颜老师之前统计过北京程序员月工资,java高级程序员月平均工资达22000元的,假设他是996工作制。他一个月工作时长相当于工作7.2周,如果按照一个月4周计算,他的月工资只有12222元。

6.程序员单身的原因

有的程序员单身是因为工作繁忙,每天996哪有时间去工作谈恋爱。

程序员这个行业男生较多,圈子窄。

还有一些原因,程序员往往跟直男理科男划等号。情商低,不爱说话,不会说好听的。女生是感情性的,该跟女生谈感情,却讲道理,该跟女生讲道理,却。。。。算了谈恋爱讲感情不用讲道理。

说回正题,一个人需要面对人和物,正所谓待人接物。对待事物,该怎样就怎么样,比如面对程序或者工作,你上手完成就好了,越直接越好;待人,就不是这样,需要考虑对方的感受,情商高些,人际关系才会妥当。两者都兼顾,需要情商智商都较高才可以,谈恋多用情商哄女孩开心。

以上就是程序员单身的原因吧。

如果大家觉得对你有帮助,请点个赞,也欢迎在评论区提问。点击头像关注我,查看更多民生类信息,总有一项是您关心的。我是朵颜老师,您身边的民生统计顾问。

2022-06-10

2022-06-10