读《软技能:代码之外的生存指南》有感

我在无意中翻到了《软技能》这本书,大概浏览其目录后,觉得这本书能给我相当多的启发,这就是这篇文章的由来。首先我会概述下《软技能:代码之外的生存指南》这本书每个章节要解决的问题,然后我会直接输出干货给出答案,这些答案都具有可执行性,以此为鉴让自己更快的行动起来。

《软技能:代码之外的生存指南》概述

《软技能》这本书来自于外文翻译,最早是2016年出版的,豆瓣评分8.0,来自于1381人的评价。整体来看,这本书的质量比较高,书名的英文是Soft Skills: The software developer’s life manual,其实就是程序员的生活手册。这本书总共71章,分为:职业,自我营销,学习,生产力,理财,健身,精神7大模块。如果我计划一周之内读完,则我需要每天读完一个模块,这本书总共370页,即我每天需要读53页左右。然而实践下来,我发现第一周自己只阅读了1~3模块。没有达成目标的一个主要原因是中间好几天没有阅读了,习惯的养成真的很难。

1. 职业

  我们需要关注的一个重要问题是我们想要什么,为了得到我们想要的,我们需要做什么。做什么,其实就是我们的职业。作为程序员,大部分的人是在一家公司作为雇员为老板工作。很多人不断的跳槽换公司,其实本质上没有改变自己的职业。作为雇员(打工仔),我们的好处是相对轻松,但是缺点也很明显,缺少自由且有收入天花板。其实我们还有别的选择,很可惜大部分人都没想过。一条职业路径是成为独立咨询师,作为独立咨询师你不用在固定的时间去固定的场所工作,拥有空间和时间自由,能够不断做新项目,且具有赚钱的潜力,弊端是你需要自己寻找业务,要打理一切事务的开销,且本质上是从为一个老板服务变成为多个老板服务。雇员和独立咨询师其实都是以时间换金钱,还有一条众所周知的路,那就是成为创业者。创业者其实就是赌徒,成功了赢取白富美走上人生巅峰,输了就得下海干活从头开始。软件开发创业者使用自己的软件开发技能开发自己的产品,拓展自己的业务。创业者的优势是完全自由,巨大的赚钱潜力,能做自己想做的,没有老板,弊端是风险很大,完全依靠自己,需要许多其他技能,可能需要长时间的工作。那我们该如何选择上述三种职业呢?在初期我们会作为雇员,锤炼的技能,让自己尽快成为专家。一旦有机会成为独立咨询师或者创业者,我们应该立即把我住机会。
  作为雇员我们的第一步是选择合适的公司,然后是写简历,面试进入自己心仪的公司。公司与公司是不同的,软件开发者最好选择以软件作为核心业务产品的公司,否者你进入的部门只能是支撑部门不会是业务核心。相应的,你的工资福利也不会特别好。另一方面我们要了解小公司,中型公司和大公司的区别,选择最适合自己的。小公司需要承担多种职责,对工作的影响较大,回报潜力大,但是没办法安静写代码,工作在众目睽睽下,且不稳定。中型公司工作稳定,加班少,但是变化很慢且低下,没有机会使用前沿技术。大型公司有完备的流程和规范,培训机会多,有大型有影响力的项目,但是充斥着官僚主义,做为螺丝钉只负责代码的小部分,很难获得关注。在决定去哪家公司之前,最好先了解下这家公司属于哪种类型。选定目标公司后是编写简历,简历的重点是项目经历,最好以行动-结果的方式描述。然后是面试,面试的过程需要证明自己能胜任对应的岗位,且最好表现自己不怕困难且和公司的价值观相符。面试其实也有捷径可走,如果你拥有优秀的博客,或者做过一些演讲,正好被该公司的员工读到看到,他们可能会对你增加好感,面试有可能变成走过场。进入公司后,我们期望自己获得快速的晋升。想要晋升,我们需要承担更多的责任,做一些引入注目的事情,不断自学专业知识成为问题解决者,同时要尽量避免政治。另一方面,我们要尽快让自己变得专业成为专家。专业应该具有良好的习惯(可以参考《习惯的力量》),追求品质,持续稳定,勇于承担责任,能够坚守正道。
  当我们作为打工仔在公司工作了很长一段时间后,我们可能想成为独立咨询师或者创业者为自己工作。我们可以直接走进老板的办公室告诉他我们要辞职,但这种方式是不明智的。在辞职之前我们必须做好准备,首先我们要有一定的积蓄保证在辞职之后,自己的业务产生收入之前这段时间的生活花销。同时,对于辞职之后的时间,我们要有明确的计划,具体的详细安排。其实最好的方式是当我们在职时就启动自己的副业,当副业有气色时我们再辞职。副业既不会让我们经济窘迫,又能让我们为自己当老板做好准备,同时能锻炼我们高强度工作的能力。我们需要计算下我们真正工作的时间有多长,上班时我们需要开会,处理邮件,谈话,还会偷懒拖延,真正处理工作的时间可能只有4个小时不到。为自己工作时,我们也需要处理其他业务,我们不能假设工作时间只有8小时,在其他时间我们其实也需要处理工作问题。因此,我们需要合理评估自己真正在努力工作的时间。
  获得自由之后,我们需要开启属于自己的事业。作为软件开发人员,我们不仅能开发软件程序,还能出视频教程和书籍等信息产品,我们需要打开思路。通常来说,我们第一步是找到用户需求,而不是立即着手开始制作产品,我们需要保证自己的产品有人需要。我们可以从身边的朋友开始,询问他们是否遇到什么困难,你能提供什么帮助,可以以邮件或者电话的方式询问。如果没有从身边的朋友身上找到突破口,可以试试在网上找。其实,最好的方式不是自己去到处寻找客户,而是客户能够慕名而来。这就是我们后面提到的自我营销,每个软件开发人员都应该有自己的博客。我们在博客上频繁发表高质量的问题,肯定会被很多人浏览,然后他们会评论,会转载,会关注。如果能拿到他们的联系方式,可以把他们发展成自己的客户。

  1. 写代码的职业路径?
    雇员 -> 独立咨询师 -> 创业者

  2. 如何在雇员岗位做好?

  • 不断改善简历,用行动-结果描述个人经历,通篇校对。
  • 面试之前如果面试官读过你的博客,或者与你探讨某个问题,他对你有好的印象,你的面试基本就通过了。另一个好的方式是,与该公司的人员建立紧密关系,获得个人推荐,再面试。在面试过程中必须证明自己能胜任工作,且让面试官感觉你能干且不怕困难。
  • 知道自己的定位,例如是Java后端开发,且在这个领域不断深入钻研,专才比通才更受欢迎。
  • 公司与公司是不一样的,尽量选择以软件开发为业务的公司,大中小公司的区别明显,选择适合自己的。
  • 职业晋升需要做到:承担更多的责任,引人注目,自学,成为问题解决者,尽量避免政治。
  • 成为专业人士:良好的习惯,坚守正道,追求品质,完善自我,持续稳定,不惧怕承认错误,勇于承担责任。
  • 辞职之前应该找到下家,积攒的钱能够负担找到下一个岗位的基本开销,对辞职之后有明确的行动计划,在职时开始副业,分析真正的工作时间为副业准备,计算自己的离职时间。
  1. 如何开启独立咨询师之路

2. 自我营销

3. 学习

4. 生产力

5. 理财

6. 健身

7. 精神

程序员的困惑和解决之道

走好以后的路

自我营销:博客,开源代码,出书,极客时间,公众号运营,B站视频

 Share!

 
comments powered by Disqus