後端工程師面試考什麼 - ACID 篇
隨著資訊技術的發展,工程師的面試越來越五花八門,面試過程問什麼都不足為奇,不過仍有些問題能夠事先準備,這些問題不僅常問也很實用,除了能夠應付面試之外,也能增加個人實力。 本文記錄後端工程師面試時經常會問到的資料庫 ACID 原則,並以實際範…
14 篇
隨著資訊技術的發展,工程師的面試越來越五花八門,面試過程問什麼都不足為奇,不過仍有些問題能夠事先準備,這些問題不僅常問也很實用,除了能夠應付面試之外,也能增加個人實力。 本文記錄後端工程師面試時經常會問到的資料庫 ACID 原則,並以實際範…
快取(Cache)也是經常會被問到的經典題目。
面試時,每當談到平行處理(parallel processing)、多執行緒(multithreading)、多行程(multi-processing)之後,通常都會衍生一些關於 race condition 的問題,也可稱為 race h…
談到快取,一定會談到 Cache 的置換策略,也就是快取滿了要怎麼處理的問題。 理想上,能將所有資料都快取起來的話,就可以有效加速系統回應時間以及減輕資料庫負擔,但這是相當耗費/浪費系統資源的作法,除了系統資源有限之外(記憶體有限、儲存空間…
在程式設計中,平行處理可能會同時訪問共享資源,這樣就可能導致共享資源的競爭與執行結果不一致等等問題。 為了避免這些問題,就需要使用 lock 進行同步,保證在同一時間只有一個執行緒或 process 能夠存取共享資源。 所以在面試中,許多面…
後端工程師日常不僅要跟程式、作業系統、架構搏鬥,也要跟資料庫(database)打交道。 資料庫的類型也隨著時代演變越來越多,除了 NoSQL, In-memory database 之外,面試過程最常聊到的還是關聯式資料庫(relatio…
隨著前後端技術演進,姑且不論是否採用微服務(microservice)架構,前後端分離成為越來越常見的開發模式,例如前端採用 NEXT.js 等框架,或者編譯成靜態網頁(static site)部署在雲端,所需要的後端 API 功能則是呼叫…
後端工程師的面試關卡,除了基本的程式設計之外,常見的一關的就是系統設計,堪稱後端工程師的申論題,沒有絕對的標準答案,但有好答案與壞答案之分。