最近读了一本不是编程的程序员技能书《软技能-代码之外的生存指南》,全书分为7个篇章,分别是职业、自我营销、学习、生产力、理财、健身和精神。
在读完职业、自我营销和理财这三个篇章后,让我感触很深,也让我很意外。
本来以为国外的软件环境会与国内不同,现在看来很多情况都很类似。下面会着重围绕这三个篇章展开讨论。
职业篇
像企业一样思考
大部分人(包括我在内)都是抱着打工者的心态在企业上班,这并没有什么错,只不过正像作者所说的会固化自己对职业生涯的思维方式,从而将自己束缚住。
接着作者提出像企业一样思考,企业需要有能够赚钱的产品或服务,而大多数程序员卖的正是开发软件这项服务(即把一个想法变成一个数字化的现实产品)。
在宣传这项服务时,不仅要传达它所具备的有形价值,还要传达它与其他成千上万款同类服务有何不同,必须让潜在客户了解该服务。
你需要规划自己的职业生涯,注重自我营销,设法提升你的服务,专注为特定类型的公司或行业提供服务,集中精力成为一名专家。
改善人际交往能力
很多人对程序员的印象是木讷,不善言谈,这可能与我们的工作有关,程序员常和计算机打交道,喜欢安静的写代码,醉心于数字世界。
但事实上,所有的职业都是与人打交道,包括程序员,例如开会、收发邮件、需求讨论等。由此可见,改善人际交往的能力至关重要。
作者介绍了一些应该了解的能提升该项能力的基本概念:
要意识到每个人都是以自己为核心,并且都觉得自己最重要。
永远不用批评别人,管住自己的舌头只说些鼓励的话。
换位思考,对他人而言什么才最重要,什么才是他们需要的。
避免争吵,学会控制和隐藏负面情绪。
破解面试之道
作者大胆的提出了大多数面试官决定雇佣某个人其实是基于各种各样的非技术因素的观点。
当多个技术过硬的技术人员竞争同一个岗位时,决定胜负的 因素已经不再是技术能力了。
通过面试最快捷的方式是让面试官对你有好感,达成该目标的方法大多数可以在面试之前完成。
接下来作者提出了几个新颖的方法:
花时间研究这家公司,找出这家公司技术人员的博客,在文章中留下深思熟虑的评论,让这些人认识你。
从期待加入的公司中找到介绍人,与他建立友谊从而获得推荐,作者为了接近公司的经理,就加入了他所在的俱乐部,从而认识了他。
面试的时候,要集中精力证明自己是无需督促就能自动自发做好事情的员工。
当下可做的是阅读技术书籍和博客文章,并花时间提升自己的技能,或者未雨绸缪,拓展自己的社交圈子,认识本领域的其他技术人员或招聘人员。
软件开发人员
在一个专业方向上拥有专长,不要担心成为专才后,潜在雇主和客户群会变小,也不必担心市场会过渡饱和。因为专业化程度越深,获得这些机会的可能性反而会越大。
例如专攻JavaWeb开发栈,也许会把工作机会降低到50个,但可供挑选的机会依然很多,同时因为现有的技能和知识都是针对这些工作的,于是获得这50个工作中的某一个的机会反倒会增加。
作者给出的专业领域分为Web开发栈、嵌入式系统、操作系统、移动开发、框架和软件系统。
下面列出一些技巧来选择自己的专业:
公司里有哪些主要痛点?你能成为一名专门解决这些痛点的专家吗?
有没有一种特定的工作是无人能及,或者缺乏经验丰富的人?
在各种会议上和用户组中哪些话题最常出现?
哪类问题你回复的最多?
选择小公司还是大公司
小公司和创业公司通常全国重点白癜风专科医院北京什么医院是专业的白癜风医院