[心得] 面試心得(gogomaper/brocas/fungogo/104)

看板Soft_Job作者 (芸)時間8年前 (2016/03/03 11:03), 8年前編輯推噓34(34030)
留言64則, 34人參與, 最新討論串1/1
工作一年半,主要寫php為主,閒暇時間寫寫前端跟node.js,會一點swift。 會一點jenkins CI,design pattern跟tdd。 1. gogomaper.Inc(50K) 徵node.js的工程師,新創團隊應該在六人左右,似乎成立不滿一年。 分成兩次面試 一面:由PM介紹他們的產品,主要是做地圖社交的APP。 進去會提供螢幕或椅子,沒有電腦。 二面:技術面試,出了一個題目是:如果有一個array裡面含有n個正整數 且array[0]+...+array[k] == array[n-1] +...+ array[n-k],試求k, k若不存在則回傳false。 我是用時間複雜度n的2次方去解的,不知道有沒有更好的解法。 此外還有問一些AWS跟restful的問題,像AWS的secuity group,restful跟SOAP的差別。 結果:無聲卡 2. brocas(50K) 衝著某位強者去的,一樣是node.js工程師,地點在汐止真是有夠遠。 基本上都問node.js的問題,有提到我自己用node.js做的網站。 有問我react跟angular的差別,那個時候的回答是這樣的: angular跟react的差別在於說angular他並沒有特別去劃分non-state跟state, 這意味著你把整個$scope展開時會很髒,會混雜在一起,react會force你去思考哪些是 non-state跟state。 當然不只這樣,不過我也只講了這一些。 還有爭論一個問題,就是客戶發現我們幫他開發網站的有安全漏洞的時候, 是不是應該藉由更新來避免。 我個人認為是必須的,但對方傾向於不更新,因為更新所相對應帶來的風險 需要審慎評估。 我後來想想還是把他打清楚好了,那個時候我也沒有表達得很清楚。 我的前公司從客戶那邊收到了一份安全報告,裡面提到apache2.2跟php5.2 有安全上的疑慮要修正,我個人在開發時是採用IIS 8 + php 5.5的, 剛好符合客戶的需求。 所以我就建議說既然客戶有這個需求就幫他們升級,畢竟安全很重要。 想當然被reject才會發生後來的事情。 我個人的看法是:這個更新不會帶來太大的風險, 而且必要的時候還是可以rollback,基本上完全不會動到code, 可以先讓客戶測試能不能接受後,再更新到正式server上。 完全不作實在是讓我難以接受,實際上我們公司bug也是這樣子, 簽核出問題拖了將近一年都不修,主管根本就是得過且過,所以我才憤而離開。 你說為何不自己修?因為我不會阿!那是java applet,而且是依賴oracle form的。 而且他們也不太願意讓我動。 結果:無聲卡 3. Fungogo 應徵前端工程師,不過他們職缺沒有寫得很清楚,過去跟他們聊的時候才發現他們要找 會D3.js的人,剛好我沒碰這塊,所以就沒談太多。 我很懷疑他們的PM有看過我的履歷,投了不到幾個小時就回我。 要填那長達兩頁的身家調查表 結果:無聲卡 4. *****(50K) 因為我有拿到offer也確定要去,所以想知道的公司名稱的站內信給我。 這是少數幾家我收到面試邀請就非常想去的, 有自己的github帳號(而且真的有人按star),有贊助研討會跟社群。 從來沒有公司有寄這些東西給我。 後來想想當公司都要求面試者隨信附上github帳號時,為何 我們不能反過來要求公司在github上也要有所作為,這種事情不是互相的嗎? 拉回正題,這間公司也是小公司,約10人左右,寫php專案為主, 最近想開發自己的產品。 暢談了很多東西,也被糾正了不少,少數沒有只聽我說的CTO。 當場開給我offer,並說會同時配電腦跟螢幕。 結果:offer get 5. 104 恩,就是那個大家都知道的有很多假職缺的網站,應徵的是前端工程師。 也要填長達兩頁的身家調查表,我都想吐槽你們家不就是做這塊的嗎? 雖然我以為我面試的是前端,但實際上都在問php的問題,一直追問thread safe跟 non thread safe,怎不多問點JS的部分啊... HR問了一個有趣的問題:如果我們這個產品結束以後,你可以接受調回來寫java嗎? 我當場愣住,只好跟他說:抱歉,我沒想過這個問題。 他們網站都不需要人開發前端歐。 會配一台windows的筆電。 結果:等待通知二面,不過我想應該不會通知。 題外話: 如果想學前端卻不知道如何下手的話可以參考這個投影片: http://huangxuan.me/js-module-7day/#/ 他寫的很好,把前端開發者會碰到的問題以及因應的libary大概都講了。 你可以從這邊當作切入點著手。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.30.31 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1456974215.A.D40.html

03/03 11:07, , 1F
有心得有推
03/03 11:07, 1F

03/03 11:07, , 2F
我也有去面試4!那裡很棒不過我應該不會
03/03 11:07, 2F

03/03 11:07, , 3F
上。
03/03 11:07, 3F

03/03 11:08, , 4F
大學畢一年半這樣還ok
03/03 11:08, 4F

03/03 11:08, , 5F
推心得分享
03/03 11:08, 5F

03/03 11:26, , 6F
面試一去就寫基本資料...感覺雷雷的XD
03/03 11:26, 6F

03/03 11:30, , 7F
加總那題應該維護兩個變數跑一次廻圈就好了, O(N)
03/03 11:30, 7F

03/03 12:14, , 8F
推心得
03/03 12:14, 8F

03/03 12:42, , 9F
那個題目看起來就怪怪的= =
03/03 12:42, 9F

03/03 12:44, , 10F
array length = n, array[n]不就超過了嗎 是array[n-1]
03/03 12:44, 10F

03/03 12:44, , 11F
吧?
03/03 12:44, 11F

03/03 13:01, , 12F
03/03 13:01, 12F

03/03 13:06, , 13F
不用每次都重算0~k的和與k~n-1的和。 複雜度就是n一次了
03/03 13:06, 13F

03/03 13:09, , 14F
O(n) 應該就可以了,dynamic programming 的應用
03/03 13:09, 14F

03/03 13:14, , 15F
加油
03/03 13:14, 15F
※ 編輯: y2468101216 (118.163.30.31), 03/03/2016 13:17:36

03/03 13:17, , 16F
value必定是sum/2, 直接從頭去累加: LT->None, EQ->Ans
03/03 13:17, 16F

03/03 13:32, , 17F
他的投影片 不是給初學者看的吧??
03/03 13:32, 17F

03/03 13:40, , 18F
我想得跟Yshuan同
03/03 13:40, 18F

03/03 13:49, , 19F
親愛的樓上跟樓上上上,不會是 sum/2 噢!
03/03 13:49, 19F

03/03 14:06, , 20F
沒有sorting過不能直接看sum/2啦
03/03 14:06, 20F

03/03 14:06, , 21F
XD 果然沒午睡不行 題意理解錯誤
03/03 14:06, 21F

03/03 14:33, , 22F
題目是0~k跟[n-1-k]~[n-1], 而不是k~n吧...
03/03 14:33, 22F

03/03 16:02, , 23F
03/03 16:02, 23F

03/03 16:32, , 24F
有看有推
03/03 16:32, 24F

03/03 16:44, , 25F
推推
03/03 16:44, 25F

03/03 16:45, , 26F
另外大大好像有在web design幫過我忙@@
03/03 16:45, 26F

03/03 16:51, , 27F
樓上我小小,那時還不小心講話太直接XD
03/03 16:51, 27F

03/03 16:53, , 28F
肯幫忙就要跪謝大大了QQ 感恩感恩
03/03 16:53, 28F

03/03 17:08, , 29F
推分享~
03/03 17:08, 29F

03/03 17:39, , 30F
pp
03/03 17:39, 30F

03/03 18:22, , 31F
推 我在等公車時也在想是不是/2
03/03 18:22, 31F

03/03 19:59, , 32F
一個履歷是能看多久…
03/03 19:59, 32F

03/03 20:38, , 33F
借同事帳號回應:
03/03 20:38, 33F

03/03 20:38, , 34F
剛好是 2 裡面比較弱的 Node.js 工程師,
03/03 20:38, 34F

03/03 20:39, , 35F
文中提到有安全漏洞卻不更新的問題,中間應該是有什麼誤
03/03 20:39, 35F

03/03 20:39, , 36F
會才對(?)
03/03 20:39, 36F

03/03 20:39, , 37F
有點失憶但印象中那天提到的情境應該是
03/03 20:39, 37F

03/03 20:39, , 38F
PHP(還是apache?)版本「過於」老舊且有安全性漏洞,
03/03 20:39, 38F

03/03 20:40, , 39F
溝通過程可能有什麼誤解,但整體方向應該是指有一定規
03/03 20:40, 39F

03/03 20:40, , 40F
模且年代久遠(失修)的系統應該經過更謹慎的評估,
03/03 20:40, 40F

03/03 20:40, , 41F
而不是一下就能換的。畢竟越是有規模的系統本身牽涉到
03/03 20:40, 41F

03/03 20:41, , 42F
既有(不知道有沒有)的穩定性,還有對人員的 training
03/03 20:41, 42F

03/03 20:41, , 43F
等等,不是只要下個 update 然後 test 都過亮綠燈就好。
03/03 20:41, 43F

03/03 20:42, , 44F
講個八卦:同事曾經跟我抱怨,跟我共事兩年以來一直從
03/03 20:42, 44F

03/03 20:43, , 45F
Async.js、Bluebird Promise、co、async/await 這樣一
03/03 20:43, 45F

03/03 20:43, , 46F
直升上來,讓他總是學無止盡。我們只有兩個Node.js工程
03/03 20:43, 46F

03/03 20:44, , 47F
師就有這樣的困擾,那如果公司有 20人 200人?
03/03 20:44, 47F

03/03 20:49, , 48F
今天剛偷玩了Jenkins2就被說不更新,我玻璃心都碎了...
03/03 20:49, 48F

03/03 21:05, , 49F

03/03 21:05, , 50F
跟這題應該算是有異曲同工之妙吧XD
03/03 21:05, 50F

03/03 21:25, , 51F
一般來說都會建砂盒看會不會爆炸 再更新巴
03/03 21:25, 51F

03/03 21:28, , 52F
要是我 會「建議」下去更新 但只是建議喔~
03/03 21:28, 52F

03/03 21:29, , 53F
實際情況大概90%公司沒人想去動 XDDDD
03/03 21:29, 53F

03/03 23:02, , 54F
我的話會新舊並行 再用load balancer逐步將流量導向新的
03/03 23:02, 54F
補充推文中提到的東西。 ※ 編輯: y2468101216 (122.116.19.98), 03/03/2016 23:32:49 ※ 編輯: y2468101216 (122.116.19.98), 03/03/2016 23:34:34

03/04 07:30, , 55F
應該只要先算出 prefix sum 和 suffix sum 就可以了吧
03/04 07:30, 55F

03/04 11:01, , 56F
資安課不是有教嗎?應該先做風險評估。如果該漏洞風險
03/04 11:01, 56F

03/04 11:01, , 57F
高到比緊急更新的風險還高,才會需要緊急更新啊!
03/04 11:01, 57F

03/04 11:31, , 58F
我從來都沒有說緊急更新,我是說要更新。
03/04 11:31, 58F

03/04 14:03, , 59F
前n/2總和後n/2總和比大小,從中間切口處往總和大的方向
03/04 14:03, 59F

03/04 14:05, , 60F
移一個元素過去,更新兩邊總和比大小,直到撞牆或大小方
03/04 14:05, 60F

03/04 14:06, , 61F
向改變回傳False,算總和O(n),最多比n/2次,應該有O(n)
03/04 14:06, 61F

03/05 17:43, , 62F
03/05 17:43, 62F

03/05 21:56, , 63F
用 array[i] 跟 array[n-1-i] 的差值做 sum, 當diff==0 時
03/05 21:56, 63F

03/05 21:56, , 64F
return i 值應該可以解完?
03/05 21:56, 64F
文章代碼(AID): #1Mrwc7r0 (Soft_Job)