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

作者: y2468101216 (芸)   2016-03-03 11:03:30
工作一年半,主要寫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大概都講了。
你可以從這邊當作切入點著手。
作者: oaboy (歐A男孩)   2016-03-03 11:07:00
有心得有推
作者: Asty1e (AstyLe被人取走了)   2016-03-03 11:07:00
我也有去面試4!那裡很棒不過我應該不會上。
作者: QNAP (QNAP)   2016-03-03 11:08:00
大學畢一年半這樣還ok
作者: taikobo (勉強になるなぁ...)   2016-03-03 11:08:00
推心得分享
作者: abccbaandy (敏)   2016-03-03 11:26:00
面試一去就寫基本資料...感覺雷雷的XD
作者: lovdkkkk (dk)   2016-03-03 11:30:00
加總那題應該維護兩個變數跑一次廻圈就好了, O(N)
作者: zoko741235 (台北金城武)   2016-03-03 12:14:00
推心得
作者: GoalBased (Artificail Intelligence)   2016-03-03 12:42:00
那個題目看起來就怪怪的= =array length = n, array[n]不就超過了嗎 是array[n-1]吧?
作者: duck10704 (duck)   2016-03-03 13:01:00
作者: brucetu (sec)   2016-03-03 13:06:00
不用每次都重算0~k的和與k~n-1的和。 複雜度就是n一次了
作者: wheels   2016-03-03 13:09:00
O(n) 應該就可以了,dynamic programming 的應用
作者: Masakiad (Masaki)   2016-03-03 13:14:00
加油
作者: Yshuan (倚絃)   2016-03-03 13:17:00
value必定是sum/2, 直接從頭去累加: LT->None, EQ->Ans
作者: likecyndi   2016-03-03 13:32:00
他的投影片 不是給初學者看的吧??
作者: KanoLoa (卡)   2016-03-03 13:40:00
我想得跟Yshuan同
作者: syclin (Steven)   2016-03-03 13:49:00
親愛的樓上跟樓上上上,不會是 sum/2 噢!
作者: wheels   2016-03-03 14:06:00
沒有sorting過不能直接看sum/2啦
作者: Yshuan (倚絃)   2016-03-03 14:06:00
XD 果然沒午睡不行 題意理解錯誤
作者: dreamnook (亞龍)   2016-03-03 14:33:00
題目是0~k跟[n-1-k]~[n-1], 而不是k~n吧...
作者: yuanyu90221 (菜菜鳥)   2016-03-03 16:02:00
作者: onininon (萬)   2016-03-03 16:32:00
有看有推
作者: femlro (母豬教謀神異端審問官1.5)   2016-03-03 16:44:00
推推另外大大好像有在web design幫過我忙@@
作者: y2468101216 (芸)   2016-03-03 16:51:00
樓上我小小,那時還不小心講話太直接XD
作者: femlro (母豬教謀神異端審問官1.5)   2016-03-03 16:53:00
肯幫忙就要跪謝大大了QQ 感恩感恩
作者: Arser   2016-03-03 17:08:00
推分享~
作者: Mtcat (山地貓)   2016-03-03 17:39:00
pp
作者: amazing2014 (別斷線拜託)   2016-03-03 18:22:00
推 我在等公車時也在想是不是/2
作者: sing10407 (阿U)   2016-03-03 19:59:00
一個履歷是能看多久…
作者: jeff0220 (jeff0220)   2016-03-03 20:38:00
借同事帳號回應:剛好是 2 裡面比較弱的 Node.js 工程師,文中提到有安全漏洞卻不更新的問題,中間應該是有什麼誤會才對(?)有點失憶但印象中那天提到的情境應該是PHP(還是apache?)版本「過於」老舊且有安全性漏洞,溝通過程可能有什麼誤解,但整體方向應該是指有一定規模且年代久遠(失修)的系統應該經過更謹慎的評估,而不是一下就能換的。畢竟越是有規模的系統本身牽涉到既有(不知道有沒有)的穩定性,還有對人員的 training等等,不是只要下個 update 然後 test 都過亮綠燈就好。講個八卦:同事曾經跟我抱怨,跟我共事兩年以來一直從Async.js、Bluebird Promise、co、async/await 這樣一直升上來,讓他總是學無止盡。我們只有兩個Node.js工程師就有這樣的困擾,那如果公司有 20人 200人?今天剛偷玩了Jenkins2就被說不更新,我玻璃心都碎了...
作者: Y78 (Y78)   2016-03-03 21:05:00
https://codility.com/demo/take-sample-test/跟這題應該算是有異曲同工之妙吧XD
作者: spjay1 (Josh)   2016-03-03 21:25:00
一般來說都會建砂盒看會不會爆炸 再更新巴
作者: Argos (Big doge is watching u)   2016-03-03 21:28:00
要是我 會「建議」下去更新 但只是建議喔~實際情況大概90%公司沒人想去動 XDDDD
作者: yyc1217 (somo)   2016-03-03 23:02:00
我的話會新舊並行 再用load balancer逐步將流量導向新的
作者: FRAXIS (喔喔)   2016-03-04 07:30:00
應該只要先算出 prefix sum 和 suffix sum 就可以了吧
作者: Masakiad (Masaki)   2016-03-04 11:01:00
資安課不是有教嗎?應該先做風險評估。如果該漏洞風險高到比緊急更新的風險還高,才會需要緊急更新啊!
作者: y2468101216 (芸)   2016-03-04 11:31:00
我從來都沒有說緊急更新,我是說要更新。
作者: hutdris   2016-03-04 14:03:00
前n/2總和後n/2總和比大小,從中間切口處往總和大的方向移一個元素過去,更新兩邊總和比大小,直到撞牆或大小方向改變回傳False,算總和O(n),最多比n/2次,應該有O(n)
作者: a8084123 (MINA ESUPA DAYO)   2016-03-05 17:43:00
作者: DJoker   2016-03-05 21:56:00
用 array[i] 跟 array[n-1-i] 的差值做 sum, 當diff==0 時return i 值應該可以解完?

Links booklink

Contact Us: admin [ a t ] ucptt.com