目录
职业篇
你所能犯的最大错误就是相信自己是在为别人工作。这样一来你对工作的安全感已然尽失。职业发展的驱动力一定是来自个体本身。记住:工作是属于公司的,而职业生涯却是属于你自己的。 ——厄尔•南丁格尔
转变心态
把自己当作一家软件开发企业,把雇主当作软件开发企业的客户,这种诠释雇佣关系的方式可以将你从仰人鼻息的弱势地位转换成为自我治理和自我引导的主动地位,从而能够积极主动地管理自己的职业生涯。
1、提供价值
你能提供什么产品或者服务?如何区别于他人?集中精力成为一名专家,专门为某一特定类型的客户提供专业的整体服务。
2、营销价值
如何能让潜在客户了解该产品或服务?如果只用一句话来描述你能为潜在雇主或客户提供怎样的特定服务,这句话是什么?
设定职业目标
如果不充分思考自己的人生目标,自己该关注什么,我们的行动也就会漫无目标、无的放矢。
人们有时会因为害怕选择错误而犹豫为自己的职业生涯规划一个长远的蓝图,但是不做决策其实也是一种决策,代表着你决定什么都不做——通常这是最糟糕的决策。在生活中,即使选择的是次优的选项或者次优的路径,那也几乎总是比随波逐流的路径要好。
1、树立大目标
可以不具体但是要清晰,能够让你知道自己是在向它前进还是离它越来越远。你希望从职业生涯中收获什么?你希望自己5年或10年后在哪里?想成为一家公司的经理或主管?想在某一天走出去开拓自己的软件开发业务?想成为一名企业家创建自己的产品并将其推向市场?对我来说,我的目标一直都是最终能凭自己的能力走出去,为我自己工作。
2、制定小目标
明确通往大目标的路线,小目标便于及时矫正方向,激励人们朝着更大的目标前进。可以采用逆向思维,想象哪条路径可以让你从大目标反推到你现在的情况?
3、定期追踪目标
便于及时反思调整。
拓展自己的人际交往能力
作为一个软件开发人员,你的工作就是与人打交道(其实几乎所有的职业都是这样)。
1、尊重他人,让他人感觉被重视
每个人都以自己为核心,希望自己很重要,所以在交流过程中,你可以时刻洞察自己将会对人类的这一基本需求有何影响。你往往会发现他们对你的想法充耳不闻,仅仅因为你让他们感觉到自己无足轻重。如果你希望人们接受你的想法,并认可其中的价值,首先你最好先主动给他人以相同的礼遇。如果你不能保全他人的自尊,那你永远也不可能赢得他的心。
2、永远不要批评
奖励积极行为要比惩罚消极行为有效得多。设想当领导对你的错误行为总是报之以直接而又严厉的批评时,你的感觉如何?批评能否让你感到被激励,从而将工作做得更好?不要指望其他人对批评会有截然不同的反应。
3、换位思考
在人际交往方面获得成功的关键在于:停止用“我”和“我想要什么”来思考,你应当开始思考对他人而言什么才最重要,什么才是他们需要的。
4、避免争论
人们通常错误地认为:严谨的推理足以使他人接受你的思维方式。事情的真相是:尽管我们为自己的智慧感到骄傲,但我们依然是情感动物。我们就像那些穿着西装、打着领带、四处游荡的小孩,假装自己已经长大,其实任何轻微的伤害都能让我们号啕大哭,或者大发雷霆,我们只是已经学会了如何控制和隐藏这些情绪。
如果你因为“该怎么做某事”与他人产生分歧,那么在很多情况下,你最好先确定分歧点是否值得你去拼命维护,特别是在你知道它已让他人卷入时。在小事情上,任何放弃立场或承认错误的机会对你而言可能没什么大不了的,但对他人却可能是举足轻重的,这么做不仅能为你赢得不可估量的尊重,也能为你的未来积蓄财富,形势逆转时即可兑现使用。
5、模式控制
模式,即如何看待世界,相信什么是事实。在交流过程中,不同人之间的模式交锋,其中占据主导地位的模式决定对话的主旋律。如果你能够时时刻刻把主导模式抓在自己手中,那你就可以说服人们相信你对现实的感知。
保持对主导模式的方法之一就是不承认任何与你的模式相冲突的东西,将其视为无关紧要的东西,或使其显得荒诞不经。模式控制”并不意味着争论,因为最有效的“模式控制”方法就是假定没有争论的必要。当某人意图挑衅或者压制你的时候,善用“模式”更为奏效,但不要用它来欺负同事以及轻视别人的意见。
创建一份屡试屡验的简历
雇一个熟悉你工作行业的专业写手,或者自己编写,并把简历放到网上。
1、确保雇主能够很容易访问你的简历。
2、简历的展示方式要有创意,样式不落俗套,别人一眼扫过去就会被深深吸引。
3、使用“行动-结果”的描述,展现你都做了哪些工作及相应的结果,让你的潜在雇主了解你以便评估你可以带来的收益。
4、记得校对,简历里有错别字或拼写错误会让人觉得你是个粗心大意的人。
破解面试之道
面试之道的前提在于技术能力的支撑。确保自己一直阅读技术书籍和博客文章,并会花时间提升自己的技能。如果你力所不及,那么世界上所有的面试技巧都不能帮助你找到工作。面试技巧的核心在于让面试官对你怀有好感。与主流观念相反,大多数面试官决定雇用某个人其实是基于各种各样的非技术因素。
1、成为有影响力的博客或者书籍作者,面试官可能会认识你并认可你的成绩。
2、与目标公司内部人员建立真诚的关系。可以通过阅读并评论他们的博客或者其他领域的活动,认识本领域的其他开发人员甚至是招聘人员。想一想你能给对方带来哪些价值,确保你以正确的方式展示自己的能力。
3、增加面试经验。即便你现在对换新工作毫无兴趣,为了获得面试经验,你也要去面试。练习得越多,你在真正的面试时也就越游刃有余。“我是那种能够自觉主动找到自己需要做什么,也能自觉主动弄清楚该怎么做的人。”
软件开发人员的三条职业路径
落入俗套很容易,循规蹈矩也很容易,只要跟其他人做一样的事情就是了。尽管事实上大多数软件开发人员在其职业生涯中只作为雇员为公司工作,但这并非你的唯一选择。
1、雇员
优点:风险低,至少在一段相对稳定的时间内,每个月都可以维持在某个收入水平上。
缺点:缺少自由,收入封顶。
2、独立咨询师
优点:更大的自由度,有一定的赚钱潜力。
缺点:需要自己去寻找业务,打理一切事务的开销,从“为一个老板服务”变成了“为许多老板服务”。
3、创业者
优点:完全自由,巨大的赚钱潜力,做你想要做的工作,没有老板(但可能有甲方)
缺点:风险很大,完全依靠自己,需要许多其他技能,可能需要长时间工作。
走专业化道路
专业化程度越深,潜在的机会就越少,但获得这些机会的可能性越大。只要你专业能力雄厚,市场没有过度饱和,与那些自称为“软件开发人员”的人相比,你能更轻松地找到工作或者赢得客户。
1、列出你能想到的所有软件开发的专业领域。从广义的范畴将它们逐一细化,看看你能细化到多具体。
2、你当前的专业领域是什么?如果没有的话,想想你会选择专攻哪个领域。
3、去主流的招聘网站上看看自己的专业领域市场行情如何。确定一下,专业化道路是会让自己受益,还是过度限制了自己的选择。
这里有一些技巧来帮你选择自己的专业:
1、在你现在或以前工作的公司里,有哪些主要的痛点?你能成为一名专门解决这些痛点的专家吗?
2、有没有一种特定的工作是无人能做,或者缺乏经验丰富的人?成为这个领域的专家,你就会获得大量业务。
3、在各种会议上和用户组中哪些话题最常出现?
4、 无论是针对同事,还是在Stack Overflow这样的网站上,哪类问题你回复的最多?
公司与公司是不一样的
在的从薪资和福利的角度评价一个潜工作机会是很容易的,但是从长期发展和工作环境的角度去评价可能对你更为重要。
1、小公司。
优点:角色灵活,拥有多个头衔,拥有很高的影响力,高回报潜力。
缺点:可能无法安安静静坐下来全身心编写代码,工作在众目睽睽之下,工作绩效一目了然。
2、中等规模的公司。
优点:稳定性高,很少疯狂加班。
缺点:变更的节奏很慢,可能无法接触到最前沿的技术。
3、大公司。
优点:完备的流程和规范,培训机会多,大型有影响力的项目。
缺点:充斥着官僚主义作风,可能只负责代码库的一小部分,很难获得关注。
与雇用软件开发人员但核心业务并非软件的公司相比,软件开发公司会使用更为前沿的技术和工具。如果你想研究新技术,你应该直接去找一家软件开发公司。如果公司的业务重心并非软件,那自然也不会给软件开发人员足够的尊重和发展空间,这些公司的软件开发实践极有可能非常松散。
攀登晋升阶梯
我认识的IT行业人士里有不少人似乎从来就没晋升过。年复一年,他们工作在同一岗位上,停留在同一职位上。我不知道他们是否得到过晋升机会。你认识这样的人吗?这事居然出人意料地常见。如果你不想终老在这条死胡同上,就得做点什么。
1、承担责任
金钱总是追随着责任。尝试负责没有人愿意涉足的项目、帮助团队里的新人快速成长等。
2、引人注目
如果找不到方法让你的老板或高层管理人员知道你在做什么,那你的所有努力都是徒劳的。
(1)每天都记录自己的活动日志——把这个日志以周报的形式发送你的经理。
(2)提供演讲或培训——选择一个对你的团队有用的话题。
(3)发表意见——只要在会议上就这么做,或者只要你能得到的机会就这么做。
(4)保证“曝光度”——定期与老板会面,确保你经常被注意到。
3、自学
(1)报名参加培训课程,或者考相应的资质证书,都能表明你致力于不断提升自己。
(2)不要只学软件开发。如果你把目标设定为更高级别的岗位甚至是行政岗位,你还需要学习领导力、管理和商科的相关知识。
(3)可以通过演讲的方式分享自己的知识,也可以创建自己的博客、为杂志写文章或者写书,还可以在社区活动或者技术大会上发表演讲。外部曝光有助于你建立自己在该领域的权威地位,也让你看起来对所供职的公司更有价值。
4、成为解决问题的人
如果你能解决别人无法解决或不愿解决的问题,无论在哪家公司,你都能轻而易举地成为最有价值的人。
成为专业人士
专业人士的特点:遵守自己的原则,专注于正确完成工作,不惧怕承认自己错了,不会文过饰非,持续稳定,勇于承担责任。
外行的特点:让干什么就干什么,专注于完成工作,不懂装懂,无法预测,不可靠,回避责任。
如果你想改变自己的人生,那从改变自己的习惯开始。专业人士需要养成的习惯:
1、提前准备好自己的发言,并明确自己已经做了什么、计划做什么、有哪些障碍。
2、锻炼时间管理能力,知道每天必须做什么工作,掌控日常任务所需的时间。
3、先对工作的优先级做出判断,再开始工作。
4、不断改善和提高自己的工作品质。如果你在某个领域降低了自己的标准,那么你最终会不经意间在其他领域也降低标准。一旦你越过了底线,选择妥协,就很难再回头。
5、了解自身的强项是什么并且充分发挥自己的优势,对自己的能力和弱点有着良好、精准而又客观的自我评估。
6、持续不断地完善自己的技能。
7、坚守正道。
与同事和老板的相处之道
与老板和同事相处的好坏至关重要,这直接决定了你的工作体验是“乐在其中”(享受着工作环境且步步高升)还是“度日如年”(每天在工位上与惹人讨厌的同事勾心斗角,看不到任何希望,索性躺平)。
1、谁才是你的老板。
不论你技术水平如何,如果你只是公司的一名雇员,那往往是公司或者能代表公司意志的人,来决定你该如何做。你不必再将整个公司的压力和负担扛在肩头,整日执着于如何做出最符合需求的产品,你的工作会变得容易很多,只需在上级规定好的框框里把任务做到最好就行了。
2、学会服从上级。
工作中有大量的冲突都是由于不服从上级造成的。如果你能学会一边表达自己的观点,一边坦然接受最终的决定,你在职业生涯中就可以避免很多不必要的压力和焦虑。这不意味着你要沉默不语、唯命是从,甚至做出有违道德的事。重要的是你要有“要么和老板站在一边,要么就走人”的觉悟。与老板的斗争中失败并承担负面后果的往往是你,无论真理是否在你这一边。
当你意识到自己只是个人微言轻的小卒的时候,抑制住自己反抗的本能,转而服从上级确实是需要勇气的。懦弱的行为恰恰指的是尝试除“与老板站一边”和“走人”之外的其他选项——对抗权威意味着你想在不承担自己行为后果的前提下达到自己的目的。
3、与难缠的老板和同事相处。
首先你要明白,与老板打交道的时候,你的主要工作是让你的领导有面子。生活中有些东西是你能掌控的,有些是你无法掌控的,你能掌控的东西太少了,而你的态度和看法是为数不多你一直可以掌控的东西。
我的观点是,你不必对每件事都上纲上线,尤其是对你无法掌控的事情。你掌控不了他人的看法。你要是真的很讨厌老板,很不喜欢现在的工作,你可以直接跳槽去找下一份工作。但是,如果你决定在现在这个岗位上继续干下去,你最好还是学乖点。所以,不要在意这些细节了,这些都是小问题。
4、在工作中与他人建立相互信赖的关系。
同理心指的是你设身处地、推己及人地为对方着想,而不只是关切别人的感受。你越有同理心就越能与他人感同身受,也就越不会让他人厌恶你。所以,在职场中广受欢迎的秘诀就是思考自己的行为会让周围的人产生怎样的想法。
这并不意味着你要做个受气包,在办公室里跑来跑去讨好他人,只意味着你会顾及他人的想法。要成为那种会说话的人,即便不同意别人的看法,也能用他人可以接受的方式说出自己的看法;要成为那种乐于助人的人,对同事、老板和任何其他人都愿意施以援手;要成为那种做事情不仅要让自己有面子,还要让别人有面子的人。
不要陷入对技术的狂热中
君子不器,没有理由去强烈坚持自己选择的技术就是最好的,而轻视甚至无视其他技术。如果固执己见,最终受损失的是你自己。使用自己一度厌恶的技术工作,让我从不同的视角审视所有的技术。
1、列出你钟爱的所有技术,或者你觉得更胜一筹的技术。
2、针对这张列表里的每一项,想想它为什么吸引你。你都做了哪些比较来确定它确实是“更胜一筹”?你真的使用过它们的竞争对手吗?
3、挑选一门你厌恶的技术,找几个喜欢它的人,开诚布公地讨论为什么他们喜欢这门技术。更进一步,你也试着用用它。
如何辞职并为自己开始工作
如果想辞职为自己打工,需要一个切实可行的计划。我强烈推荐先在业余时间启动你想创建的业务,等能从这项业务中产生足以维持生计的收入时,你再转为全职。
这样的好处在于:
1、即便薪水大幅减少,依然能完成转型,并且可以维持生计。
2、提前了解运营业务的困难,以及处理企业运营的开销和非开发费用到底需要多少额外的工作量,对自己实际承担的工作量有一个符合实际的预期。
3、训练自己提前处理更高强度的工作负荷。(每天追踪自己的时间)
4、即使创业失败,你仍然会依靠你的工作以获取收入,减少心理压力。当你被恐惧笼罩着时,你无法做出正确的决策。
如何成为自由职业者
要达到这一目标的唯一方法,就是随着时间流逝不断增强业务能力。你需要有长期客户,以此来确保未来的业务量,同时你也需要有稳定的新客户上门。挂出招牌之后就等着这两件好事从天而降,几乎不可能。你需要假以时日,精心培养这两类客户。
如何开始呢?你该怎样得到你的第一个客户呢?主要以下两个方式:
1、通过你已经认识的人
熟悉你的人更容易信任你,特别是在启动阶段。还没有辞职的时候,你就要在自己的社交网络上发布消息,或者给可能会对你的业务感兴趣的人发私信,让他们知道你将要成为自由职业者,正在寻找业务。你的潜在客户越多,找到业务的可能性越大,所以务必让他们明确知晓你到底能为他们做什么,你能解决怎样的问题。
2、“吸引式营销”
就是让潜在的客户主动送上门,而不是你去找他们,你要做的事情就是免费提供有价值的东西。比如,通过在博客发表文章、在自媒体平台发表图文或视频来吸引人阅读,并通过在博客文章的结尾或平台链接提供咨询服务,一旦有潜在客户浏览,你就可以试着直接将他们转化为客户。同时,也可以尝试做免费的网络课程、写书、在大会上做演讲、做客播客节目、制作自己的播客等。
你的目标应该是让自己达到这样一个点:你为这份副业分配的时间已经饱和,无法再接受其他工作,不得不回绝掉一些人。如果你在做兼职工作的时候做不到这一点,那你就不要想着去做全职了。填满每周40小时的工作量远比填满10~20小时艰难。
另一个对于自由职业者很重要的问题——如何收费呢?
1、大多数自由职业者都大大低估了他们能够向客户收费的金额以及他们需要向客户收费的金额。通用的规则是,成为自由职业者之后,你的时薪水平应该是做全职雇员时的两倍。但是你不能根据你认为你需要赚的钱数想当然地丢出一个薪酬标准,然后等人自动买单。相反,你的收费标准是由市场决定的。
员工 | 自由职业者 |
医疗福利和带薪假期 | 自己缴纳税,无福利 |
电费、电脑设备、网络等都由雇主支付费用 | 电费、电脑设备、网络等都由雇主支付费用 |
不需要聘请会计师或者记账员,或者支付法律方面的费用 | 可能需要聘请会计师或者记账员,或者支付法律方面的费用 |
并不担心如何填满你的时间,因为无论是否有具体的工作任务,只要你在办公桌前坐着,你就会领到一份薪水。 | 不能因为查看和回复电子邮件、给你的计算机安装操作系统或者别的日常工作向客户收取费用,因为这些都不是直接收费工作 |
通常每周工作时间固定 | 每年(甚至每周)都会有停工期 |
2、尽管大多数自由职业者都是根据他人的收费来设定收费标准的,但你应该根据你为客户提供的价值来设定收费标准。如果你决定把自己的工作看作商品,为了工作你就不得不跟其他开发人员竞价了,这些人中很多人的出价是很低的。在这种情况下,市场将推动买方接受出价最低的自由职业者。但是,如果你的营销策略是基于自己的服务可以为客户节省大笔开支或者提高他们的业务,你就可以根据自己的服务为客户带来的价值来定价,这就是“专业性”如此重要的原因。
3、如果没有任何潜在客户跟你讲“不行”或者“你的收费太贵了”,马上提高收费标准!不断给你的收费加码,直到你听到“不行”为止。
如何成为一名企业家
人类创造出的每个产品(包括这本书在内)都是为了解决某个特定的问题。没有要解决的问题的产品毫无意义,毫无意义的产品自然也就不会有用户,也就意味着你不会赚到钱。
1、整理出一批能够为自己将要创建的产品进行调研的目标受众。针对这些人你要解决的问题是什么,要有总体概念。
2、找出产品需要解决的问题。从这些受众中挑选出一位用户,看看他参加了哪些集会(无论是线上的还是线下的)。加入他们的社区,倾听他们的问题。看看你能不能从中挑选出一两个潜在领域去开发产品,解决他们的痛点。
3、排查是否有人已经解决了这个问题,你并不想进入一个竞争已经白热化的市场。
许多开发人员是反着来的。他们在尚未有受众的时候就创建产品,然后再四处推销,努力寻找受众。当你以这样的方式做事情时,你要冒很大的风险,因为执果索因往往更加困难。
但也存在另一种情况,假设你已经成名,被粉丝围绕,并产出被追捧的内容,你会发现你已经拥有了愿意购买你创建的任何产品的客户。
如何开始创业
对许多软件开发人员而言,最引人入胜的梦想之一莫过于自己创业。创业拥有巨大的潜在回报,但也极其危险。
任何一家新成立的公司都被认为是一家创业公司,但是实际上还是存在两类不同的创业型公司。
1、在成立伊始就试图以获得外部投资者的投资来刺激公司快速成长。
2、自力更生创业。自力更生创业完全由其创始人提供资金支持。这类公司通常规模比引入投资人的创业公司小,但是失败的可能性也更低,因为他们通常开销更小,同时由于没有放弃公司的多数股权,创始人在业务上也更有控制权。
多数创业公司的创始人都有所谓的退出策略。
1、当公司成长到一定规模的时候希望公司被人收购,这样,创始人和投资者都可以获得丰厚的回报,公司未来发展所要面临的风险可以在很大程度上得到规避。
2、上市,当公司上市时,向公众出售公司的股权。出售股票也可以让创始人和投资者获得巨额回报。
当你着手创建一家创业公司的时候,你对自己要创建怎样的公司已经有了想法。通常,这家公司要有些独一无二的知识产权,使得它的那些规模更大的竞争对手难以进入并简单地复制你正在做的。很好的创业候选是能够申请专利或受保护的新技术和新方法,而糟糕的创业候选则包括餐厅或其他缺乏独创、很容易被复制的服务。好的创业项目要有规模扩张的潜力——想想Twitter、Dropbox和Facebook等。
要想在创业启动时获得额外的帮助,申请加入创业加速器计划是个好方法。加速器是帮助创业型企业启动项目的计划,通过向创业公司注入小额资金来换取公司的一些股份。
无论你是否加入创业加速器计划,对创业公司而言,第一个重要里程碑就是获得第一笔资金,可以说这是创业生死攸关的大事。
可以采取的行动:
1、研究一下一两家你心仪的创业公司的历史。注意它们是如何开始以及如何获得融资的。
2、这些公司创立时是一个创始人还是多个创始人?
3、这些公司的创始人还成功创立过其他公司吗?
4、这些公司什么时候获得融资的?它们获得了多少资金?
5、这些公司启动的时候是否加入了加速器计划?