面試日記 - 一場自己講的七零八落的線上面試,真的也是種經驗。
InterviewMay 24, 2023

image

今天去面試的大略狀況

是台中的一間博弈產業公司,特別開設的全遠端的職缺。

該公司屬於大家認知上的那種博弈,面談過程就是自我介紹之後,彼此做一些了解以及口頭上的技術測試,
很多基本的東西我(比如 Box-Model)一時忘記名詞 ,講得是有多七零八落就多七零八落,我內心很無言 😰

面試結果

Get Offer

因為還有一些面試行程要跑,所以我還沒回覆,目前暫定 6/7(三) 前要給回應,到時再更新狀況。

筆試題目複習

題目沒有完全記得很清楚,我大致上描述,盡量還原題型。

請描述一下 Box-Model 是什麼

我第一個念頭想說,是不是在問我 Pop-up、Light-box 的概念,如果要跳出一個燈箱或提示訊息我會怎麼處理?
那跟面試官確認了一下知道是自己誤會大了,其實就是 CSS 的盒模型,也就是區塊元素的組成是如何組成?

那大概描述一下,由內到外分別是 Content > padding > margin (這邊我回答時少講了border)

請描述一下,CSS排版時,要如何做垂直置中

我這邊是先向面試官確認,是這側的置中抑或是這側的置中?(比手畫腳),那面試官比給我的是"水平、垂直"都要置中

我大致上描述可能有哪幾種方法:
{
    display:flex;
    justify-content:center;
    align-items:center;
}

{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

請描述一下 https 跟 http 的差異是什麼

我還一時半會真的不知道要怎樣描述https,全世界都知道他加密,但它原理是怎樣啊? (內心吶喊 : 好想 Google)

我大概描述了一下:
基本上HTTPS 比起 HTTP 就是多了加密形式去傳輸資料,
比如說我在表單送出資料之後,如果被攔截應該也會是亂碼之類的。
至於加密的原理跟詳細方式,老實說我不太清楚。

// 這邊後來Google了一下資訊,也幫大家做個補充。
HTTPS的基本原理就是 HTTPS 使用加密協議來加密通信。
該協議稱為傳輸層安全性 (TLS),以前叫做 SSL。
該協議通過使用所謂的公鑰基礎設施來保護通信。
這種類型的安全系統使用兩個不同的密鑰來加密兩方之間的通信。

參考來源 - AWS上關於http以及https的差異
參考來源 - 熊貓先生
參考來源 - YoJanni的轉職前端筆記本

請描述一下一個網頁如果 console 噴錯了,你大致上排除錯誤的流程會是如何?

這邊我是描述說:
大致上會先看一下錯誤訊息是噴什麼,有沒有什麼低級錯誤,
然後才去確認看看是哪個 function 或是源頭在哪,
確認一下是前端功能的問題還是在 Call API 回來時沒處理好的問題,
可能非同步的部分有疏忽了,導致資料還沒確定取得時,
所寫的功能就跑了一些方法導致噴錯。這邊突然想到TS想說也順便描述一下,
但TS應該在編譯前就會噴錯。 // (面試官也有回應我這點,是我這裡疏忽了)。

過往有沒有遇過什麼狀況是自己排除不了,問了同事之後,甚至也問到主管之後,還是沒辦法解決的話,要怎麼處理?

這邊我是如實描述說:
過往還沒有遇過真的都問到主管那端,還沒辦法解決的問題,
基本上遇到問題會先盡量去排除狀況,到方向比較明確之後,
才去問資深的前輩,還是不行才會到主管那邊。

有沒有遇過 CORS 的問題?怎麼處理的?

這邊我是回答:
基本上如果遇到 CORS 的問題,我會先和後端確認一下是不是沒設定好,
那假設今天開發上,的確需要有跨來源的請求,
那應該是需要透過反向代理伺服器去和後端Server發請求,
也就是前端改為向反向代理伺服器發請求而不是直接向後端Server發請求。

有客製化過什麼hook嗎?

這邊是提到說:
過往有把一個撈資料用的功能,比如說 Fetch 某支 API,
把非同步的功能都寫好之後,包成一支 useFetch(),
那團隊可以引入這支功能,一起使用

主要是避免其他人有非同步沒處理好的問題。

// 但後來想想應該是想知道說,如何複用一些功能,而不是該功能在做什麼。

面試反省

這次面試的時候稍微有點緊張,很多問題跟面試官有點牛頭不對馬嘴,一方面是第一次在線上面對多個面試官,一方面自己近期都沒在使用前端框架開發東西,很多原裡已經不太熟悉,所以之後首要就是先去熟悉以前的基本功?!