看板 Soft_Job 關於我們 聯絡資訊
這篇要講的不是面試者,是以面試官的立場寫下一些心得。 7/28~7/30 到南部去面試,排了 21 個人,有 4 個放鳥所以只面試到 17 個 人,大多都是網站後端相關的職缺,也有一些 API Engineer 與資訊系統的職 缺。 這次面試都是從 104 上找,以大學或碩班新鮮人為主。只要符合這些條件我都 請我們家 HR 聯絡來談:(是 OR 不是 AND) 1. 有 Programming 工作經驗。 1. 剛畢業/退伍,資工/資科/資管畢業。 2. 剛畢業/退伍,有任何資訊相關的作品。 3. 剛畢業/退伍,自傳寫得還可以的。 挑履歷的標準應該是不算高... 我 interview 的習慣是一律從面試開始,先說明投的這個職缺要做什麼事情, 然後跟面試者先確認這是不是他要投的職缺。 (因為偶爾會遇到投錯職缺的,確認後可以省下大家時間...) 接下來就是問一些工作上會用到的技術相關的問題。以網站後端、API Engineer 以及資訊系統來說,因為主要都是跟資料庫有關,所以大多都是先從 資料庫起頭開始問: * 請列出 RDBMS 裡的 JOIN 有哪些。 答案可以參考 https://en.wikipedia.org/wiki/Join_(SQL) 這邊。 大概有一半的人一個都答不出來,可以講出的人我會要他說明他列出的 JOIN 在這種圖的表示法: https://i.imgur.com/7BIsxZn.png
各種千奇百怪的答案都會出現 XD * 請說明資料庫裡 Transaction 是做什麼的。 答案可以參考 https://en.wikipedia.org/wiki/Database_transaction 這 邊。 大概也是有一半的人會回答「不知道」,有蠻多人以為 transaction 就只是 Atomic 的特性。 如果大概還講的出東西來的我會再問 ACID 的四個特性。 關於 ACID,可以參考 https://en.wikipedia.org/wiki/ACID 這邊,不過只 有兩個人有被問到 ACID,其中一個只答得出 AC,另外一個對 CID 都用掰的。 * Primary Key、Unique Key、Index Key 的差異 已經是比較偏實務上會碰到的議題了,不過超過一半不知道差異。甚至會說 他之前的工作用不到 Index Key... XD 可以參考 https://en.wikipedia.org/wiki/Database_index 這邊,不過維 基百科這邊的資料比較偏學術上的說明。 * 資料庫的「正規化」做了什麼事情?解決了什麼問題? 也大約是一半的人答不出來。答得出來的我會問 1NF 做什麼,然後所有人都 在這題掛掉... 參考 https://en.wikipedia.org/wiki/Database_normalizationhttps://en.wikipedia.org/wiki/First_normal_form 這邊。 這些資料庫理論是工作上比較會碰到的東西。我不太喜歡問 SQL 語法怎麼下, 主要是因為這些語法各家都不太一樣,真的用到時查一查就好了。而觀念的東 西才是難教的,interview 的時候問這些鑑別度還算高... 接下來我會問一下資料結構與演算法的東西: * Stack 與 Queue 的差異? 熱身用的題目,大多數人都答的出來。不過還是有唸了四年資工的人說不出 來,讓我囧在那邊... * Priority Queue (Heap) 是什麼? 有些人是「聽過,但忘記了」,有些人是完全沒聽過,基本上就是都不知道... * Tree、Binary Tree、Binary Search Tree、Balanaced B.S.T. 的差異? 意外的是大約一半的人不知道 Tree 與 Binary Tree 的差異,就更不用說後 面這幾個的差異了... 可以把四個資料結構的差異都講出來的有兩位,我就問了 AVL tree 與 RB tree 的差異,然後就掛掉... * QuickSort 與 MergeSort 的差異? 這兩個都是經典的演算法,不論是學校還是職場上都會花很多時間教或是用 到的經典演算法。 兩者的差異隨便列出來應該就一堆,不過情況比想像中的有趣... 像是 O(logN) 的 QuickSort 與 O(N) 的 MergeSort。或是把 BubbleSort 當作 MergeSort 在講... 如果面試者不知道要從哪裡開始的話,我都會提示「時間複雜度」會是一個 方向。不過都答不太出來... 有好幾個面試者都有提到 Divide-and-Conquer,然後被我反問哪一個是 Divide-and-Conquer 哪一個不是? 然後我有時會要求用手寫一些程式 (不限程式語言,也不需要 include 之類的 步驟,重點有表達出來就好): * 九九乘法表。 請不要小看這個題目................................................. * isPrime(n)。 * GCD(n, m) 與 LCM(n, m) (最大公因數、最小公倍數)。 死亡率還是很高的題目。 講一下心得好了。 我 interview 的習慣是問到答不出來為止,這樣我才會知道會多少東西。通常 都是從基礎的東西開始問,而蠻意外的是,大多數人都會死在起跑點... 本來 Programming 的東西還打算考 Eight Queen 之類的問題,不過後來還是 下修再下修... 另外一個我還蠻喜歡問資工畢業生的問題是,「你都唸了四 (六) 年的資工, 知道資訊領域最高獎項是什麼嗎?」 還蠻意外的是大多數人都不知道 :p https://en.wikipedia.org/wiki/Turing_Award 最後問一下,有人要投履歷嗎? -- Resistance is futile. http://blog.gslin.org/ & <[email protected]> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.90.16 ※ 文章網址: http://www.ptt.cc/bbs/Soft_Job/M.1406754326.A.A72.html
Eos:其實你問東西的很多台灣業界根本用不到 更別說應屆畢業的了... 07/31 05:26
Eos:剛考完研究所的應該可以回答出你大部份的問題 但那是你要的嗎 07/31 05:29
DarkKiller:會用不到嗎?我們的確全部都會用到啊? 07/31 05:42
lovdkkkk:我覺得這些是工作越久的可能越答不出來 07/31 06:18
lovdkkkk:每一項我都曾經很熟, 演算法的全都推過並用 ANSI C 寫過 07/31 06:20
lovdkkkk:但剛一看還是很多忘了...只要復習一小時就能全回來吧 @@ 07/31 06:21
mrforget:面試兩個多月,除正規化沒被問過,其他都被問過。 07/31 06:25
mrforget:心得是能被仔細的面試是一種福氣。 07/31 06:28
idleidle:資工所不考DB,DB確很常用. 07/31 06:35
idleidle:DS+演算法,挑好學校的碩班,答得出比例應很高 07/31 06:37
idleidle:不過 這篇是徵才文無誤.XD 07/31 06:40
shizeng:用不到index key,蠻怪的! 07/31 07:23
ichico:我覺得transaction的ACID最常用到的的確是A啊XD 07/31 07:25
ichico:那三個Key還有Join是蠻常用的,但Join常用的也就那三個吧 07/31 07:27
ichico:我是真的很少用self join XD 07/31 07:28
ichico:然後一看發現我演算法真的忘了耶 只用高階語言的缺點 07/31 07:29
guitaryuan:這樣問法是需要即戰力嗎? 07/31 08:04
manlike:薪水多少? 07/31 08:19
ccpz:推DK 07/31 08:43
bndan:DB部份其實不一定(有些系DB非必修)但下半部答不出來就....嗯 07/31 09:26
bndan:另外"剛退伍".這畢竟也可能是問題 ~_~ 07/31 09:28
chrisyanglom:資料庫都不會,可是資結演算法應該都答得出來OK嗎XD 07/31 09:31
yyc1217:如果是我就準備一台筆電在旁 當場答不出來就GOOGLE給我看 07/31 10:12
yyc1217:能下對關鍵字google到答案就ok 07/31 10:13
kaitokid2:剛修完資料結構可能可以答不少出來,當完一年兵保證忘光 07/31 10:14
hSATAC:崩潰~~ 07/31 10:24
a83294:我覺得對於一般大學生,剛退伍叫他們回答這個太不人道了XD 07/31 10:24
fowei:像我都只是一知半解. 但給我google我就可以找出解答 07/31 10:25
fowei:我個人覺得除非工作屬性需要即時. 不然其實這些用到不多 07/31 10:25
fowei:就像index key, 我知道, 但不太熟. 當有TABLE變慢時. 我會想 07/31 10:26
fowei:然後去google, 暸解加快 query的方法.. 就會了. 大概半小時 07/31 10:26
gohpx:這些問題超熟的..我大概知道D大是何人了... 07/31 10:32
gohpx:不過這些問題..回答不出不代表不會用..但會講會用才是好的吧 07/31 10:36
oneheat:好難,全部都不會怎麼辦?? 07/31 10:53
oneheat:最有趣的是,我確定考研究所的學生應該都很會 07/31 10:54
manlike:而且 Priority Queue 和 Heap 不一樣~ 07/31 10:57
gohpx:讓人能上網查 那些問題有經驗的也都不太會是問題 07/31 10:57
descent:要問倒人真的太容易了, 找本面試書的題目就夠 07/31 10:58
descent:不知道你怎麼挑人, 那些人的特質你會選他 07/31 10:58
manlike:只不過 Priority Queue 通常用 Heap 實做出來 07/31 10:59
descent:應該不會是只有答出正確答案的人 07/31 10:59
oneheat:以tree為例,問那麼多tree的差異幹嘛? 07/31 11:03
oneheat:我都是問他知不知道XX tree,不知道的話會稍微介紹一下, 07/31 11:03
oneheat:再出個應用題,問他這種case,用哪一種tree好,理由在哪 07/31 11:04
frank11118:我物理系資結演算法都能答了 07/31 11:08
yyc1217:我覺得現在比的已經不是誰記得多 而是誰找得快 07/31 11:11
yseric:最高榮譽有另一個叫Jolt,是best book 07/31 11:12
MIKEmike07:推推DK大 07/31 11:23
a926:只知道一些..不過db的部分.我也是db query變慢才會調效說 07/31 11:28
noonecanstop:資工系學生可不像你一天八小時都在做資料庫 07/31 11:36
KASUGAOSAKA:面試前的確要溫習演算法,沒溫習一定掛 07/31 11:40
edward13:慘了我嘴巴都回不太出來 只能用code的出來怎辦 07/31 11:42
robler:剛考完研究所的時候都答的出來,現在只答的出來一半吧 07/31 12:28
andymai:資料庫改用 redis 惹~已哭 Q_Q 07/31 13:06
ia:可以聽到一些面試官的聲音..加分惹 07/31 13:33
enthos:都忘光了。跟想像的後端不一樣。 07/31 14:29
fantasysea:像學生時期的期末考題, 面試時我應該會被電慘慘XD 07/31 14:37
OnlyRD:真的蠻用心的面試,但的確不是每個業界都會用到。 07/31 14:38
OnlyRD:有些強者工作幾年都沒碰過這些的話,猛一問搞不好還真問倒 07/31 14:39
OnlyRD:但是你是面試新鮮人,CS畢業生不懂的確比較奇怪。 07/31 14:41
einhander:你們公司不能上網?還是都在考試? 07/31 14:49
jack0204:我剛畢業DB沒學好,都在寫C的驅動程式跟Linux系統 07/31 15:22
jack0204:現在改寫網頁,很多都用過但名詞很多不知道 07/31 15:23
luciferii:像研究所考題+1 XD 07/31 16:14
Twinkling:我們現在找人看的都是 個性態度 >> 這些專業能力 07/31 16:36
Twinkling:當然完全都不知道也是不行 不過個性真的很重要就是 07/31 16:36
Twinkling:這些東西要pick up起來 根本一兩周就可以了 07/31 16:37
Twinkling:但是個性跟態度則是決定了根本上的差異....才是關鍵所在 07/31 16:37
knt:推樓上,個性態度真的比較重要...這東西沒辦法pickup阿 07/31 16:45
pennymarkfox:還真的都忘光光了耶 07/31 16:49
enthos:聯想到這一段 game.163.com/special/news/gushihui025.html 07/31 16:49
enthos:他一題未答,大筆一揮,在卷子末尾寫了“慢慢聊”三個字 07/31 16:49
enthos:面試官一拍桌子,“你比我強!我給你提比我還高的工資!” 07/31 16:49
bobju:當年我準備研究所考試時,這些程度都題目都算小case; 但現在 07/31 17:48
bobju:再看, 超過一半的題目我都沒把握能夠答得令考官滿意 07/31 17:48
bobju:像高中聯考一樣,當年考上第一志願,現在去考恐怕連倒數第一志 07/31 17:49
bobju:願的沒把握,太久沒用上早就都生疏掉了 07/31 17:50
DrTech:所以直接看學校名稱,與成績單就夠了,根本不用浪費時間 07/31 18:43
DrTech:驗證別人升學題目準備得好不好。 07/31 18:43
petingo:可以問一下最後錄取幾個&他們大概答了幾題嗎?? 07/31 18:44
PTT007:知道最高獎項是什麼有比較厲害嗎 你拿過是嗎 07/31 20:19
Beard5566:大部分的題目沒經驗的新人答不出來很正常,其實你只是想 07/31 21:14
Beard5566:看看能不能中大獎 07/31 21:15
nypgand1:被原 po 面試過推 07/31 21:30
AndyLeo:DK大大出現了~~~~~~~~~~~@@" 07/31 22:20
s910:DS那邊還好 有複習ok 08/01 00:06
norlan17m:這剛畢業或考完試才容易記得吧,業界多年沒用早就忘了 08/01 00:10
norlan17m:其實你就拿研究所考題給他們就寫好了,也不浪費時間問 08/01 00:11
leicheong:ACID的事我看很多, 但突然問的話我也是問不出來呢. :P 08/01 07:53
alexlucifer:靠腰~某些我也回答不出來,愧對我的工作經驗了~Orz 08/01 11:54
j87b0003:我被問過銲接後的變形處理方式(燦笑 08/01 12:39
jack0909:資工不一定有教DB 而且專案也不一定會用到DB 08/01 13:40
AmosYang: 資訊領域最高獎項 = 被人用數億美金收購 :D 08/03 02:16
cooper6334:考研究所的時候都會,之後再也沒用到過 08/03 23:01
cooper6334:直到現在工作快一年了 08/03 23:01
cooper6334:我說資料結構的部份 08/03 23:01
wooie:我大三,能答出八成== 08/03 23:23
wooie:那我可以直接去工作了嗎XD 08/03 23:23
f124:可以去考國考 08/05 14:49
kalitbri:推DK大~~ 08/05 19:20
egnaro123:不太合適,又不是考研究所,即時是教授教前也得複習 08/05 23:40
sunsamy:最後問一下,有人要投履歷嗎? 08/06 00:56
yankeerock:請問這是什麼工作 待遇如何? 08/06 09:21