其实大部分程序员的大部分工作时间并不是在研究技术,一个程序员的职业生涯当中大部分时间其实是在写业务代码!可惜的是,很多程序员并不太重视业务,而是把精力过分地放在了研究技术功底上。殊不知,技术是永远学不完的,但是业务你到了一定年纪还不能生巧的话,那么即使你的技术再好,对于公司来说都是一个很头疼的事情!

打开网易新闻 查看更多图片

一般来讲,一个公司不能让一个程序员无限地去研究技术。一个程序的功能不管怎么复杂,其实使用的编程技术也不会太多,很多东西都是一通百通的。乃至于很多以科研、高科技为卖点的软件其实使用的不过是编程最基本的技术而已。

很多工作多年的程序员跟我说,他们大部分时间都是在做“CURD”的活,使用的也是常用的编程语言和编程框架,每天干着重复的工作,感觉这样的日子遥遥无期!

一般来讲,我会问他们:“难道你工作那么多年,除了技术你就不想学点别的吗?”。

其实我想告诉他们的是,程序员专心研究代码是不错,但是如果想要未来的路更宽一些,我们不能只盯着代码!如果只专注于代码,那么最后其实就是一个人形机器!

我曾经跟朋友说过这么一句话:“程序员不适合管理!”,这句话可能当时考虑不周,所以我现在改变我的说法:“只知道研究技术的程序员不适合带团队!”。

因为我遇到大部分的研发经理其实都没有多少业务基础,或者有业务基础,但是却不懂得分享。虽然他们的编程技术很好,但是如果他们的公司没有一个产品经理角色的人去设计整个产品,那么整个研发团队就不知道怎么工作了!即使能够勉强开工,也会是一步一个坎!

比如我曾经任职过的一家公司,研发经理就是个只专注代码的管理者,公司恰巧也没有产品经理,所以每个项目整个系统架构以及功能点都要下属的程序员自己去研究。虽然这种公司研发结构有缺陷,但是这样的公司其实还是挺多的。

我在这家公司感到最难受的地方就是对公司的业务不熟悉,但是研发经理却要求我自己去研究整个项目该去怎么写。如果我在这个公司足够久,对于相关产业的业务足够熟我可能干得就得心应手。但是当时我只是刚刚入职很短的时间,对于业务一窍不通,所以项目被耽搁了很久,才勉勉强强完成。

打开网易新闻 查看更多图片

而其他比我入职还要久的人也没有比我好到哪里去,因为要想对一个行业完全熟悉,其实是需要时间积累的。但因为很多程序员他们自己不研究业务,所以只知道按照别人给的产品文档去写。我经常遇到有些程序员,即使产品经理写的产品文档有问题,他们也不会去质疑。

这只是产品层面的业务逻辑,还有更多的是代码层面的业务逻辑。典型的代码层面的业务逻辑就是我们会把一些常用的代码进行封装,待到下次使用时直接拿过来用,这其实也是对于业务逻辑熟悉了以后经常会干的事情。

当写业务逻辑久了以后,你会产生你自己的想法,这些想法如果固定在某一个行业,将会在你接下来的程序员职场生涯中起到很大的作用。

很多公司在招聘程序员的时候,都会要求程序员在某一行业有过经验,其实就是要求你有成熟的业务逻辑。比如像订单管理系统的业务逻辑就包括订单、发货单、出库单等等行业专有的业务逻辑。如果一个有多年编码经验的程序员,想要获得此类公司的职位,一般来讲对于订单管理系统的业务逻辑必须熟悉,否则这些公司大概率不会考虑你。

之前我看到有一个网友在问,她自己已经投了很多简历了,但是一直没有找到工作,难道是她不够优秀吗?接着,她把她的简历给发了出来。我一看,难怪她找不到工作!

看她的简历有十多年的工作经验了,第一份工作是做教育培训销售相关的工作,第二份工作做得是幼师,第三份工作做得是公司的行政。而第三份工作做了有将近六年的时间,但是她第四份工作的求职意向却是运营相关的工作。

她的每一份工作行业都不一样,第三份工作好在做得够久,结果第四份工作又换了行业!我觉得她找不到工作就是因为她抛弃了她工作多年的行政岗!

其实这换作是程序员道理是一样的!当一个程序员在某一种行业里相关业务写多了以后,这些行业经验其实是很宝贵的。行业经验宝贵到超过了程序员的码龄!

如果一个程序员在不同的行业里跳来跳去,其实到最后即使你的编程技术再优秀,真正写项目的时候你会发现,难倒你的不是技术,而是业务逻辑!