面試問答
goroutine channel 個別是什麼
channel 與 ...
面試流程只有一關。
同時會有 HR, Tech pm, CTO
先由 HR 開頭介紹公司,及請你自我介紹。
接
下來是 Tech pm 進行一系列的技術相關的提問。
再來是 CTO 進行 Behavior interview
最後是跟 HR 聊待遇的等等問題
面試問答
goroutine channel 個別是什麼
channel 與 goroutine 是互相搭配的, main function 本身就是一個 goroutine,另外可以使用 go func 創造 goroutine,可以想像 goroutine 是一個異步的 function,然後搭配 channel 使用,來傳遞資料。
goroutine thread 差異
在 Go 語言中,goroutine 非常類似於執行緒,他運行的方式是透過多工的方式並行,本質上一個 goroutine 是單執行緒,而 thread 屬多執行緒,每個執行緒之間屬於同步機制,同時運行是以經典搶佔多工方式運作。
golang interface 是什麼
interface 其中一個功能就是可以使用 interface 定義行為,也就是說 interface 中可以定義一些方法來表示一個對象的行為。
Golang 的 GC 是什麼
這題,我沒有很懂細解,所以只為回答說 golang 是透過 三色標計法,來標記資源,然後在依據顏色進行回收。
延伸問題是如何強制回收。
這題我不知道,所以我就反問,那請問該如何執行呢
對方直接回應我:我們直接進行下一題的問題吧,不要花時間再討論。
Mysql 中的 indexing 如何運作
我回答說 Mysql 的 indexing 是透過 btree 來實作的
在針對 table 進行 create or update 的時候就會觸發,但可以透過某些參數來延後觸發,進而加速寫入
但對方回問我說 table tree 跟 index tree 分別是怎麼運作。
我當下就覺得很怪,好像沒有這樣的東西啊?所以我就回答:我不知道,我沒遇過這種東西。(我面試後,有再去查資料,但依然沒有查到,如果網友知道的話,煩請不吝分享。)
該如何兼顧開發品質跟速度 from CTO
這兩者的前提是,需求是否明確。
需求明確後,再延伸去討論,有多少時間做多少事情。
進而去權衡最終的做法為何。
面試建議
Behavior interview 的部分我沒有記得很多。
但技術問題大部分都有記錄下來。
還有一些系統設計的問題:
像是當資料庫規模大到一定程度時該如何處理。
該如何用微服務的方式設計架構。
面試下來的感覺有種對方很趕的感覺,要很快地進行完流程。
所以體驗上並不是太好。
這是我主觀的感受,對於未來要一起共事的同事,無法互相討論,感受上不是太好。
但也能理解面試時間有限,要把握時間有效率的問題。
建議就是,要把名詞解釋背熟,面試前多閱讀相關資訊。
解鎖 1173 字完整內容
51 人已看過