Skip to content
微信公众号

软技能

软技能是和工作相关,和技术关联性不大的一个问题,但是每次面试都会问到那么一到两个问题,不会很多,而且每个公司问的可能都不会一样。如果你面试问到这个问题了,就说明技术没问题了。这个问题是最后的考察。

为何要考察呢?考察工程师的综合素质和未来可塑性,一般公司招进来不会说只是把你当做工具式的使用,而是看你能不能成为公司的核心技术人才。核心技术人才不仅仅只是技术,还有其他方面。

考察重点有:沟通能力,学习能力,项目参与能力。

例如几个面试题:

  1. 是否看过红宝书
  2. 如何做Code Review?review哪些事项?
  3. 如何学习一门新语言,应该关注什么?

是否看过红宝书?

这本书是JS经典书籍,里面有很多基础和DOM相关的内容,看这本书的人基础都比较扎实。如果你看过,就再次回顾总结一下,比如大体说一下内容,第一章讲什么,第二章讲什么。如果你没有看过,就去看看它的目录,搜一下其他人的读书笔记。其次要注意学习积累,例如看博客、看书、看视频等学习方式。浅层学习看输入,深入学习看输出。

如何做Code Review,要考虑哪些内容?

Code Review就是代码走查,一般是领导或架构师对下属做代码走查,或者同事之间相互代码走查。代码走查是项目研发流程中非常重要的一个领域,但是执行情况不容乐观,在大厂中执行依靠制度,但是在小厂基本上就不执行了,自己写完代码就上线了,老板也不管。

那么Code Review都看哪些内容呢?

  1. 代码规范(eslint不能全检查,如变量命名、代码语义)
  2. 重复的代码要抽离、复用
  3. 单个函数内容过长、需要拆分
  4. 算法复杂度是否可用,是否可优化
  5. 是否有安全漏洞
  6. 扩展性如何?(不用为了扩展而扩展,不封闭即可)
  7. 是否和现有的功能重复了
  8. 是否有完善的单元测试
  9. 组件设计是否合理

Code Review的时机

  • 提交PR(或MR)时,通过代码diff进行Code Review
  • 每周例行一次集体Code Review,例如周五下午

每次Code Review的问题要记录下,归纳整理,形成自己的代码规范体系,新加入的成员要提前学习,提前规避。

如果你之前没有做过Code Review的话,可以记住以上内容,能回答出一个大概。其次也可以作为一个跳槽的理由,想去进步,想去流程规范的团队。

如何学习一门新语言,需要考虑哪些方面?

  1. 它的优势和应用场景
  2. 语法(常量、变量、数据类型、运算符、函数等)
  3. 内置模块和API
  4. 常用的第三方框架和库
  5. 开发环境和调试工具
  6. 线上环境和发布过程

你觉得自己还有哪些不足之处?

最好跟面试官和HR聊技术方面的不足之处,不要聊其他内容,容易掉进坑中。

不足不要乱说,范围限定在技术方面,例如自己爱睡懒觉,不要说。非核心技术栈,不要说Vue学的不太好,那完了,Vue是很核心的技术栈,可以说node学的不好。说一些范围小一点的容易弥补的,后面才能翻身。

反转话题,通过说不足之处,可以说自己正在学习,过两天能学完,有学习态度,进步的精神。例如,我觉得自己在xxx方面存在不足,但我已经意识到,并开始学习xxx,记住一定要说技术方面的。

本站总访问量次,本站总访客数人次
Released under the MIT License.