# 二面 1:如何回答常见的软技能问题

面试是个技术活,不仅仅是技术,各种软技能的面试技巧也是非常重要的,尤其是程序员一般对于自己的软技能不是很看重,其实软技能才是决定你职场能够走多远的关键

# 程序员应该具备的软技能

程序员除了业务技能外,应该具有下面的软技能:

  1. 韧性:抗压能力,在一定项目压力下能够迎难而上,比如勇于主动承担和解决技术难题
  2. 责任心:对于自己做过的项目,能够出现 bug 之类主动解决
  3. 持续学习能力:IT 行业是个需要不断充电的行业,尤其 Web 前端这些年一直在巨变,所以持续学习能力很重要
  4. 团队合作能力:做项目不能个人英雄主义,应该融入团队,跟团队一起打仗
  5. 交流沟通能力:经常会遇见沟通需求和交互设计的工作,应该乐于沟通分享

另外在《软技能:代码之外的生存指南》这本书里提到了下面一些软技能:

  1. 职业
  2. 自我营销
  3. 学习能力
  4. 提升工作效率
  5. 理财
  6. 健身
  7. 积极的人生观

# 常见的软技能问题和提升

回答软技能类的问题,应该注意在回答过程中体现自己具备的软技能。下面列举几个常见的软技能类的问题。

# 回想下你遇见过最难打交道的同事,你是如何跟他沟通的

一般来说,工作中总会遇见一两个自己不喜欢的人,这种情况应该尽量避免冲突,从自己做起慢慢让对方感觉到自己的合作精神。

所以,遇见难打交道的同事,不要急于上报领导,应该自己主动多做一些事情,比如规划好工作安排,让他选择自己做的事情,有了结论记得发邮件确认下来,这样你们的领导和其他成员都会了解到工作的安排,在鞭笞对方的同时,也做到了职责明确。在项目当中,多主动检查项目进展,提前发现逾期的问题。

重点是突出:自己主动沟通解决问题的意识,而不是遇见问题就找领导。

# 当你被分配一个几乎不可能完成的任务时,你会怎么做

这种情况下,一般通过下面方式来解决:

  1. 自己先查找资料,寻找解决方案,评估自己需要怎样的资源来完成,需要多长时间
  2. 能不能借助周围同事来解决问题
  3. 拿着分析结果跟上级反馈,寻求帮助或者资源

突出的软技能:分析和解决问题,沟通寻求帮助。

# 业余时间都做什么?除了写码之外还有什么爱好

这类问题也是面试官的高频问题,「一个人的业余时间决定了他的未来」,如果回答周末都在追剧打游戏之类的,未免显得太不上进。

一般来说,推荐下面的回答:

周末一般会有三种状态:

  1. 和朋友一起去做做运动,也会聚会聊天,探讨下新技术之类的;
  2. 也会看一些书籍充充电,比如我最近看的 xx,有什么的想法;
  3. 有时候会闷在家用最近比较火的技术做个小项目或者实现个小功能之类的。

这样的回答,既能表现自己阳光善于社交沟通的一面,又能表现自己的上进心。

# 小结

本小节介绍了程序员除了业务技术能力之外应该日常修炼的软技能,在面试中,软技能会被以各种形式问起,候选人应该先了解有哪些软技能可以修炼,才能在回答软技能问题的时候,尽量提到自己具备的软技能。