你的知識死角不能否定你的技術能力

caiyongji發表於2018-05-28
有些事情你不知道,但你一定能解決。

  有些人通過我賬號資料裡的微信加我,然後問我一些所謂“怎麼辦”的問題,不是我不告訴你,而是我確實不知道。我確實有很高的title,也確實有很多的技術積累,但我並沒有達到知識的“百寶盒”的水平。

  換個角度重新說這句話“這麼簡單的問題你都不知道,你配得上你的title嗎?”

 技術能力

  我們放下技術先不談,只說能力。當你同時面對工作進度緊張,家裡事務繁瑣,你是如果做時間管理的?當你面對20個offer,需要做出選擇時,你是如何量化對比企業特點,找到最適合你的那一個?當你的schedule堆的滿滿的,你肯定完不成所有事務時,你是如果設定優先順序的?當你發現很多方法都能達到你要做的目的,你是如何尋找最優解的?當你的女朋友們吵得不可開交時,你是如何調和的?(咳咳……)

  同樣的問題,有些人覺得有100種解決辦法,有些人卻覺得窮途末路……

  毫不客氣的說,思維角度的多少(暫理解為同一問題解決辦法的多少)決定一個人的成就。至於思維懶惰的人,對不起,你沒有入場資格。

  那些“進步青年”們每天進行效率/技術/英語/商業/投資等各種各樣的自我提升,而有些人卻連一個標記的清清楚楚的Exception都解決不了。

  我寫文章不是為了對別人的人生指手畫腳的,也不是為了騙大家點廣告或者買技術課程的,我希望我的讀者能夠有所收穫,認清不足,成就更高的層次。我在分享思維

  那麼回過頭來說技術。如果你遇到一個問題,恰巧你之前解決過,那麼你會在1秒內知道解決辦法。那些踩過了無數次坑的人成了這個領域無所不知的專家,甚至有些人覺得成為專家就是無所不知。

  然而,時間是有限的,錢是無限的。(不必反駁,慢慢體會。)這個世界有那麼多美好的事情,你卻在鑽研技術。

  有些技術難點你沒接觸過,你甚至不知道它是什麼,但你一定能解決這個難點。這才是技術專家!

  舉個例子,有個問題能在java層解決,能在sql裡解決,甚至能通過linux shell指令碼解決。你精通java有什麼用?難道要精通java,sql,shell?那如果遇到問題需要python/perl/nodejs/swift...解決呢?也要做到精通嗎?

  如果大家記得《如何成為10倍速程式設計師》裡“按需記憶”的理念,那就把本文所說的理解為“按需精通”吧。

 面試分化

  無論技術多麼強大,經驗多麼豐富的開發者在準備跳槽面試時都要刷一遍題。為什麼?

  舉個例子,BAT喜歡問類似這樣的問題,說說Ajax的底層實現?

Ajax是告訴瀏覽器給我要傳送一個HTTP請求,你給我新開個執行緒去執行下,完事後告訴我一聲,我在其他function中執行後續操作(回撥)。線上程返回結果前,我可以繼續做其他事情。(非同步)

  上面是我經過搜尋,然後總結的答案。在寫本文時,我甚至忘了這個問題的答案,找到我的回答貼上過來的。

  如果這個問題,恰巧就是你的知識死角(你在工作中從沒遇到過),那麼是否代表你的技術能力不夠?

  當然不。

  我不是針對BAT的面試流程做出質疑,我是說包括BAT在內的大多數技術面試流程都是垃圾。

  面試問題應該是類似這樣的,有10個億的訂單資料,如何存在資料庫中?

  其實企業中涉及到多執行緒,大多封裝在企業自身信任的框架中,普通開發者涉及的很少,但大多數面試環節都會涉及。

  如果你因為面試問題觸及到你的知識死角而變成沉迷技術的人甚至失去自信。那我只能說這是當前面試與實際工作的分化造成的整個行業的悲哀。

 最後

  另外,所謂優秀,是遇到問題是有方法和手段來解決。自我提升,就是在積累這些東西。這是本文所想表達的最終目的。希望本文對你有所幫助。

相關文章