面试有感-写程序真的不是能靠年龄积累经验的行业

52 天前
 wanmyj

经验积累的行业有很多,比如医生,换个医院照样看病,只要科室没有换。年龄大的医生看过的病人就是比年轻医生多 。开医院想招一个内分泌科的医生,5 年经验和 15 年经验的两个候选人,就是差了 10 年经验,不可能 15 年经验的待遇少于 5 年经验的待遇,straight forward 。

程序员真的不是。换编程语言相当于医生换科室,这个相对好理解。但同一个编程语言内,在大公司打工的牛马,换公司工作,等于把自己的对业务理解的积累全都扔掉,虽然编程语言没换,开发平台也没换。

最近公司招开发,收到不少在前一家工作 10 年以上的候选人的简历。有的聊一聊就知道这在前司绝对是 tech leader 的角色,但是一旦换工作,除非是被挖来,否则都是进入到繁琐的面试流程,刷题写算法。15 年工作经验的程序员,写算法也不一定能写过 new grad 。就算百里挑一最后拿 offer 入职,对业务的理解又是一个全新的过程,15 年的工作经验,能发挥出来的也就 5 年左右了。

这就有一个 dilemma ,想在一个公司干得好,就必须要精通业务,但是所精通的业务,到另一家公司应聘,可能真的用不上。更不要说,有些要维护的十几年前的软件,技术栈太老,市面上没几个公司再使用了。路子走窄了,越走就越远

4490 次点击
所在节点    职场话题
36 条回复
bojue
51 天前
@watzds 跨界也不如新手吗
chobitssp
51 天前
面试造火箭 工作拧螺丝
zb1141920796
51 天前
@TimeRain #16 是的,我妹也是当医生的,有些行业就是这样,城里的人想出去,城外的人想进去。那些临床的医生不比别的行业轻松,随时待命,临时通知做手术,你可能饭都没时间吃,而且还有各种医闹。讲道理,很多医疗腐败之类的大部分都是领导的问题,还有开药之类的,普通的一二线的医生,没有什么话语权的,如果你要做那个清流,那你就一定会被排挤,其实医院和企业甚至大到国家,你从组织架构上来说都殊途同归,只要成了一个组织架构,就有官本位阶级,但是如果你就做个普通地医生,工作经验确实比码农这样的来的更加珍贵,反过来说,程序变化,迭代很快,新语言,新框架,新架构的出现都会影响你的就业。
zw1one
51 天前
给你们换个视角看看:
我朋友是做产品经理的,毕业几年一直在行业 A 干,想换个行业干,几乎不可能。求职打招呼有回应的,基本是原行业的公司。
他说很羡慕我们 it ,技术是通用的,换行业很容易。
chuck1in
51 天前
有一定道理感觉。
me1onsoda
51 天前
换行业才是换科室,编程语言还算不上
specita
51 天前
我就觉得我干不过现在的小青年了,唉。
aarontian
50 天前
最近在找工作,比较认同你的结论。

不过里面有个 bug ,面试 15 年经验的程序员如果还在靠算法题能不能 A 出来评估对方的水平,只能说面试者水平有限甚至公司层次不够吧。我六七年经验已经遇到好些中大厂面试不看算法题的了,出算法题也是出简单的那种,还遇到过几次什么二叉树遍历或者贪心就能解决的简单问题,仅拿来检验候选人手活还在不在,或者是出些场景题让你写伪代码,跟 leetcode 那类完全不是一回事。
(这对我比较不利,因为我是比较擅长做算法的,反而老是考察我的什么架构设计能力,产品思维,方法论,结构化思考能力,我经验有限感觉说不出什么东西)
weiqipeng
49 天前
以前我自己比较喜欢新技术,
现在开发年限上去,也开始讨厌新技术了
技术够用就行
我自己从后端到前端撸一套自己的标准出来、管他外面的新技术怎么迭代
logic2
49 天前
第一点,其实哪怕是同行业的公司,业务流程大体上也是有差异的,其实这个差异不大,更大的差异来源于每个公司内的自研团队针对这套业务流程设计之后的系统概念,那真的是南辕北辙,可能你在同行业 A 公司做过,你去同行业公司 B 区做,两套系统里面的概念那真的几乎完全不一样,甚至有的系统根本没有系统建模跟边界的概念,只有一堆表驱动的代码逻辑,你就往里头钻就是了。

第二点,国内喜欢 这种猪突似 毫无章法的开发方式,导致工程业务代码太乱,90%的系统都是业务脚本系统,没有建模跟分层的概念,导致开发人员 换一个公司进行工作,上手业务系统的成本极高。很多业务逻辑可能写在某个犄角旮旯的地方,理解这个业务逻辑只要 2 分钟,找到对应产品经理这个业务逻辑的代码可能要 2 个小时,很大可能的情况,你花了 2 个小时,最终你还少改了一个地方。

像很多不成熟的团队,待在里面,与其说是研发,真的不如说是去吃前人拉的屎,真实的工作更像是,吃下一坨屎,并理解透了这一坨屎当时是哪个程序员吃了什么业务逻辑拉下来的,然后找到所有的业务逻辑关联点,给它一一进行修改,并在脑内构建一个大体的心智模型与代码模块的对应关系,以应对下一次的变更。

当然这一点对于国内不是什么大问题,因为人力成本极低,雇人在一堆乱麻里面捋逻辑 真的太便宜了,所以我很早就知道在系统建模 管理复杂度这种事情上下功夫没什么意义,反倒是 PPT 架构师 + 双商在线 更容易在公司里面混的如鱼得水。

至于技术,国内很多项目 真的就是请 1-2 个 5-8 年的老师傅坐镇,应用成熟方案搭好基本的开发平台框架,其余的人 找一堆年轻的应届生,vue + springboot 一把梭就行

像后端这块,因为生态过于成熟了,碰到的技术问题,网上大体都是有方案的,无非就是抄谁的而已,工程不是研究,讲究的应用过去成熟的方案,很多东西都是有最佳实践,拿来实践一下,看结果,谁的快准稳 最后就用谁的就行。这一块,大体上你只要工作过几年就能把握住,没什么难点。

更难的点在于捋逻辑,搞清业务边界,以及心智建模。

当然如前所说,大部分公司并不在乎这一块,毕竟交付的东西能跑就行,大体上都是猪突似的开发,导致成熟的开发人员没什么优势,但年轻人愿意吃苦,能在系统里面吃屎,反而是一种优势
logic2
49 天前
@weiqipeng 其实很早,从小工到专家里面就写了,技术风潮就是这样的,每年都有新东西,新名词出来,开发工程师,应该有意识的去发掘哪些东西是有价值的,而不是盲目跟风,要把技术框架当做一种知识资产进行投入
logic2
49 天前
@sagaxu 确实,医生这块的 门槛确实高,光是能进一般的县级医院,就得 5+3 年的学习,硕士毕业才算刚刚拿到敲门砖,过了考试,过了 3 年规培,才算是 刚刚踏进门,开始积累资源赚钱
stevenhan
49 天前
人太多了,现在各行各业都希望要聪明+有一定经验的。v2 喜欢问 X 年经验薪资应该多少,就像我高中 3 年经验高考应该多少分一样,无法回答。
BwNVlwSq
48 天前
不是什么年龄的问题,现在是蛋糕变少了,不够养这么多人...
slert
48 天前
肯定是干不过医生的,60 岁医生炙手可热,60 岁程序员还能有写代码的工作已经很厉害。
Cybrox
42 天前
我这边是游戏行业后端开发,最近面了好些 12 ~ 18 年左右工作经验的人,其中不少人,我就按着他自己的简历来问问题,十有八九答的很差。比如声称自己从零开始搭建后端,但是问他架构流程,讲的不清不楚。简历上写由自己负责的内容,一问细节一塌糊涂。还有个神人,15 年工作经验,问性能优化,说项目够用,不需要性能优化;问多线程安全,说业务逻辑单线程,不用考虑多线程安全;问 MMO 三千人同屏的痛点和视野裁剪,说不需要视野裁剪;问宕机排查,说从代码规范上限制,不会宕机,C++宕机就是刚毕业时会出现的问题,他们都不宕机的,不宕机就不需要排查宕机,就没什么排查宕机的经验;问那要怎么定规范呢?答:限制不能使用数组,只能使用 C++ STL 。问那数组会越界,STL 容器一样会有越界和迭代器失效啊?答:一般来说是不会的。噎的我哑口无言,只能匆匆结束面试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1085395

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX