1
hyl24 2019-09-30 11:25:54 +08:00
发你一份简历
|
2
misaka19000 2019-09-30 11:26:20 +08:00
可惜不在上海,也不在杭州
|
3
o562dsRcFqYl375i 2019-09-30 11:32:54 +08:00 1
关于第二点,感觉举一个实际业务或者近似的例子来讨论,会比问不死神兔的繁衍生息公式有意义。其他的点都是挺认同的。
|
4
yoshiyuki 2019-09-30 11:36:16 +08:00
第一段话把不好招聘的原因总结完了
|
5
knowckx 2019-09-30 11:39:04 +08:00
最近刚刚理解 sync.once 的源码为啥要那样实现,只是因为一个相仿的业务需求
其实如果不是工作需要,很多人不会去纠技术的实现原理,就好像楼主说的不知道 WaitGroup 的开发者 |
6
mornlight OP @yoshiyuki #4 我是很想讨论一下,中小公司的出路在哪里呢?已经开出和一线公司同等水平的薪水,还有什么可以努力的地方?
|
7
mornlight OP @knowckx #5 WaitGroup 那个没要求理解原理,我就问了一下使用方式,说没用过还是蛮难受的。WaitGroup 的适用场景当然是可以用其他办法做出来的,但 wg 最简单最直接不是?
|
8
markliu2013 2019-09-30 11:59:28 +08:00
到面,能一次写对一个最基础的、无额外条件限制的、斐波那契数列生成函数的人,不超过 50%.
这个对于一个没有进行过任何的算法训练的人,要一次手写正确还是有困难的。50%很正常,因为确实大部分都没有进行算法训练。 招人可以根据岗位的实际情况,从学习能力,思考能力,解决问题的能力等方面来思考。 |
9
matrix1986 2019-09-30 12:00:26 +08:00
RUST 后台在此
|
10
enchilada2020 2019-09-30 12:08:49 +08:00 via Android 4
退而求其次 招能力一般但踏实肯学的 踏实代表不浮躁 较稳定 不至于学一半以为自己牛逼了就跳槽跑了 肯学当然是进步的前提 剩下的就看你招人有没有诚意了 招来一个新手 又不想花成本培养
都想着拿来就能用 重心都放在应用上了 基础肯定相对薄弱 加上学校里的那点东西 再怎么折腾也就那么回事了 肯定够不上实际需求 能手撕各种“基本算法”的 人家在为达标拼命刷题苦下功夫时 早就在心里把所谓的“中小公司”排除在外了 薪资是一方面 还有更重要的问题 中小公司会不会有朝一日成为大公司?入职后能否有机会跟公司一起成长?还是说没熬过三年公司就黄了… |
11
qq976739120 2019-09-30 12:08:49 +08:00 14
面试过你们,一个年轻的面试小哥,全程一共三道算法题吧,两道树相关,一道列表,还问了个 redis 的一致性哈西,我觉得原理我都说的很明白了,还说了我们实际生产的使用,包括到 redis-cluster 的使用和一些坑,结果小哥直接来了句,"我看你也只是会用而已",场面直接尬住,然后我就走了,真的是太尬了
|
12
cabing 2019-09-30 12:16:55 +08:00
我司招聘都不敢问算法题。。
|
13
mornlight OP @enchilada2020 #10 目前我这里愿意招踏实肯学的新手,但不同人对「踏实肯学」的理解会有区别。公司愿景和长期发展的话,也不敢说我司很牛逼,但比大多数小创业公司还是好很多的,不至于没多久黄了。
我自己愿意花精力和同事们讲做工程应该怎么做更好,不过愿意听愿意付出额外时间成长的人永远是少数。「又不是不能用」和「给多少钱就干多少活」的心态还是主流。双方都觉得太难了。 |
15
woahishui 2019-09-30 12:37:55 +08:00 via Android
会写什么斐波那契数列和不会的有很大差别吗,与其考这些东西,为什么不跟高考学一学,因地制宜,把工作中自己认为需要用斐波那契数列算法的场景,自己写个场景应用呢。一方面可以了解公司,另一方面也可以有更好的理解
|
16
cp333 2019-09-30 12:40:45 +08:00 via iPhone
你们面试没那么简单吧 基本都问到底层了 代码题是多叉树的相关操作
|
17
woahishui 2019-09-30 12:51:42 +08:00 via Android
应聘者是否适合公司,与其死记硬背,不如灵活应用。如果公司没有这种场景,可能你们也不需要这样的。
|
18
yoshiyuki 2019-09-30 13:07:20 +08:00
@mornlight 最近遇到一个创业公司机会,刺激我思考了很多,假如我要招聘组建团队,我应该怎么做。
1.用一种宽容开放的心态去对待团队里的打工仔精神跟合伙人精神,不要去要求所有团队成员 allin 的心态,二八法则此处适用 2.强调我们对个人提升发展的支持,只要你愿意展露出你的主动性,团队就会把成长的机会安排给你,希望每一个有主动性的成员从团队离开时,P 级都是+1 的 不过机会黄了,现在还是继续学习 go 等机会 |
19
Mistwave 2019-09-30 13:16:20 +08:00 via iPhone 5
我真是惊了
面试让写个 fibonacci 居然还有人觉得这是在难为面试者?????? |
20
Rwing 2019-09-30 13:16:58 +08:00
考虑考虑 c# 吧,哈哈
|
21
mornlight OP @yoshiyuki #18 谢谢回复。
的确是没法要求所有人都能主动承担更多责任,我的要求是百分制能做到 70 分就够了。真诚地希望我的同事们每个项目每个年度过去了都能有成长,这代表我们做的事情、提供的环境能给大家带来正向价值,想尝试新的技术做新的领域,只要控制好风险我们都是支持的。 招人除了技术,也会有气场合不合的问题。把分给自己的任务搞定、与同事和和气气地说话朝着一个目标沟通、遇到问题自己尽力解决搞不定时跳出来找人帮忙,这三条每个都很简单,但同时具备的人并不多。想招个能合作愉快的同事并不容易,大家都是同事,有的人却需要其他人都去照顾他的个人情绪,蛮心累的。 |
22
douya0808 2019-09-30 14:02:30 +08:00
我去了很容易交白卷啊,当然我已经不是第一次交白卷了
|
23
poplar50 2019-09-30 14:11:35 +08:00 via Android 3
用 go 一两年还不知道 waitgroup 八成是假经验
|
24
1219178163 2019-09-30 14:59:52 +08:00
后端真是高大上,面试都是手撕算法吗?我前端面试都是问实现,问算法的公司转身就走哎
|
25
katsusan 2019-09-30 15:20:00 +08:00
lz 你们公司在 github 上有开源项目吗,想观摩一下 Go 的代码实现风格
|
27
Erroad 2019-09-30 15:38:55 +08:00
如果只是能阐述斐波那契是怎么回事的循环或者递归代码,还是比较好写的。另外写 go 一年以上不了解 WaitGroup,是把 go 当 php 写的吗
|
28
tt67wq 2019-09-30 15:45:51 +08:00
用了两年 go,真没用过 waitgroup,可能我是菜鸡。
我一直以为基本功是操作系统,算法,计算机网络这些的。 |
29
cmonkey 2019-09-30 15:58:28 +08:00
可惜只会 Java, 楼下的更厉害,请楼下给出更好的意见
|
30
mornlight OP @tt67wq #28 emmm...那遇到需要等待多个 goroutine 都执行结束的场景,你是怎么处理的呢?
|
31
qq976739120 2019-09-30 16:39:38 +08:00
@mornlight channel 和 context 都是可以的嘛...context 的确麻烦了点,推荐 channel,比 waitgroup 灵活,比 context 简单
|
32
GavinAlison 2019-09-30 17:00:54 +08:00
fibonacci 的编写,要是问了尾递归编写,面试者估计要哭了。话说你知道尾递归吗?
|
33
Leiothrix 2019-09-30 17:18:42 +08:00
@1219178163 1+1 的问题也叫考算法?
|
34
Leiothrix 2019-09-30 17:24:33 +08:00
换我来回答这个兔子问题,除了功能实现还会考虑几个细节,入参的限制,整型数据表达上限,递归有可能导致的 StackOverFlow,都需要异常处理。
|
35
jhdxr 2019-09-30 17:32:49 +08:00
@mornlight 中小公司和一线公司开出相同水平的薪资是没有竞争力的,除非你能在其他方面有巨大加分项。换做是你自己,两家条件差不多的公司,工资也差不多,一个是大家都知道的写在简历上或许可以作为加分项的大公司,一个是除非这个细分方向否则没人听过(甚至更惨一点?)但写在简历上不会被作为扣分项的功效公司,你选哪个?
|
37
warcraft1236 2019-09-30 17:40:55 +08:00
为什么中小公司觉得薪资开到跟大公司一样,求职者就会舍弃大公司而选择中小公司?我之前小公司开的比有名气的公司多了 5K,我还是选择了名气
|
38
Leiothrix 2019-09-30 17:42:07 +08:00
看了 JD 感觉非常想去了,惆怅。
|
39
catror 2019-09-30 17:47:11 +08:00 2
提个建议。面试时,最好的问题是抛出一个场景,询问解决思路;而不是抛出一个解决方案,然后问别人知不知道这个方案。知不知道 WaitGroup 不重要,重要的是面对多并发需要同步的场景时,候选人会怎么去解决。
|
40
zander1024 2019-09-30 17:49:57 +08:00
很简单..达到要求的基本都能去大公司,人家肯定去大的稳, 适当降低要求或者超过大公司的待遇就好了。
|
41
mornlight OP @jhdxr #35 明白你意思。
如果算上大公司发的股票,能有多少中小公司的年收入可以显著比 BAT 或者头条、拼多多高呢? 只能说先尽量让薪水差不多,再争取些其他优势了,比如:可以来作为 leader 带一个小团队或者完整负责一个项目;没有那么多的加班没有 996。否则的话,这个逻辑就成了要么非常有钱,要么只能捡漏。 |
42
mornlight OP @catror #39 涉及到面试流程我没有讲更多信息。候选人如果说不知道 WaitGroup,我紧跟着就会问,要等待多个并发 goroutine 都执行完的业务场景,你是怎么实现的。我得到的回答往往是「没考虑过」,有部分人会说用 channel。我真的很让步了。
|
43
Leigg 2019-09-30 21:33:58 +08:00 via Android
没广州
|
44
sagaxu 2019-09-30 22:08:49 +08:00 via Android
用过 WaitGroup 的我,也忘了有这个东西了。但是我知道一般的语言 sdk 应该提供哪些同步原语,如果没有现成的,应该用哪些更基础的原语去实现它。
问 wg,还不如设计一个小的场景,看看用什么方式解决,也许对方思路很牛逼,用不需要同步的方式解决了 |
45
janus77 2019-09-30 22:12:54 +08:00 via iPhone
我第一家公司最终 cto 面的就是斐波那契😂这题目没啥问题,只能说你遇到的人太浮躁了
|
46
1178615156 2019-09-30 22:20:51 +08:00 via Android
🤣我会写也,有深圳岗位么
|
47
zhazi 2019-09-30 22:53:58 +08:00 via Android 4
先说说你们公司用到斐波那契的场景,算法是一个很微观很冷门的技术点,如果你找不到用到斐波那契的业务,那么你为什么问?后端方向很广,算法数据结构都很不实用,没有之一。如果用到算法与数据结构了,有经验的工程师现场学有个半小时一小时也就学会了,直接拿来套业务就可以了,如果你觉得你们业务里需要大量算法应该找一个算法工程师。拿算法来衡量一个程序员是不是眼光太狭隘了? java 系列非常多的轮子值得学习,那我问一句每出一个轮子学一遍你拿他们当人看吗?
看过源码对贵公司业务有帮助吗? 你让一个人去学习一个生态圈的几百上千人维护的源代码合适吗? 你知道 spring 多少个子项目吗? 学习是应该学习你说的这些东西吗? 其实我理解你,干几年软件开发,写熟练了 curd 不知道学习什么了,然后一头扎进 jvm, 算法,数据结构了,熬几年以大牛姿态来指点江山。我想问问你看过哪个源码?能随便讲讲你认为好的,值得学习的,好在哪里吗? |
48
mornlight OP @1178615156 #46 深圳真的有,招 Java 和推荐算法
|
49
mornlight OP @zhazi #47 一个不成熟的小建议:如果发言的目的是讨论问题,尽可能少用反问句。
在 14 楼我讲过了,斐波那契不是算法题,只需要写个递归或者 for 循环。业务代码里有递归或 for 循环应该很常见吧(都还没有聊到尾递归的问题)。而且面试很少真的直接拿业务问题来怼啊,往往是抽象出其中的核心思路,造一个简单场景来聊。 我未曾提过源码的事情,「稍微聊一下工作原理」指的是:你简历里说搞过微服务和 K8s 对吧?不同服务之间通信肯定不是写死 IP 在配置里,怎么做到服务之间互相访问的呢?私有协议或 DNS 对吧,那 DNS 的基本流程是怎样的? 我不认为这是什么超纲的或者说和业务无关的面试问题。 没有冒犯你的意思,但我觉得你并没有试图理解我。 |
50
galaxyyao 2019-09-30 23:36:51 +08:00 via Android
你找到了两个很容易问出基础能力的面试题:写斐波那契和简单问几句原理,帮你更容易筛出高质量的候选人,不应该开心才对。。。小公司就不要和大公司拼薪酬和稳定了,可以靠其他的来吸引候选人,比如团队氛围,能挑大梁而不是当螺丝钉,业务有意思等等
|
51
mornlight OP @galaxyyao #50 嗯,是的。面试是互相的,不管最后能不能成为同事,我尽可能传递「希望找到认真做事的人一起共事」的意图,以及「团队里是一群负责任好合作的人」的氛围。
某种程度上说,我作为招聘方更弱势一些,因为我从不骗候选人,但候选人常常对我不够真诚。 |
52
just4id 2019-09-30 23:55:50 +08:00 via iPhone
开出跟大公司一样的薪资,然后可以在家办公,你们应该能赢
|
53
galaxyyao 2019-10-01 00:06:51 +08:00 via Android
@mornlight 面多了之后就可以放平心态了。。。都是个缘分。不能最终成为同事表示缘分未到。面试官保持坦诚,至少可以让候选人进来后不至于因为心理落差而试用期走人。
有一次特殊情况需要一人一天面试四十来个外包开发,就是主要靠一道递归(阶乘)来筛选的。 另外问 DNS 原理一般只能作为 bonus 题。大多初级开发不涉及基础架构知识。他们开发环境涉及的微服务互调就只是通过 ip。。。不太会参与到 k8s 运维配 ingress,也不会涉及到配 dns 和反向代理。面试过一批外包前端,基本都没人能回答出自己写的代码打包完后部署到什么 web 服务器。 |
54
vanillaxxx 2019-10-01 01:38:55 +08:00
我觉得吧我更倾向于思路考察。抛出一个具体的问题,看他的思路是什么样,能给出来几种方案,每种方案都有哪些优势和劣势。程序员应当具备解决问题的能力和学习能力啦。像那个斐波那契额数列,如果他之前工作中没有遇到过,他可能并不知道那是什么,当你告诉他这是什么之后,或许他思路就有了。
|
55
sunorg 2019-10-01 02:04:09 +08:00 via Android
小公司相关,几年下来,我这面的要求已经降落到:
基础扎实,有足够的学习能力,肯用心即可的程度 |
56
Ehco1996 2019-10-01 08:11:01 +08:00
|
57
1178615156 2019-10-01 11:36:47 +08:00 via Android
( ̄ー ̄)拉勾投了,不合适也
|
58
tonytonychopper 2019-10-01 17:03:45 +08:00 via Android
其实出这种水题就是为了筛选掉那些滥竽充数的程序员,评论有些人就不要抬杠了
|
60
aguesuka 2019-10-01 19:07:04 +08:00 via Android
""斐波那契数列生成函数"",我上一个帖子刚好是这个
|
61
ylcc 2019-10-02 01:21:48 +08:00
楼主提的要求已经很低了,基础的算法题是可以准备的,如果一点都答不出,那么能力和态度肯定有一样是不合格的,waitgroup 不知道没关系,但是楼主也说了会继续问等待多个 goroutine 执行完怎么实现,这应该是使用 go 语言的非常常见的场景吧。我觉得不要自黑的码农码农说多了,就真的把这一行的门槛降得太低吧,还是多尊重一下这个职业--软件工程师。
|
63
outoftimeerror 2019-10-02 19:42:30 +08:00
大部分认同楼主的观点,前段时间收了几十份简历,大部分除了 spring hibernate mybatis 那一套技术栈就没别的东西了。
其实写 java 的不管是横向扩展,比如 jvm 上其它几门语言 scala kolin,或者纵向深入,学习一下 jvm,网络库 netty,都是简历上的亮点。 |
64
HiShan 2019-10-02 21:12:36 +08:00
@outoftimeerror 因为大部分的 JD 上都要求 spring hibernate mybatis 那一套技术栈啊。。。。。
|
65
outoftimeerror 2019-10-02 22:32:09 +08:00
@HiShan 关键是有些人工作 3-5 年了,简历上除了 ssh ssm 再加上 mysql redis 就没别的了。计算机基础稍微依深入就答不上来,算法只能写 easy,medium 完全没思路,工资要的还不低。
|
66
YIYILIUSHANG 2019-10-03 01:10:27 +08:00 via Android
看了大家的发言,我怎么觉得很多公司社招的要求比校招的要求低很多呢,校招很多时候问的比这些深多了,回答不出来还偶尔被一些面试官嘲讽
|
67
djFFFFF 2019-10-03 10:16:11 +08:00
这年头求斐波那契数列都能叫算法题了吗……算法题难道不应该是"如何用矩阵乘法快速算出斐波那契数列的第 123456789012345678901234567890123 项的值对 10000 取余的结果"这种题吗
|
68
daryl 2019-10-03 14:33:41 +08:00
Go 想转 Java 行么= =
|
71
abmin521 2019-10-03 18:40:03 +08:00
歪楼 此贴已设为登陆可见
|
72
Lpl 2019-10-03 19:41:15 +08:00 via iPhone
蛮匹配,写了两年 Java,后来 18 年就写 Go 了,现在做 k8s 相关开发。不懂 wg goroutine channel mutex 之类的 Go 开发挺少见的
|
73
msaionyc 2019-10-03 23:11:42 +08:00 via Android
我的妈,这行业是进来了一些什么人,无限制最基本的斐波那契写不出来都能找借口了,计算机相关专业出来的写不出来这个这不是废物吗,转行进来的指望学个框架就上岗?只能说不论是哪种人,都太水了
|
74
q2683252 2019-10-04 10:48:54 +08:00
斐波那契课本不是有么?给出最基本的公式就好了。不能实现肯定是干不了这碗饭的
|
75
howdareyou 2019-10-04 16:44:58 +08:00
写了一年 go,会用 sync 里的东西,但源码确实没这么接触过...
|
76
SmartKeyerror 2019-10-04 17:27:56 +08:00
有时候可以通过询问候选人对语言特性的掌握程度来判断他为什么学这门语言,是简单的跟热度还是经过调研后做出的决定,所以 wg 都不知道的 go 工程师,水货无疑了。
|
77
beidounanxizi 2019-10-04 20:11:44 +08:00 1
这么执着于 wg once context
我只想说告辞 不会用 就证明他学不会吗? |
78
mornlight OP @beidounanxizi #77 按你这个逻辑,零基础没有写过 Hello World 的人也可以来面试开发岗。
|
79
EugeneYWang 2019-10-04 23:37:04 +08:00
你们这帮执着于 Fibonacci 的家伙是不知道 CS 专业外的学习路线。。。。
非专业人士(如众多文科学院,不具体列举招黑了),学了一门编程语言,再学个框架的 Tutorial,学个 API 的具体实现或者本专业的分析脚本,能莽出点什么就已经很开心很有成就感了好吗。你们视作珍宝的算法和数据结构(也的确是珍宝没错啦)从头到尾就没被那些学院的培训重点教育过(本人的本科学院(一本学校)甚至让我们上数据结构,再上个什么 C 的语言课,太扯淡了,上数据结构的时候都看不懂那些代码例子) |
80
EugeneYWang 2019-10-04 23:38:49 +08:00
说来惭愧,我也是最近在国外要转 CS 大公司才开始爆班学算法,手撕各种基本算法
|
81
ytmsdy 2019-10-05 08:31:16 +08:00 via iPhone
连什么是斐波那契数列,不知道着么实现都不知道,还好意思说是程序员?!
程序=算法+数据结构 |
82
rzq3147 2019-10-05 08:52:24 +08:00 via Android
事实上,码农大军中一大批是转专业培训出来的,不懂算法的多去了。还有 ee 一部分倒是学过一些,但是以 C 为主。没经过工程化训练写出来的程序就是雷。
|
83
334862132 2019-10-05 14:18:10 +08:00
斐波那契给我编辑器调试几次我能写出来,上来拿笔手撕很容易出 bug....
|
84
beidounanxizi 2019-10-05 16:01:14 +08:00
@mornlight 我的逻辑 你读懂了 再来 judge 我
|
85
beidounanxizi 2019-10-05 16:02:47 +08:00
像一个小孩子 拿到一个 全校都没有的玩具 然后跟大家炫耀 你看我的玩具 多好看 多牛 你想玩吗 就不给你玩呢 哈哈哈 ?
|
86
mornlight OP @beidounanxizi 那你很棒棒哦
|
87
xiaoshenke 2019-10-06 13:11:46 +08:00 via Android
我也面过贵司,让我手撕一颗排序树。然后问了一堆原理题,还是给我挂了,大概是不缺人?。我想下次发帖嘲讽面试者的时候,是不是先反思下自己呢?
|
88
mornlight OP @xiaoshenke #87 面试没通过有很多种可能,不一定是候选人能力不够。
很明显我这个帖子没有嘲讽的意思。 |
89
aguesuka 2019-10-12 15:30:12 +08:00 via Android
手写二叉树字符串非递归 paser,写了一个只要循环一次的。结果被教了一个循环两次的,说我不符合分治思想。年龄比我大这么多,龙书翻的次数肯定比我多,还能怎么办?只能说哦对我没想到。
|
90
jessun1990 2019-10-12 22:36:41 +08:00 via Android
我恰好正在面试 go 岗位。
B 站周三面试… 直播,完全没做过的业务。估计大概率会通不过。 只能抱着见世面的想法了。 |
91
unforgiven 2019-10-13 00:08:51 +08:00
@mornlight Java 没有尾递归优化,你这还好吧,我还遇见过让我给算法的数学证明的,甚至还问我算法的名字
|
92
brainfxxk 2019-10-13 00:13:02 +08:00
有些公司可能是自以为学 google 面了些算法题 然后面试官自己去看看 kickstart/codejam 连题目问啥都抽象不出来
|
93
fhsan 2019-10-13 09:57:41 +08:00
那是你不知道 斐波那契数列 的 N 中面试题变换,比如你说递归,问你内存堆栈怎么处理的?
|
94
sinksmell 2019-10-15 14:17:27 +08:00
1-2 年的 go 开发,答不上来 WaitGroup,斐波那契数列,估计水平都不如应届生了吧。。。
|