不思考才是真正的危机

年末各大互联网企业结构调整(裁员)的消息一经放出,“资本寒冬”和“程序员如何渡过中年危机”又被关注。掘金、知乎上也能看到类似的讨论文章。作为一个准大龄程序员,自然我也同样有着焦虑和思考。

是转型管理还是钻研技术?又或者干脆考个公务员上岸?相信答案因人而异。最近在有幸当了回面试官,在面试了几位前端之后,我也有了一些自己的感悟。尽管没能找到渡过中年危机的答案,但是似乎发现了为何会陷入危机的原因——放弃了思考

卡兹最终放弃了思考

前来面试的前端大多在 30 岁左右,大都有着 3 以上的工作经验,项目的经验也都不少,从 jQuery 的时代到 如今 MVVM 的时代。然而却都倒在了框架的原理、高级用法以及 JS 的基础上,其中一些印象令人深刻。

  • 有在项目中用了 React 和 React-router 却不明白前端路由和后端路由的区别以及弄混 render 和 DidMount 顺序的
  • 有对于前端是否应该了解 Restful 规范表示疑问的
  • 有对于 Array.map 返回值不确定的
  • 有未来规划成为前端架构师却说还没了解过 Node 的
  • 有把 Promise 认为就是 fetch 的

而在 闭包、作用域、Redux/Vuex、Event-Loop 等这些基础问题上,更是没有一个人能回答上来的,哪怕是最浅层次的概念。以至于我都被人当成是“钻牛角尖”了。

当被问到上面的一些问题时,面试者的反应基本都是“我平时在用,但是没怎么注意”。究其原因,便是这个没注意,而没注意的背后就是没有思考的体现。

“为什么这个项目用了 Redux/Vuex ?”、“为什么 DOM 操作要放在 DidMounted/Created 里做?”、“Promise 为什么会取代 Callback?” 等等。如果我们在做项目的时候多带个问号,相信在面对这些面试题时也不会是完全没有头绪。

有趣的是,当我们在玩 Dota、LOL 或者“农药”的时候,往往一局过后无论输赢都会复盘和总结一下,看看自己的数据然后想想自己的亮点与失误。如此往复,你就在不知不觉间从钻石成长为了星耀,从星耀成长为了王者。Coding 也是同样的道理,不是吗?

曾经看到一句签名,大意是:

以现在人的努力程度,还根本还轮不到拼天赋

我想这里的“努力”可能就是指在工作生活中自己的思考。这一次的经历也是很好的一面镜子,提醒着我思考的重要性。尽管程序员如何渡过中年危机的答案依旧未知,但至少知道了如果平时可以多问自己几个为什么的话,就能超越那些没有去思考的人。


不思考才是真正的危机
https://konta9.github.io/2018/12/23/2018/不思考才是真正的危机/
作者
Konata
发布于
2018年12月23日
许可协议