摘要:在創(chuàng)業(yè)初期,你招來的工程師必須是能夠獨(dú)當(dāng)一面的大神隊(duì)友。要評(píng)估一個(gè)應(yīng)聘者的真實(shí)水準(zhǔn),最佳方式就是結(jié)對(duì)編程。用微博的抓取消息并顯示在時(shí)間線上,就是個(gè)很好的考察應(yīng)聘者的面試項(xiàng)目。不過結(jié)對(duì)編程再好使,也沒辦法讓你完全了解一個(gè)應(yīng)聘者。
原文鏈接:10 Interview Questions Every JavaScript Developer Should Know
對(duì)大部分公司來說,招聘技術(shù)人員這種事情,管理層就應(yīng)該放手交給技術(shù)團(tuán)隊(duì),只有他們才能夠準(zhǔn)確地判斷應(yīng)聘者的技術(shù)實(shí)力。如果你恰巧是應(yīng)聘者,你也是遲早都要去面試的。不管你是哪邊的,都讓大哥來教你幾招。
大兄弟們,要收藏,也要點(diǎn)贊吶。以人為本
在 How to Build a High Velocity Development Team 一文中,我提出了一些觀點(diǎn),我覺得這些觀點(diǎn)很重要,所以在這里再重復(fù)一遍:
優(yōu)秀的團(tuán)隊(duì)才是決定公司業(yè)績(jī)的關(guān)鍵,一家公司要想于逆境之中仍能有所建樹,最重要的就是得先培養(yǎng)出一只優(yōu)秀的團(tuán)隊(duì)。
就像 Marcus Lemonis 說的,有三點(diǎn)(3 個(gè) P)最重要:
員工(People),流程(Process),產(chǎn)品(Product)。
在創(chuàng)業(yè)初期,你招來的工程師必須是能夠獨(dú)當(dāng)一面的大神隊(duì)友。他最好能夠幫著招聘工程師,能指導(dǎo)其它工程師,還能幫初級(jí)和中級(jí)工程師解決各種問題。這樣優(yōu)秀的隊(duì)友,無論何時(shí)都多多益善。
要想知道面試應(yīng)聘者時(shí),有哪些常見的注意事項(xiàng),可以讀讀 Why Hiring is So Hard in Tech 這篇文章。
要評(píng)估一個(gè)應(yīng)聘者的真實(shí)水準(zhǔn),最佳方式就是結(jié)對(duì)編程(pair programming)。
和應(yīng)聘者結(jié)對(duì)編程,一切都聽?wèi)?yīng)聘者的。多觀察、多聆聽,看看應(yīng)聘者是個(gè)怎樣的人。用微博的 API 抓取消息并顯示在時(shí)間線上,就是個(gè)很好的考察應(yīng)聘者的面試項(xiàng)目。
不過結(jié)對(duì)編程再好使,也沒辦法讓你完全了解一個(gè)應(yīng)聘者。這個(gè)時(shí)候,面試也能幫上很多忙——但是千萬別浪費(fèi)時(shí)間去問一些語法(syntax)或者語言上的細(xì)節(jié)(language quirks)——問些高端的問題吧,大兄弟。問問項(xiàng)目架構(gòu)(architecture),編程范式(paradigms),這個(gè)層面上的判斷(the big desicions)能夠在很大程度上影響一個(gè)項(xiàng)目的成敗。
語法和語言特性(features)這種小知識(shí),Google 一搜一大把,誰都會(huì)。而工程師在工作中所積累的軟件工程方面的經(jīng)驗(yàn),以及個(gè)人常用的編程范式及代碼風(fēng)格(idioms),這些可都是很難 Google 到的寶貴財(cái)富。
JavaScript 很獨(dú)特,它在各種大型項(xiàng)目中都起著至關(guān)重要的作用。那是什么讓 JavaScript 如此與眾不同?
下面幾個(gè)問題,也許能幫你一探究竟。
1. 能說出來兩種對(duì)于 JavaScript 工程師很重要的編程范式么?JavaScript 是一門多范式(multi-paradigm)的編程語言,它既支持命令式(imperative)/面向過程(procedural)編程,也支持面向?qū)ο缶幊蹋∣OP,Object-Oriented Programming),還支持函數(shù)式編程(functional programming)。JavaScript 所支持的面向?qū)ο缶幊贪?strong>原型繼承(prototypal inheritance)。
面試加分項(xiàng)原型繼承(即:原型,OLOO——鏈接到其它對(duì)象的對(duì)象);
函數(shù)式編程(即:閉包(closure),一類函數(shù)(first class functions),lambda 函數(shù):箭頭函數(shù))。
面試減分項(xiàng)連范式都不知道,更別提什么原型 OO(prototypal oo)或者函數(shù)式編程了。
深入了解The Two Pillars of JavaScript Part 1:JS 兩大支柱之一:原型 OO
The Two Pillars of JavaScript Part 2:JS 兩大支柱之二:函數(shù)式編程
2. 什么是函數(shù)式編程?函數(shù)式編程,是將數(shù)學(xué)函數(shù)組合起來,并且避免了狀態(tài)共享(shared state)及可變數(shù)據(jù)(mutable data),由此而產(chǎn)生的編程語言。發(fā)明于 1958 年的 Lisp 就是首批支持函數(shù)式編程的語言之一,而 λ 演算(lambda calculus)則可以說是孕育了這門語言。即使在今天,Lisp 這個(gè)家族的編程語言應(yīng)用范圍依然很廣。
函數(shù)式編程可是 JavaScript 語言中非常重要的一個(gè)概念(它可是 JavaScript 的兩大支柱之一)。ES5 規(guī)范中就增加了很多常用的函數(shù)式工具。
面試加分項(xiàng)純函數(shù)(pure functions)/函數(shù)的純粹性(function purity)
知道如何避免副作用(side-effects)
簡(jiǎn)單函數(shù)的組合
函數(shù)式編程語言:Lisp,ML,Haskell,Erlang,Clojure,Elm,F(xiàn)#,OCaml,等等
提到了 JavaScript 語言中支持函數(shù)式編程(FP)的特性:一類函數(shù),高階函數(shù)(higher order functions),作為參數(shù)(arguments)/值(values)的函數(shù)
面試減分項(xiàng)沒有提到純函數(shù),以及如何避免副作用
沒有提供函數(shù)式編程語言的例子
沒有說是 JavaScript 中的哪些特性使得函數(shù)式編程得以實(shí)現(xiàn)
深入了解The Two Pillars of JavaScript Part 2:JS 兩大支柱之二:函數(shù)式編程
The Dao of Immutability
Composing Software
The Haskell School of Music
3. 類繼承和原型繼承有什么區(qū)別?類繼承(Class Inheritance):實(shí)例(instances)由類繼承而來(類和實(shí)例的關(guān)系,可以類比為建筑圖紙和實(shí)際建筑
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/93926.html
摘要:所支持的面向?qū)ο缶幊贪ㄔ屠^承。發(fā)明于年的就是首批支持函數(shù)式編程的語言之一,而演算則可以說是孕育了這門語言。即使在今天,這個(gè)家族的編程語言應(yīng)用范圍依然很廣。 1. 能說出來兩種對(duì)于 JavaScript 工程師很重要的編程范式么? JavaScript 是一門多范式(multi-paradigm)的編程語言,它既支持命令式(imperative)/面向過程(procedural)編程...
摘要:所支持的面向?qū)ο缶幊贪ㄔ屠^承。發(fā)明于年的就是首批支持函數(shù)式編程的語言之一,而演算則可以說是孕育了這門語言。即使在今天,這個(gè)家族的編程語言應(yīng)用范圍依然很廣。 1. 能說出來兩種對(duì)于 JavaScript 工程師很重要的編程范式么? JavaScript 是一門多范式(multi-paradigm)的編程語言,它既支持命令式(imperative)/面向過程(procedural)編程...
摘要:所支持的面向?qū)ο缶幊贪ㄔ屠^承。發(fā)明于年的就是首批支持函數(shù)式編程的語言之一,而演算則可以說是孕育了這門語言。即使在今天,這個(gè)家族的編程語言應(yīng)用范圍依然很廣。 1. 能說出來兩種對(duì)于 JavaScript 工程師很重要的編程范式么? JavaScript 是一門多范式(multi-paradigm)的編程語言,它既支持命令式(imperative)/面向過程(procedural)編程...
摘要:九安卓中如何取出日志信息把安卓系統(tǒng)日志信息實(shí)時(shí)導(dǎo)入到本地運(yùn)行使用某個(gè),實(shí)時(shí)獲取該的日志信息里面的返回信息接口自動(dòng)化面試題一按你的理解,軟件接口是什么答就是指程序中具體負(fù)責(zé)在不同模塊之間傳輸或接受數(shù)據(jù)的并做處理的類或者函數(shù)。 ...
閱讀 3209·2021-11-25 09:43
閱讀 3213·2021-11-23 09:51
閱讀 3526·2019-08-30 13:08
閱讀 1579·2019-08-29 12:48
閱讀 3602·2019-08-29 12:26
閱讀 406·2019-08-28 18:16
閱讀 2572·2019-08-26 13:45
閱讀 2438·2019-08-26 12:15