今年夏季本科应届生,今天上午面试的 didi labs,是滴滴在美国的子公司,在招手机应用工程师,主要用 flutter 。本来还挺有信心的,因为自己有很多 flutter 写的 app,都是开源发布了的,而且也写过 swift,现在在一个初创公司写 flutter
然后面试时被问到进程跟线程的区别,上课不听讲的我一脸懵逼。 算法倒是挺简单的,dfs 遍历,但是我脑子锈了忘了怎么写。。。
然后不到半个小时收到拒信,然后被女票拽着刷题了。。
1
Zhancha 2021-05-05 12:21:38 +08:00 14
进程跟线程都是很基础的内容,可能题主高屋建瓴习惯了,说句不好听的,高屋建瓴比稳扎稳打简单太多了,flutter,uniapp 等框架真就新手一个星期可以给你整个 APP 出来。
|
2
hello2060 2021-05-05 12:33:22 +08:00 via iPhone
这个不知道不应该啊楼主
|
3
ZRS 2021-05-05 12:33:55 +08:00 via iPhone 8
…你这就没准备
|
4
Cbdy 2021-05-05 12:44:40 +08:00 via Android
进程和线程的区别还是常识吧
|
5
HeapOverflow OP 比较佛系。。因为还要边读研边工作,现在初创公司可以全程 remote,比较方便一点
|
6
HeapOverflow OP @ZRS 比较佛系。。因为还要边读研边工作,现在初创公司可以全程 remote,比较方便一点
|
7
belin520 2021-05-05 12:48:31 +08:00 via iPhone
表示老狗换工作都要背题 2 周加刷算答题,你这个应届生有点佛系了
不过工作是双向的,跟随自己真心吧 |
8
coderluan 2021-05-05 13:05:18 +08:00 12
真佛系何必发这个贴.
|
9
HeapOverflow OP @coderluan 让大家开心一下
|
10
fyxerma 2021-05-05 13:13:36 +08:00
感觉楼主工程能力还是有的
补基础吧 这个不知道是不应该的 |
11
maplerecall 2021-05-05 13:15:38 +08:00 via Android 1
进程线程的确过于基础,即使不刷题不做任何复习都不应当答不上来。面试第一印象是很重要的,基础问题出错容易造成非常糟糕的影响。
|
12
Suddoo 2021-05-05 13:29:36 +08:00 via iPhone
进程和线程,这个都烂大街的八股文了
|
13
learningman 2021-05-05 13:32:36 +08:00 via Android 1
dfs 不会。。。。这基本上可以说是不会算法了
|
14
mikulch 2021-05-05 13:42:04 +08:00
话说美国那边是不是创业氛围也挺浓厚的啊。
|
15
HeapOverflow OP @learningman 可以这么说吧,没耍过题...
|
16
HeapOverflow OP @mikulch 感觉是的
|
17
cctrv 2021-05-05 14:00:30 +08:00 via iPhone
面試造火箭,入職造輪子。
我覺得目前的面試系統依然都是教育考試那套系統,無法反應被面試者的實際工作能力。 |
18
weimo383 2021-05-05 14:01:40 +08:00 via Android
为什么你可以边读研边上班?美国也太好了吧,工资高还不卷还时间自由
|
19
HeapOverflow OP @weimo383 因为是 online 课
|
20
HeapOverflow OP @cctrv 不 只是我太菜了
|
21
Mirage09 2021-05-05 14:41:53 +08:00 via iPhone
ng 哪有不刷题找工作的…不过你本科的,实在不行 gap 一年申个 ms 吧
|
22
Mirage09 2021-05-05 14:42:51 +08:00 via iPhone
等等你打算边读研边工作么…那就刷题去吧
|
23
HeapOverflow OP @Mirage09 我以为大学期间悄悄写 app,就能惊艳面试官
|
24
forgetlight 2021-05-05 14:55:16 +08:00
@HeapOverflow 不行的..我这藤校 cs phd 都要稍微刷点题才敢去要 summer intern..
|
25
HeapOverflow OP @forgetlight 了解🥲
|
26
Jooooooooo 2021-05-05 15:00:19 +08:00
这些最基本的东西不会, 给人的印象要么不是科班出身, 要么上学成绩差.
肯定都是不行的. |
27
cassyfar 2021-05-05 15:43:05 +08:00
这是送分题,不应该啊。你来面我们,估计得 DP 起手了。
|
28
lovestuuuuu 2021-05-05 15:45:23 +08:00
@cctrv 但是再实在的实际工作能力,也不能连进程和线程的区别都不知道吧,只能说,楼主这个不知道实在不应该,跟面试系统关系不大
|
29
shutongxinq 2021-05-05 16:22:30 +08:00 via iPhone
进程和线程不知道区别…这个类似于号称学数学的人不知道有理数和实数谁多…
|
30
gaobing 2021-05-05 16:43:16 +08:00 via Android 1
看来也卷起来了,常备八股文吧。
|
31
dadababa 2021-05-05 16:46:50 +08:00 2
行了,知道你有女票了🙄
|
32
FloatLost 2021-05-05 16:55:09 +08:00
有些基础还是蛮有用的,虽然面试问的一些基础很多背背就行,也没啥实际作用,但是走个形式也不能太搞的场面太难看了啊。
|
33
deplives 2021-05-05 16:55:59 +08:00
连线程和进程都不知道,我觉得不只是上课没好好听
|
34
cctrv 2021-05-05 16:59:35 +08:00 via iPhone
主要在這些高級框架的狀態下。
進程和線程基本上無需考慮,也不見得讓你控制。知道個大概概念就足夠了。 flutter 就是一個單純的 UI 框架。 面試官有些問題根本不是按 flutter 來問。 而且,就算開發者特別清楚 flutter 的線程運行機制也基本無能為力。 https://juejin.cn/post/6844903831478730759 這篇文章說得挺清楚的。 按照 flutter 設計的規則編寫程式就可以正常運行了,除非你在更新 flutter 的源代碼才可以獲得更多的調整。 所以還是「面試造火箭,入職造輪子」。我就不相信這家公司會入職後讓員工更新 flutter 源代碼。 |
35
TypeError 2021-05-05 17:14:52 +08:00
校招这问题还算简单啊,挺基础的
社招要更难一些了 |
36
lovestuuuuu 2021-05-05 17:19:50 +08:00
@cctrv 我是觉得进程和线程的区别根本不属于造火箭的范畴啊,楼上说的很有道理啊,约等于学数学的不知道有理数和实数的区别
|
37
cctrv 2021-05-05 17:27:05 +08:00 via iPhone 1
說真,
我真不知道 有理数和实数的区别。 我自己 10 以上的加減乘除,都運算很慢。 但是不妨礙我推導公式就好了。 使用知道或者不知道什麼來評價現代開發者根本毫無意義。 現在有什麼知識不是 Google 一下就可獲得? 那些公司那麼喜歡使用「知道什麼」來面試的話,那麼請員工在入職以後不允許使用 Google 就好了。 我認為現代開發者都是強調即時學習能力,我們大腦已存在的知識根本無法和這個世界時刻變化的知識有什麼可比性。 |
39
cominghome 2021-05-05 17:38:21 +08:00 1
@cctrv 说到底只是招聘成本罢了。你说你工程能力强,怎么在 30 分钟面试里证明?
“面试造火箭,入职拧螺丝”现象确实很多,但万一哪天公司真决定造火箭怎么办?(别笑,我们组两个写 java web 的现在被安排做大数据去了) |
40
lcwylxx921 2021-05-05 17:55:32 +08:00 3
@cctrv 你的观点只有一部分是对的,当我们遇到一些所谓「知道什么」的问题时,我们当然可以 Google 去获得这些我们不知道的知识。但问题是,在工作中遇到的问题往往并不直接是这种「知道什么」的问题,但「知道什么」却恰恰是解决问题的前提条件。正如在工作中很难直接遇到一个问进程与线程区别的问题,却常常会遇到,这里的代码是用多进程还是多线程比较好?如果不知道进程与线程的区别,你要怎么去 Google 呢?哪怕你 Google 了,你获取信息的效率有那些已经了解进程与线程区别的程序员快吗?
|
41
Rheinmetal 2021-05-05 17:57:52 +08:00
@cctrv
给一个模拟业务场景 当场学习当场写代码 存在不同语言和库的问题 面试工作量就大了 而且不够标准化 容易放水舞弊 小厂可以用 大厂不太好使 还是得有应试环节 社会上什么人都有 不可能完全不考察存量 把机会开放给所有人 卷的太厉害有问题 不过进程 线程 DFS 都不知道实在是有点说不过去 大厂还是仗着僧多粥少 用基础知识去掉一部分人减少面试工作量 招一堆有计算机基础知识的 大概率优于不懂的人 谷歌宁愿让 phd 写前端 也不愿意放走给别的厂 要是急缺人哪管这么多 能干就来吧 参考之前一个帖子 杭州 9k java 出模拟业务场景的面试题根本没有人投简历 改成网上八股文还是有很多直接原封不动抄袭的人 |
42
cctrv 2021-05-05 18:31:39 +08:00 via iPhone
首先,
flutter 開發者無能力新建進程。 flutter 開發者只能妥善管理線程(還是基於 isolate )。 然後,面試招聘的開發者如果不是在組裡面做技術總監 / VP / 組長之類的。他分配到的工作量就是一個 app 的數個頁面。 那麼,在這種工作條件下,知道進程和線程對工作質量的印象有多大呢? |
43
cctrv 2021-05-05 18:35:43 +08:00 via iPhone
可是我實際看到的現實是,
很多人透過刷題等方法,假裝自己具備基礎能力。 然後在實際工作場景下,使用複製粘貼大法創造了 n 多的頁面,缺乏封裝,也不具備可維護。 |
44
czfy 2021-05-05 18:39:18 +08:00
"上课不听讲的我一脸懵逼"
那只能怪你不听讲 |
45
cctrv 2021-05-05 18:51:05 +08:00 via iPhone 1
我認為面試 flutter 開發者。
從 flutter 抽幾個 issues 去問開發者,比問開發者,進城和線程的差別是什麼? 更有價值。 你試試回答一下 wire up shader,如何改善第一次啟動時候的動畫卡頓問題。 @hello2060 這些才是 flutter 開發者真實面臨的問題。 |
46
iyaozhen 2021-05-05 18:58:36 +08:00
看来面试还得问进程和线程的区别 (逃
一般我还会顺着问下协程,要是再能说清楚,那面试基调就定下来了 其实吧问这个主要是想了解下有没有科班背景(注意不一定是要计算机专业),这样大家平常好交流 算法题也都不是那么难的,但不刷题还是对面试不重视呀(特别是应届生,校招更看重基础,项目只是加分项 |
47
DeutschXP 2021-05-05 19:02:45 +08:00 via iPhone
@cctrv 你可能没有搞明白一个问题,所以你总在强调什么 Flutter 开发不会接触到这些基本知识。
但是,正常公司不是找临时工,基本上所有职位,譬如楼主写的这个,指的是如果没有例外,进入公司第一步事情是做 Flutter 开发。HR 或者主管谁都不能保证,招你进来,一直到退休,四五十年都是开发 Flutter,过五年 Flutter 还在不在都不一定。 所以,你有些本末倒置了,更多公司是想招一个基础扎实的程序员,而不是招一个只会 Flutter 的代码流水线工人。 尤其在这个行业久了的人都知道,你基础扎实,不会 Flutter,进来从头学习,有好的学习环境,和同事一起交流,可能四个月就成高手了。明天如果 Flutter 淘汰了,出来 Glutter,Hlutter……整个团队齐心协力也可能只要四个月就能完成切换。 但如果基础不扎实,只是会 Flutter,那谁知道你是不是本科四年都没有在好好学习,只不过把时间都用在这上面了?那么你现在展现的 Flutter 开发能力,可能并不是四个月的努力,而是需要一年或者更长。那找了你进来结果要切换技术栈了,怎么着,专门给你培训四年,让你把本科的课程再复习一遍么?团队其他人放假四年,等着你先补课? |
49
cctrv 2021-05-05 19:10:57 +08:00 via iPhone 1
@DeutschXP 你如何定義基礎紮實呢?
線程和進城的區別絕對不是一個好的問題。 要知道它就是幾分鐘的 Goggle 時間。 可是我一直強調是「即時學習能力」 那麼你提出的場景,切換語言是否也和「即時學習能力」更符合呢? 好的學習能力可以得到基礎知識。 然後問到沒有關心的問題,只是證明了被面試者沒有關心這個領域,不代表它不懂這個領域。 然後,目前的面試機制為何可以用刷題來解決? 刷題可以改善學習能力嗎? 所以我還是不認同當前的面試機制。 |
50
cctrv 2021-05-05 19:13:46 +08:00 via iPhone 2
|
51
emSaVya 2021-05-05 19:23:37 +08:00
感觉在 nga 看自曝贴 15 层 自由镇打 2000 喷队友那种
|
52
hello2060 2021-05-05 19:27:22 +08:00
@cctrv
1. 面試官應該設計一些題目,去考驗面試者的學習能力。 2. 我認為面試 flutter 開發者。 從 flutter 抽幾個 issues 去問開發者,比問開發者,進城和線程的差別是什麼? 更有價值。 你試試回答一下 wire up shader,如何改善第一次啟動時候的動畫卡頓問題。 1 和 2 是冲突的吧,问 2 的时候怎么体现学习能力呢? |
53
Rheinmetal 2021-05-05 19:39:54 +08:00
@cctrv
考察学习能力的面试不好设计 不依赖已有知识体现基础就更难了 脑筋急转弯之类的智力题也有套路 任何一个评价标准 长时间使用之后都会被人总结出套路 变成八股文 还不如来点不容易过时的专业基础硬货 进程线程可以作为一个开始 直接拒掉可能粗暴了一点 有耐心的话应该换个方向 按照简历多问问 这种流程就是舍弃基础答不上没有存量的人 不愿意花时间筛选璞玉 |
54
beidounanxizi 2021-05-05 19:40:32 +08:00
算法题没做出来 是给你 否定的主要原因吧
因为其他方面你也没补上 属于国内 国外 2 种面试模式 都会被嫌弃的那种 |
55
tomari 2021-05-05 20:05:08 +08:00 via iPhone
进程线程答不出来的人挺少的,估计是 applicant 太多了所以直接刷了吧
|
56
wdmwdm20088 2021-05-05 20:08:27 +08:00
@cctrv 为什么你的这个是繁体字呢?是台湾人?
|
57
darknoll 2021-05-05 20:27:06 +08:00
进程跟线程的区别都不知道的人,应该是培训班出来的人
|
58
casillasyi 2021-05-05 21:07:32 +08:00
@darknoll 不要看不起培训班
|
59
zzzzzzggggggg 2021-05-05 21:14:54 +08:00
面试还是应该准备一下的,防止被低级问题一波带走,有可能你做东西确实牛批,但是面试就是这样子,得有个标准,就像考驾照一样,老司机来考可能也倒车入库失败
|
60
crclz 2021-05-05 21:32:52 +08:00
你这个差距也太大了,一个差距是准备 vs 没准备,另一个差距是学校教学的差距。
好的 985,学生做完实验后,进程、线程都刻在 DNA 里面了,十年都不可能忘。 |
61
cigarzh 2021-05-05 21:35:55 +08:00 4
大家都鄙视做题家
大家都是做题家 |
62
wengjin456123 2021-05-05 22:05:36 +08:00 via Android
进程和线程这不是本科必会的玩意么
|
63
ilotuo 2021-05-05 22:31:06 +08:00 4
是不是弯弯和 hk 青年都喜欢抨击主流思想以彰显自己"独立思考"的 freedom 意志. 所以才那么多 gd 🙈
|
66
aptx4689 2021-05-05 23:13:35 +08:00
好奇怪,纠结人家用简体还是繁体干嘛
|
68
yzbythesea 2021-05-06 00:22:57 +08:00
@cctrv 学习能力强的面试者我见过太多了,为什么一定要选你?谷歌搜索谁都会,那我为什么不选一个做出来我 leetcode hard 的面试者呢?我觉得你太自傲了,觉得会做 Leetcode 就只是高分低能。
|
69
azuis 2021-05-06 01:15:23 +08:00
越是大公司越不会吝惜培养时间。应届生校招的话完全不会关心你是否熟悉具体某些技术,反正都已经预留了培训时间。 这时候更注重的未来的发展潜力而不是当前可以立刻投入工作的能力。
|
70
menyakun 2021-05-06 02:04:31 +08:00
搞哪个方向的 coder 平时工作中应该都会接触过线程 /进程的相关问题吧。
别的不说,对于你的日常主力语言,你总不能连它的多线程模型是怎么样的都说不出吧。 |
71
20015jjw 2021-05-06 03:46:51 +08:00 via iPad
羡慕有身份的 可以看出来这是发自内心的不虚
楼下这些觉得 lz 上课不听讲的 人家那是凭本事开的小差 |
72
myBatis 2021-05-06 04:46:16 +08:00
还是得脚踏实地稳扎稳打,虽然正式入职以后很多知识用不到 lmao
|
73
LxExExl 2021-05-06 07:17:39 +08:00
羡慕有身份的 可以看出来这是发自内心的不虚
楼下这些觉得 lz 上课不听讲的 人家那是凭本事开的小差 |
74
ImACat 2021-05-06 08:31:07 +08:00
这是基础知识吧。。。
|
76
RyanOne 2021-05-06 09:19:00 +08:00
来来来 你们 用通俗易懂的话解释 解释 进程和线程 的区别
|
77
vipppppp 2021-05-06 09:22:24 +08:00
先不谈这个问题本身是否有价值
根据近期的面试经验来说,大部分工作年限比较少或者说只做了一些小项目的人来说,能面的东西不是很多,只能从最简单的开始问起,逐步深入,如果简单的计算机问题都答不对,真的印象很差。。。。。 |
78
HeapOverflow OP @vipppppp 我有一个持续一年多的实习,和两个多月前开始做的 contractor 。。。今天面了 twitch,四轮里最后一轮聊了很多 intern 和 contractor 上的事情
|
80
bigtotoro 2021-05-06 09:44:01 +08:00
感觉 lz 是一个学习能力强的人。不过现在面试就得先过八股文,不然会被鄙视
|
82
lingxipaofan 2021-05-06 10:08:31 +08:00
想起了当年刚毕业时候被问面向对象三个特性时候的一脸懵逼
|
84
weiwenhao 2021-05-06 10:23:22 +08:00
dfs 一个递归就可以实现了,但是接下来肯定会问前序中序后序的区别, 然后再问一个非递归形式的后序遍历怎么写,这个我看是挺难写的。。
|
85
HeapOverflow OP @weiwenhao 才发现我说错了。。是 bfs
|
86
lietoumai 2021-05-06 10:59:23 +08:00
楼主有女朋友
|
87
Anarchy 2021-05-06 11:07:47 +08:00 via Android
@lingxipaofan 看到你这个,发现我也想不起来了
|
88
twogoods 2021-05-06 11:20:49 +08:00
所以区别呢?进程是更大的单位,线程是进程执行的最小单位,进程不共享内存,线程共享;
不知道说的对不对,更多的区别想不出来...估计书上能讲一页.... 作为普通的软件开发工作接触更多的是线程间的合作、线程安全这些,工作似乎让我对进程和线程区别没有更深层次的理解 |
89
vipppppp 2021-05-06 11:31:40 +08:00
@HeapOverflow
我觉得大部分回复是告诉楼主基础很重要,1L 的意见我觉得很中肯 更何况你还在校,还有很多时间学习复习 说句不好听的,一些实习和外包相对于大厂都是小打小闹。。。 一般来说面试每轮侧重点都不同,前面的大概率都是基础面。。 实际上大部分都是普通人,稳扎稳打发育才是硬道理。。。 |
90
miniwade514 2021-05-06 11:35:16 +08:00
@hello2060 把自己定位成“Flutter 开发者”,说出上面那些话也不奇怪了。
|
91
hmellochan 2021-05-06 11:47:40 +08:00
老实说,校招应届生 项目好自然是添彩,但基础是大厂更看重的。
|
92
Yc1992 2021-05-06 13:09:44 +08:00
终于知道为啥我们公司的 flutter 岗位一年半换了 5 个人,普遍基础差
|
93
dream7758522 2021-05-06 13:10:03 +08:00 via Android 1
秒拒不好吗,就怕有的大厂放鸽子,被拒了也不及时通知
|
95
HeapOverflow OP 为什么楼里戾气这么重。。
|
96
liuxingdeyu 2021-05-06 16:50:42 +08:00
进线程搞不清楚拒楼主不冤,好多东西的意义并不是你现在用不用的到,年轻的时候喜欢快的东西,越往后越觉得老实厚道稳重踏实这些才是一个人更应该去培养的,毕竟绝大多数人都没什么爆发力,也没什么运气
|
97
shyrock 2021-05-06 17:53:12 +08:00
懂了,以后面试第一题先问线程和进程。
是否有同样的技术(教育)背景,决定了这个开发能否和他的同事顺畅沟通;也决定了独立思考时,他想出来的方案是否遵循一些约定熟成的套路,不至于一个人走偏;还决定了在看书和 google 时他的学习效率,因为书和教程的作者也会预设读者的知识储备水平。以为一个能 google 的小白等同于一个能 google 的大神,这言论够无知的。 |
98
shyrock 2021-05-06 17:56:54 +08:00
换位思考一下,lz 觉得自己有很多开源发布的 flutter 作品,很适合这个职位,结果被一个毫无经验的 flutter 小白 pk 下来,面试官的理由是别人虽然对 flutter 一窍不通但是 google 很溜,而且小白只花几分钟就搜索了 lz 开源的作品,说明小白跟开源作者水平相当。这,荒不荒谬?
|
99
umissthestars 2021-05-06 18:21:39 +08:00
好好复习,进程线程&dfs 没想起来,没准在印度都难
|