讀「40 分,60 分,90 分」

原文連接:前端

http://mp.weixin.qq.com/s?__biz=MzA5MjYyNzY1OQ==&mid=2650901947&idx=1&sn=89af64d3b0dec01587f14aab15e62b9a#rdnode

 

40 分,60 分,90 分面試

原創 2016-05-27 汪海 汪海的實驗室
npm

背景

最近在微博上看到有人說,找工做太難了,面試官要求還高,才大三就問會不會這個框架那個框架的,而且表示平時項目機會少, jQuery Bootstrap 這種基礎框架基本夠用了,而如今爲了找實習不得不被逼着學一些時髦的名詞。編程

看到這段話,我不由想起之前和公司的同窗們說過的『任務』和『打分』的事情。前端框架

在此提早鄭重聲明,本文純屬我的觀點,
胡編亂造不講道理,沒有任何科學依據。微信

打分

若是一個任務,滿分是 100 分,完成這個任務能夠獲得多少分?cookie

40 分。框架

是的,一個任務,若是隻是完成任務提交代碼,那就只能獲得 40 分。dom

對業務作分析,對代碼作優化,查閱資料尋求最優解,將已知任務作到極致,能夠獲得 60 分。

熟悉開發過程當中涉及到的技術細節,圍繞知識點進行擴展和了解,思考總結整個過程當中存在的問題並逐步優化,能夠獲得 90 分。

40 分

40 分是最基礎的得分,衡量標準是:任務是否完成。

要點

主要有如下幾點:

業務理解透徹。清晰的瞭解任務的難點和重點
自我測試充分。各類狀況考慮周全,作好自測
代碼質量過關。全部代碼均是本身當前階段的最高水平

1. 關於業務理解透徹,不少的時候,是否是和人溝通的問題?

2.自我測試充分,我想,這個也很難。通常開發並非以TDD來開發的。還須要配備專業的測試人員。測試越充分,須要花的時間也就越多。


舉例

好比任務是:爬取微信公衆號的文章。40 分大概是這樣的:

輸入1個公衆號名稱,輸出公衆號最近的10篇文章和它們的閱讀數、點贊數、評論列表。
輸入10個公衆號名稱,輸出全部公衆號的所需內容,解決搜狗反爬蟲問題。
輸入1堆公衆號,每隔1分鐘爬取一次,持續5小時,解決驗證信息過時的問題。
這些是爬取任務中的基礎問題,所有解決纔算是完成任務。

60 分

60 分是及格分,除了完成基礎的任務需求外,還進行了一些深度上的探索

這些深度上的探索,若是就業務來講,通常是不夠在上班的時間內完成這項任務的。

每一項擴展,都須要去本身動手實踐,須要去查閱資料,像這樣的深度和光度也是一個難以平衡的地方。

要點

主要有如下幾點:

熟悉涉及的技術細節。完成任務是一個很好的學習渠道,在開發過程當中會有機會接觸到不少新鮮事物,不要放棄任何學習的機會。
對比學習尋求最優解。在開發的過程當中作好調研,比較各類解決方案的優劣,尋找最合適的解決方案,並學習其餘解決思路中的可取部分。
舉例

好比任務是:爬取微信公衆號的文章。60 分大概是這樣的:

瞭解爬蟲系統常見的問題,好比模擬 ua 、同步 cookie 、解析 dom 等等,而且熟悉這些常見問題的解決思路,瞭解各類解決思路的優劣。
清楚常見的反爬蟲手段和應對措施,好比封 IP 和代理池、好比驗證碼和打碼平臺,查閱相關資料和其餘人的分享學習相關內容,對比總結。
嘗試使用不一樣的編程語言和可用於爬蟲的工具,好比 PhantomJS 、Scrapy 等等,對比學習不一樣語言和框架的適用場景,總結通用部分和各自的獨有特色。
閱讀業務相關的開源優秀源碼,學習常見的爬蟲技巧,培養良好的編程習慣,並將學習所得應用到項目裏。
思考當前業務代碼中的不合理部分和可優化部分,及時優化代碼中有時間有能力優化的細節。
這些完成後,就這個任務而言,所能作的基本都已經作的很好了,這個任務也就算是及格了。

90 分

接下來就是 90 分了,主要是基於任務相關的技術點,進行廣度上的擴展。

要點

主要有如下幾點:

對涉及知識的擴展。圍繞任務不斷展開逐步發散,觸類旁通地瞭解、學習、再瞭解、再學習,對技術細節進行擴展和延伸,對所學內容進行思考和總結。
對開發過程的總結。回顧任務中的問題和收穫,總結整理,提升自身能力,提升學習技巧,每一次任務都是自身學習的機會,不要徹底沉溺於業務自己。
舉例

是否是又覺得我要舉爬蟲的例子了?

嘿嘿嘿,我不舉。

以咱們最近在作的智能炒股軟件爲例,90 分大概是這樣的:

瞭解當前所用的跨平臺解決方案,對比 PC 端 Electron、React Native、wxPython、Xamarin 等方案的優劣,在學習 Electron 的過程當中瞭解 NW.js ,在學習 NW.js 的過程當中瞭解 node_bindings ,在學習 node_bindings 的過程當中瞭解…
瞭解項目中所用的前端框架,把玩 VueJS 、 AngularJS 、ReactJS 等框架並瞭解各自特色,在後面工做中能夠根據業務選擇合適的框架,在學習 VueJS 的過程當中瞭解 Ember、Polymer、Riot、WebPack、Gulp、Grunt、Bower、Babel、ES六、Rollup…
瞭解股票的基礎技術指標,熟悉 MACD、KDJ、BOLL、EMA 等常見技術指標的用法和計算公式,瞭解如何使用 JS 進行數據運算,接觸並瞭解 numpy、pandas、scikit、tushare、ta-lib 等庫,查閱 npm 中的相關類庫狀況,思考 Python 爲什麼適用於大數據運算,對比 C++、NodeJS、Python 在不一樣數量級數據處理任務中的表現…

應該來講,這個90分的話,花的時間就須要比較長了,上面提到了每個技術都去學習,業餘時間還有嗎?

因此這90分算是一個資歷分,至關與在一個領域兼具了至關的廣度和深度。


小結

好了,以上,就是我心中的40分、60分和90分。

實際工做中,作到60分已經至關不容易了,可是仍是必需要以90分的標準要求本身。就算是作到了90分,還有3分天註定呢。況且有些人連40分都打折扣。

各位,加油吧。

瞎掰

有人吐槽應屆生找工做太難,有人糾結要不要出國可是又怕太苦,有人感慨世事無常技術圈變換太快跟不上腳步,有人埋怨面試官要求過高彷佛針對本身,有人不解爲何本身上了這麼久的學打了這麼久的工可是仍是毫無長進,說到底,都是懶。

懶得追求卓越,懶得苛求完美,心中沒有必勝的信念,眼裏沒有求生的渴望,不淘汰你淘汰誰?

其餘

你不以爲好奇嗎?

爲啥沒有100分?

由於怕你驕傲呀。

微信掃一掃 關注該公衆號

相關文章
相關標籤/搜索