[心得] 面試(MediaStep/SISTA/極點/遊悅/百搭)
小弟於今年9月初退伍,時至今日約莫也過了兩個月,受惠於版上各個求職文章,所幸在
拿到offer後能有機會分享一下從9月底開始投履歷時到現在的狀況,面試心得部分我分2
篇來寫,因為面試的公司有點多家。
個人背景介紹: 113 CS學碩
研究方向: 著重在道路品質評估,在MATLAB平台上做數理建模及分析,並寫app蒐集開車
時的震動資訊驗證理論模型
技能刀: C/C++, Java, Android, Matlab
求職方向: 求職初期主要鎖定新創公司以及外商,範圍涵蓋資安,電商,手遊,金融科技公
司,管理顧問業等,由於是新人,並不會特別排斥非要走哪一塊,只要工作技
能擦到邊,職務內容我可以接受便會投遞履歷,前期我主要都是丟Linkedin,
glassdoor及ptt,後期才開始使用Inside Job Board及104,個人期望薪資底
標為N = 50k
------------------------------正文開始----------------------------------------
(1) 公司: MediaStep 職位: FullStack Developer
這間公司主要是在Linkedin上投遞,也是我第一家面試的公司,該公司主要是做...
不知XD,由於這間公司的官網上並沒有任何詳細內容,只知道該公司拿加拿大VC創投
基金,8月才剛成立,11月才會正式營運,據我我和CEO面談的結果只知道它要做B-B-
C的產品(CEO表示是機密不能說XD),但是該CEO是技術底出身的,因此所有員工面試
由他一人處理,由於CEO的前老闆是資安相關公司並拿他們的募資基金,因此可以推測
可能是資安產品。
面試過程: 由於CEO不在台灣,所以是透過SKYPE面試,讓我直覺第一場面試就是英文
,不過後來發現他是會講中文的越南人,讓我鬆了一口氣XD,歸結一下他的問題如下
[1] 試說明heap和stack的差別
[2] overloading及overriding的差異
[3] catch exception機制說明,try...catch通常成對出現,若不寫catch是否可行?
[4] Java多重繼承問題,若class A已繼承class B,那麼class A是否還可以繼承
class C呢? B C
\ /
A
對Java Inheritance有基本概念應該會知道Java不允許多重繼承
[5] 承[4],若答案是否,你要如何實現multiple inheritance概念?
[6] abstract class和interface差別為何?
[7] static variable和static method的差異?
[8] 在SQL語言裡,INNER JOIN 和 LEFT JOIN各自代表什麼意義?
[9] 解釋polymorphism概念
以上為印象中有問到的問題,可惜當時實在是什麼都沒準備就上了XD,退伍後腦袋整
個被砍了一半(T T),答起問題來支支吾吾地,感覺很沒自信,現在回頭看看還真的錯
失了一個很棒的機會,但也是因為這樣我開始重新拿起書本,開啟工作站把基本OOP觀
念練習回來。面試結束時CEO會直接問你期望package是多少? 希望以幾個月做計算?
(12 or 14),因為這間是新創,這部分就各憑本事喊吧。
結果: 無聲卡,我很清楚地意識到我對很多基本概念已經不熟悉了,必須念書補足,
畢竟面試過程就是這樣,要不斷從錯誤中找到方向對症下藥,然後我開啟工作站時
發現其實上述概念很多我都實作過,只是生疏過頭了(sigh~)
(2) 公司: 時尚新創SISTA 職位: Android Developer
這間是前陣子在Soft_Job版上公開徵才的新創公司,創辦人之一是凱渥model,這是一
間時尚新創電商,同樣地技術主管也是不願透漏他們要做的產品內容XD,只知道他們
有跟凱渥model合作,目前需要技術人員協助他們建置電商平台。
面試過程: 有鑑於之前的失敗經驗,這次我特別準備一份ppt說明學經歷及專案成果
* 自我介紹, 學經歷以及研究方向濃縮在一頁說明
* 一頁說明自己人格特質,說服面試官為何我適合這個職位
* 三頁條列式講解自己過去的專案內容以及在專案中所負責的部分,輔以
圖例說明效果更加,盡量讓面試官知道你目前掌握技能的狀況是如何,
以便他問出對的問題來評量你的能力。
* (option) 一頁條列說明社團經驗,雖然多數主管頂多聽到前3項就結束
,但是不排除某些面試官還是會希望知道你過往在校的團體參與經驗,
因此建議放一頁以供參考說明
一進公司就可以發現是新創,因為有點空XD,面試官是專程從台中趕上來的技術主管
,一開始我便先做自我介紹,並說明自己的的人格特質和負責過的專案,中間有穿插
作品影片DEMO和上架APP的連結展示,感覺面試官有很認真看我的履歷,並試圖從我履
歷上的專案提醒我可能需要哪些能力? 以及建議未來我在ANDROID上可以努力的方向,
歸結問題大致如下:
[1] 在Android Project中,你所負責的部分為何? 有使用過哪些library?
[2] 說明你對於IoT專案的內容了解程度? 以及你在小組裡面負責的應用如何實作?
[3] 有無使用過api串接技術?
[4] 今天若是有多個使用者同時存取DB,你要如何處理client/server間的資料傳輸
機制?
[5] 承[4],在實務上資料傳輸時可能會涉及隱私問題,要如何預防資料傳輸過程中
可能的外洩問題?
[6] 假設我們的平台越來越多人使用,勢必會遇到server負載過重的問題,你會怎樣
因應這個狀況?
[7] 你覺得在學期間做過最引以為傲的專案為何? 為什麼?
可能因為我沒有工作經驗的關係,技術主管沒有問我太過於深入的問題,雖然我在履
歷上有寫SQL語言經驗,但是其實不到一年,自認為這還不算是資歷,從問題中大概
可以猜測他們或許還會需要懂backend的人選,我僅是針對我了解的部分作解釋而已,
所以沒有牽涉到太深入的DB管理問題,雖然是新創,但是這家還是有提供開發機,所
以應該不會慘到要自備筆電的狀況XD,最後我問創辦人薪水,新人價是N起跳,會再依
表現調薪,最後結束面試。
結果: 無聲卡
(3) 公司: TOPEAK(極點) 職位: Android Developer
這間先前有在Soft_Job上徵才,雖然極點是自行車零組件製造商,不過在南港有設立
新創部門,從官網上的介紹大概可以知道他們在運動休閒配件的設計和銷售頗具規模
,近年則是開始結合行動應用服務,提供玩家更新的體驗,雖然版上徵才說喜愛運動
有加分,只是不知道這點在哪裡XD。
面試過程: 面試時分別是由CTO和Director輪流提問,首先不免俗地先來了一段自我介
紹以及android作品demo,接續Director問我在哪看到職缺?我說ptt時她愣了一下,因
為104上的說明和ptt內容不太一樣XD,並且她也表示這職位會希望是由資深人員擔任
,但是我還是沒死心,盡量展現自己積極的一面,問題條列如下:
[1] 在我的Android作品中主要使用到哪些embedded sensor? 演算法如何實作? 這部
分需要自己對於過去負責的內容有一定的掌握程度
[2] 在履歷上有寫到PostgreSQL經驗,你用它做了什麼題目?
[3] 說明Android中life cycle的概念? 分別說明每個state要做的事情,我想學過
android的人都不會對這題陌生
[4] 承[3],若你正在和某個activity互動,此時有另一個activity要出現,兩者的
life cycle分別會如何運作?
[5] 舉例說明polymorphism的概念
[6] 說明android中thread如何運作?
其實應該還有其他問題我loss掉了,這幾項是當時我還有印象的題目,雖然我表明我
有自行閱讀spec能力自學,但是這職位還是會比傾向於有問題解決能力的資深工程師
,畢竟這部門還算是新創單位,我一個junior闖進來實在不太討好~ 最後director說
若有錄取會一周內通知,便送我出去了。
結果: 無聲卡
(4) 公司: KooApps(遊悅科技) 職位: Mobile Game Developer
KooApps是我在Inside Job Board上投遞的職缺,目前似乎正持續在徵人!? 當時知道
這是一間作手遊的公司(link:http://www.kooapps.com/),目前還在台灣擴張業務,
總部在西雅圖,面試分兩關,第一關為筆試,過了才會進入第二關與CEO進行英文面試
第一關筆試問題:
人資小姐會先請面試者寫一份個人資料調查表,要你簡述自己最喜愛玩的遊戲,以及
完這些遊戲的原因是什麼?再來就是期望薪資也需要寫,寫完後交給人資就會開始進行
筆試,時間限制為1hr,現場會提供筆電,把code寫在記事本上,雖然我私心是希望寫
在IDE或Work Station上比較有debug的空間,不過還是有部分試題需要手寫:
[1] 任意給兩組string,實作function判斷這兩組string是否為palindrome? 不可使
用任何C/C++提供的library內建function
[2] 任意給一組string,請實作最快速的方式計算每個character在string中出現的次
數,並依序印出字元及對應的出現次數
[3] 請畫出selection sort的flow chart
實際上應該還有考pointer/reference的手寫題,但是確切題目我記不清了,在[2]作
答時當下是想到對整個string做scan,並使用list儲存每個string literal出現的次
數,複雜度O(n),好奇有沒有更快速的方式?不過時間有限,就依當下直覺作答最後
交卷時人資小姐說我開的期望薪資N+5K偏高!? 這部分CEO會依我的考試狀況決定是否
繼續二面,然後我就被送出去了。
結果: 感謝函QQ,沒有2面
(5) 公司: 百搭網路 職位: Android Developer
這間公司是在做無線充電的應用服務,CEO是HTC的資深副理,公司規模目前不超過10
人,是還在成長中的新創公司,雖然市面上已經充斥滿多無線充電產品,但是礙於各
家標準不一以及無線充電技術尚未成熟,因此尚處於百家爭鳴的狀態,百搭則是切入
消費端的應用服務以擴大無線充電的覆蓋率,先前在版上有徵才,符合要求的人選需
要先繳交一份程式作業,該作業主要應用概念如下:
[1] 自行指定設計layout,在layout中需要設定背景顏色, 擺放TextView和EditText
並符合要求的相對位置,這部分我用RelativeLayout實現,而layouts間呈現的比
例則是在program中控制,防止因為介面解析度不同而有跑版的狀況
[2] 需要在Button中實作bundle service在兩個activities間(A<->B)傳送資訊,這部
分需要實作Parcelable介面來承載資料,並且在B接收到來自A的資料時,須回傳
status code讓A知道
另外有3題是面試當天回答,至於這三題在我看來不太有所謂的標準答案XD,因為可以
實現的方式很多種,應該是要測試面試者的表達以及問題survey能力:
[1] 要如何實作一個功能: 產生 2 個 QRCodeA 及 QRCodeB,在自己開發的App內掃描
時,QRCodeA會顯示出文字"QRCodeA",QRCodeB 會顯示出文字"QRCodeB",但其他
App 掃描時這 2 個 QRCode 時皆會連到某個指定網站
[2] 請問如何知道 Android 手機上是否同時安裝了自行開發的 Library 及 App,而
且Library 未來會持續給其他 App 使用?
[3] 試說明smart phone和server間會如何分配工作?
面試過程: 面試是在咖啡廳地下室舉行,幾乎公司所有幹部都會出席面試,一開始我
先自我介紹以及展示android作品及app上架連結,並由各位幹部針對我的作品提問,
這部分會需要我大概說明作品設計的願景以及內部實作的演算法過程,那很多問題其
實以前在校時就已經被質疑過XD,所以回答起來滿得心應手的。再來則是在白板上講
解我的碩士論文,這部分為讓大家更容易理解我用了一個比喻來說明整篇論文大致上
在做什麼事,畢竟有申請專利,技術細節我不便透漏太多,這部分由CEO來challenge
我的論文,彷彿重新被口試了一次。產品經理端詳了一下我的履歷,開始問我的社團
經驗,讓我有點訝異,因為上面有寫部分投資經歷,catch到財經系畢業的經理眼光,
開始問我做過那些財務投資?是否有過財務操作經驗?不過這樣一講似乎是關公面前耍
大刀,對方是專業人士> <,迅速快把話題轉回最後的重點 - 3題面試作業題
針對[1][2]題,我survey了android document一陣子,一般實作QRcode都會使用到
open source library,如果要辨認是否為自家開發的app,照理講可以透過辨認app
instance id來實現,這部分可能需要使用Instance ID Cloud Service來達成,因此
當時我的回答是修改library,並紀錄instance id是否為自家註冊的app,藉由這種方
式影響QRcode的掃描結果,相同的方式也可以用在[2],但是我想除以上我所使用的方
式外應該還有另類方式可以實現,只是我不是太資深的人,只能自己啃文件找答案,
最後一題其實我沒有真的看得很懂它想問的,不過我大略是採取比較安全的回答,解
釋client/server間運作可能需要自定義的api來協調彼此的task,這我有用到android
作品當解釋範例,說明app和後端server要如何處裡資料傳輸的加密和資源設定。其實
這題攻擊範圍很廣,看當下面試者希望如何表達題目的要求,最後就開始聊公司的規
模, 願景, 目前現有的無線充電服務服務等,結束這場面試,人資說錄取會1周內通知
結果: offer get,老實說我有點訝異,因為是過了十幾天後才收到通知XD,原以為這
職缺已經被其他senior的人搶走了> <,不過因為收到通知時手上已經有offer,在綜
合考量後還是沒有接受,不過很感謝他們願意給我這新人一個機會,畢竟這是一家新
創,薪水介於 N ~ N+10K 這個區間。
另外尚有其他5家面試心得未發,未完待續...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 182.235.201.72
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1478494372.A.792.html
→
11/07 13:14, , 1F
11/07 13:14, 1F
※ 編輯: aplmnbvcxz (182.235.201.72), 11/07/2016 13:42:36
推
11/07 13:46, , 2F
11/07 13:46, 2F
※ 編輯: aplmnbvcxz (182.235.201.72), 11/07/2016 13:51:54
→
11/07 14:03, , 3F
11/07 14:03, 3F
→
11/07 14:06, , 4F
11/07 14:06, 4F
→
11/07 14:07, , 5F
11/07 14:07, 5F
→
11/07 14:07, , 6F
11/07 14:07, 6F
→
11/07 14:07, , 7F
11/07 14:07, 7F
→
11/07 14:07, , 8F
11/07 14:07, 8F
→
11/07 14:10, , 9F
11/07 14:10, 9F
→
11/07 14:14, , 10F
11/07 14:14, 10F
→
11/07 14:15, , 11F
11/07 14:15, 11F
推
11/07 14:37, , 12F
11/07 14:37, 12F
推
11/07 15:11, , 13F
11/07 15:11, 13F
→
11/07 15:12, , 14F
11/07 15:12, 14F
→
11/07 15:17, , 15F
11/07 15:17, 15F
→
11/07 15:17, , 16F
11/07 15:17, 16F
→
11/07 15:18, , 17F
11/07 15:18, 17F
推
11/07 15:22, , 18F
11/07 15:22, 18F
→
11/07 15:22, , 19F
11/07 15:22, 19F
推
11/07 17:02, , 20F
11/07 17:02, 20F
推
11/07 20:07, , 21F
11/07 20:07, 21F
推
11/07 21:58, , 22F
11/07 21:58, 22F
推
11/08 01:00, , 23F
11/08 01:00, 23F
推
11/08 01:22, , 24F
11/08 01:22, 24F
推
11/08 09:36, , 25F
11/08 09:36, 25F
推
11/08 09:59, , 26F
11/08 09:59, 26F
推
11/08 13:07, , 27F
11/08 13:07, 27F
推
11/08 15:36, , 28F
11/08 15:36, 28F
→
11/24 10:50, , 29F
11/24 10:50, 29F
→
11/24 10:50, , 30F
11/24 10:50, 30F
推
02/25 22:39, , 31F
02/25 22:39, 31F