招了一个人,面试各方面都不错,就让他进来了。 结果写的代码一言难尽,还总是喜欢自己造轮子,有现成的框架不知道用,也不会问,关键是写的还很烂,代码可维护性根本没有。举个例子,组里都是用 mybatis mapper 的写法,他倒好,一来就上 springdata ,跟现有的写法完全不搭,写之前也不说一声,闷头就写了。现在组里的其他成员已经非常反感了,请问有什么办法请走他
1
barrywey 36 天前 4
试用期不合格啊,还需要多说什么?
|
2
falcon05 36 天前 via iPhone
hr 劝退
|
3
Tiller 36 天前 3
试用期的话就约谈,不改就劝退
擅自引入新的技术栈跟拉屎没什么区别 |
4
lambdaq 36 天前
code review
reject 不匹配,再见。 |
5
shadowyue 36 天前
谈话要求改善,没效果就劝退。
|
7
hackyuan 36 天前
|
8
microscopec 36 天前
不合适就和人事说
|
9
hackyuan 36 天前
刚开始也有憋个三五天提交上来一份不能用的,遇到后直接打回。
后来强制要求提高提交频率,等他代码风格质量提高后基本上不怎么管了,前半个月一定是折磨的,工作量倍增。 |
11
spritecn 36 天前
组里都是用 mybatis mapper 的写法,他倒好,一来就上 springdata
------------ 这跨度其实蛮大的 |
12
potatowish 36 天前 via iPhone 19
新手吧,老员工在屎山上闪转腾挪,他在旁边悄悄拉了坨新的
|
13
iOCZS 36 天前
有入职辅导吗?我感觉不管不顾,风险还是比较大的。至少初期分配任务的时候,需要进行一定辅导和代码审查。新人不知道自己代码的自由度有多大。应该尽量帮助他捋顺开发流程。
|
15
COW 36 天前 via Android
拉个会统一下开发规范不就完了,怎么别人还能强行反抗不成?
|
17
cwliang 36 天前
自己招的这不是打自己脸吗
|
18
gggyyybbb OP @iOCZS 关于他的代码质量问题,我是从一开始就在跟的,但怎么说呢,他年纪比我还大,非常有自己的想法,有时候我说不能这么写得按规范来,他口头上答应了好,但就是不改。。领导不是很关注代码质量,项目也比较紧张,有时候工期紧了也就没细看,好家伙,现在直接搞了个大的,给大家都整无语了
|
20
iOCZS 36 天前 2
@gggyyybbb 写代码就要抛弃个性,融入项目,让代码看起来像一个人写的。基本的模仿学习能力还是要有的。风格问题早就要强制了,要不然债务越积越多,改不过来就早点分手,拖拖拉拉,对你们组员、项目,对他都不好,造成了巨大的时间浪费,应该尽早换人。这时候决不能心软,一定要杀伐果断了。
|
22
sagaxu 36 天前
不打招呼,引入功能重合的较大的框架/库,这不是技术问题,是做事态度问题。一般进入新项目组的时候,要无条件跟随现有风格。哪怕老代码是屎山,你有更好的写法,也要跟屎山保持一致,避免给自己和他人增加麻烦。
|
23
tpeng9240 36 天前
要不招我😄 http://www.techkid.top/ 投简历好久了哈哈哈
|
24
weenhall5 36 天前
是不是入职指引没做好,为了防止下次发生类似的事,入职指引也应该有代码方面的介绍
|
25
Ocean810975 36 天前
谈啊,和他说不按规范来就走,你就说修改他代码的工作量已经大于其他正常业务运行的工作量了。
然后让他自己把代码改到你们组的规范,不行就走。 |
27
RightHand 36 天前 via Android
这不是技术不达标,这是不合,辞退就行了
|
28
nnegier 36 天前
喜欢造轮子,技术还不行?感觉有点矛盾呢,按理说 API Boy 更差一下吧,当然若有现成的,进度比较赶还是要用现成的,但这个说一下就可以了,赶进度嘛。从标题剩下的内容看,这个人应该有点过于自负,我觉得沟通下就可以。
|
29
fangxisama 36 天前
想看看一言难尽的代码。不过还是劝退吧,擅自引入自己的技术栈在一个团队里面很致命的。
|
30
zhouhuab 36 天前
及时止损,有啥好犹豫的吗
|
31
nnegier 36 天前
@iOCZS #20 我只深入过 Android 应用层,对于移动端 Android 来讲讲看法,我有点不同意,统一个性是磨灭成员进步以及略微有点氛围不好的微霸凌,移动端的设计模式和架构模式比较多,每个人写久了都有一点自己的想法,但是一句话,对于比较厉害的老 Android 来说,随便你怎么写都能看懂,改起来也就那样,顺着官方的 SDK API 入口爬就好了。
|
32
crysislinux 36 天前 via Android
我们以前招过一个,技术水平倒还行,但是给他分配个小任务他上来就动大刀子改很多文件加单元测试。结果改的文件比需要的多大几倍。你让他先着眼于眼下的任务吧人家还不干,举起单元测试的大旗你还不好说他。。
|
33
JNotEnoughW 36 天前
@nnegier
统一风格不代表你不能有个性代码,一个受屎山代码恶心几年的感想。 移动端的设计模式和架构模式比较多 ------ 一个项目中架构模式统一绝对比不统一好。 每个人写久了都有一点自己的想法 ------ 有想法麻烦把想法放在代码流程思路层面,不需要影响风格。 |
34
bojue 36 天前
@JNotEnoughW 工作是个协作的过程,国内 CRUD 层次的工作,开发可能占比只有 3-4 成,不遵守组内规范当个性后面很折磨人
|
35
iOCZS 36 天前
@nnegier 如果你要去维护别人的代码,一个人一个想法,你还要去猜测实现的思路,也不清楚这种写法是否经过充分测试和考验,这就麻烦了。最好大部分时候,写代码都不用太动脑子,就能写出比较稳定的代码,这对产品本身有利。少部分的时候,可能需要有所设计。业务层应该这样枯燥乏味,基础设施可以有点灵活和自主性。
|
36
lzy250 36 天前
分手!!!
|
37
xu455255849 36 天前
。。你们难道连试用期都没有吗?
可以直接和 hr 说不合适 让走人就行了 |
39
eedwinhei 36 天前
模仿应该是程序员的基本能力,可能是他比较有个性,不然大部分人一开始都会模仿其他人的风格吧,反正我是这样~
|
40
gggyyybbb OP @fangxisama 贴图就不贴了,简单描述下,if else 嵌套层级太深,抽象没有一点,各种判断各种括号。一个方法他能给你写到 100 行
|
41
nnegier 36 天前 via Android
@JNotEnoughW 我阐述下对于改代码,我只限定移动端 Android 应用层哈,其它领域我不太了解,移动端属于前端,前端来说一般有界面,加上移动端有操作系统 SDK API 作为切入口,所以改别人代码并不难。如果对方代码写的好,也许还能学到点东西,写的不和胃口,改完就忘,也没事
|
42
gggyyybbb OP @Ocean810975 谈过很多次,不改,非常固执,认为我说的是错的,就拿一个最简单的判空来说,有些判空条件在最前面就可以返回了,非要 if 嵌套着写,让人看得头疼
|
43
gggyyybbb OP 关于试用期的问题,前期确实没表现出来,态度也还不错,可能因为项目多,他改的都是一些小优化点,而且刚来项目组也是看文档看规范,这样就导致试用期让他过了。现在很尴尬,写的代码多了问题就暴露出来了,开始展现自己的“个性”了
|
44
gggyyybbb OP 看他是工作经历比较丰富,给定的一个月试用期
|
45
q474818917 36 天前
自己挑的人哪怕是屎也得吃下去,要不然别人会怎么看你
|
46
longmeier90 36 天前
让人事找他聊,要是还不改就请走。招过来就是让他听话、照做,不是让他来惹你生气呢。还能让他拿捏啦,转正照样可以辞退呀。
|
47
tomatocici2333 36 天前
@gggyyybbb #42 ....我看到这里忍不了了 换人吧,判断前置都不明白 没救了
|
48
chanChristin 36 天前 via iPhone
@gggyyybbb #18 不改就爬,你是组长好吧,你得为整个组负责,他自顾自拉屎,整个组都难受。
|
49
tomatocici2333 36 天前
@tomatocici2333 #47 连判断前置都不明白,只能说人平时压根就是直溜溜的写代码,也没什么思想去考虑,所以肯定是怎么方便怎么方便,不会考虑项目质量的。
|
51
leehomyhh 36 天前 1
你说的不会是我吧
|
53
etata 36 天前
公司有代码规范
|
55
xkhm 36 天前
竹门是竹门,木门是木门,你想留下来,那没门
|
56
nyxsonsleep 36 天前
|
57
xFrye 36 天前
@nnegier 这跟什么端没关系,自己的项目怎么折腾都可以,正在运行的项目请不要乱造轮子,也不要什么都不说的情况下引入一些差别非常大的实现方式。
拿 Android 来举例,一个刚来的员工不打招呼的情况下往工程里随意插扩展函数以及写了一堆难以理解的 dsl ,你受的了吗? |
58
hahaha121 36 天前 via Android
多次提醒讲不听,留着当祖宗,后面给他差屁股
|
59
Baymaxbowen 36 天前 via iPhone
早点沟通,别搞到后面恶心人
|
60
Wyearn 35 天前
找你们的 HRBP
|
61
sampeng 35 天前 via iPhone
你是找人来干活的,不是当祖宗供着的。不听劝的还留着给自己不痛快是活不够多?还是擦屁股很好玩?
|
62
wangsd 35 天前
项目用 mybatis ,他自己用 springdata 写,这项目后面咋维护,这不是给自己挖坑。
|
63
sampeng 35 天前 via iPhone
之前就有一哥们,我要 A 他说你不要,我觉得应该是 B 。我说这个项目是我起的,我是需求方,我就要 A ,他说,不,你就是要 B 。好,我退一步,那你先去做 C 。这个 A 我自己来。这个 C 有现成的业界成熟的中间件,是最核心的,直接用就好,我没工夫看文档,你来研究一下。这哥们一口气把我气死:不,这个东西我看太复杂了,文档都那么多,其实就是个 xxxx ,我给你做个 D 吧,我工作十多年了是有自己想法在里面的,我肯定给你做出来,你只要管结果交付就好了。
我说好,出会议室就去找 hr 了… |
64
sampeng 35 天前 via iPhone
手机回帖…按快了…
最后,这哥们花了两个月做了一个我需要但是和我需求不符的东西还哪哪都是 bug 不说,代码直接给我整不会了,1000 行一个的大类到处都是。维护性为 0 ,改这哥们的一个 bug 我要花一整天时间。 得,我不需要一个十年的经验丰富的刺头,只需要给一个从来没写过一行代码的但是听我的,接受我 review 代码的,同样花了两个月,代码可维护性可以这么说,谁来了都是看一眼就能接手改 bug 。 |
65
dxk611 35 天前 2
经历了,比我工作年限久,代码水平和应届生差不多,搞的我一度很抑郁,上班心情很差,理解不了,工作十年以上的人,怎么水平会那么差
|
66
BarackLee 35 天前
我是觉得,可以考虑试着沟通一下,看看能不能短时间将习惯修改过来。坐下来好好聊聊,让他意识到问题的严重性。
这年头找工作真的不容易,多帮助一个人也是好的。 |
67
EndlessMemory 35 天前
培训约谈啊,再不行就开掉啊
|
68
cabing 35 天前
正式的聊下,组织培训下。看能不能抢救下,不能抢救就是不合适团队啊。
最怕的就是半桶水。代码不就是:高效,健壮性,可维护性。 没有可维护性的代码是给团队埋坑。 |
70
nnegier 35 天前 via Android
@xFrye 我写的很详细了哈,你要去霸凌同事那是你的事,至于他手写的代码和轮子也占用不了多少体积,在现在大内存的环境下,再说前端 Android 那么简单,有什么好较劲的,另外,API 小子是更多的,能造一些好轮子的人是很少的
|
71
SanjinGG 35 天前 via Android 1
干了我一直想干的事哈哈,面试喜欢造火箭,那就进去真造火箭给你用,不然面试问干嘛
|
73
ivvei 34 天前
@JNotEnoughW #33 统一风格的屎山依然是屎山。大量屎山的形成就是因为后来人不思进取,看着原来写了个怎样的屎就在旁边拉一坨差不多的,一个项目被刚开始的那拨人的当时的水平决定了上限。而有点想法的新人,又被“维持统一风格”给束缚住,落入了要么一下全改要么完全不改的境地。
|
75
zxkxhnqwe123 34 天前
@crysislinux 我有时候去一家新公司看那些屎山是真的不好下手从哪加个逻辑
|
76
crysislinux 34 天前 via Android
@zxkxhnqwe123 所以起手就是重构?
|
77
stallman 34 天前
难绷。技术问题是可以规范化的,态度问题是无解的,人的认知问题怎么去改?态度问题不处理,最后只能边缘化处理,极大影响团队和个人
|
78
soul11201 34 天前
有几个疑问:
1. 这个项目由几个人一起维护,生命周期预计有多久 2. 团队日常工作流程、工程规范、项目目标、业务价值有没有清晰对传达给对方,比如说文档、或者入职培训,让其知道什么可以做什么不能做 3. 正常来说设计评审阶段应该能把这类问题扼杀掉 4. 不知道对方有没有决策考虑,跟你们不一样是不是要解决什么问题,还是确实代码质量有问题:就是无脑写的意大利面条代码,那能力应该就是不达标了。这时要看你们公司人才观是什么了,是培训、调岗,还是直接换人~ 5. 解除合同,按照劳动合同法解除就可以了,这应该不是特别难。莫非你有其他的考核指标? |
79
realpg 34 天前
趁着不到 1 年赶紧辞退
|
80
soul11201 34 天前
以前我有一个下属,水平确实不行,编码(拉屎)特别快,刚开始没看清楚他的特点,出过几次严重事故。好在当时环境对他有利,手上有一些探索性的项目,把他放在这种说没就没的项目上、把一些高能力人才放在重要的上面,效果还可以~
|
81
gggyyybbb OP 没想到这个贴的回复这么多,综合了大家的意见,跟大家说下后续的处理计划
1 、把问题统一整理后,找个时间认真和他聊聊他的想法 2 、如果他还是固执己见,不遵循团队规范,那么我会跟我的领导反馈上述问题,同时也会要向领导传达辞退的想法 3 、加强 code review ,不过这个可能忙起来时间真不够用 4 、规范项目文档、编程规范,同时加强面试考核中工程能力的筛查 |
82
zxkxhnqwe123 34 天前
@crysislinux #76 那肯定先汇报咯,领导说干就干,领导说接着拉那就接着拉
|
83
twig 33 天前
雾草,怎么感觉像在说我……
|