通常程序员在这一阶段的职业发展分两条线,专家(技术)线和管理线。专家线主要跟机器打交道,搞搞性能调优,高并发处理等等高精尖的问题;管理线主要跟人打交道,了解下属的状态,控制资源和进度。
这一阶段的特点是稳定,低风险也低门槛。缺点是有天花板,一切按部就班,不会有太大起伏。收入可以稳定预估,除非是公司上市凭期权小赚一笔(当然概率很低)。
要活的舒心要摸索出技巧:如果做外包,要有客户渠道;依赖于大平台的项目最好花点钱成为平台的合作伙伴。
如果不懂做关系,没有渠道,可以考虑免费+收费模式,把要做的事情中的基本功能抽出来做成产品免费,再向定制部分收费。如果能用心定位,抓住细分市场,还是能活的不错的。
如果你没有做过能挣钱的软件,上万用户的免费APP,粉丝数5万以上的大号,每天PV10万的网站,那就先别离职创业,先业余时间搞一搞感受一下。不是每个人都真正喜欢并享受创业的。
还有一个低风险的做法是去创业公司做CTO,不像CEO压力那么大,而且即使公司做不下去了,他们也可以换家创业公司接着来。
别的事情错了我们可以重来,而职业选择上,每一步都是好几年的时光。一旦走下去,就很难回头,因为一旦换职业方向,哪怕换个开发语言,都意味着你之前的积累很可能前功尽弃。所以眼光放长远点,不要只看眼前的高薪,更要看好未来的发展,方向错了,跑得越猛输得越狠。
跳槽不是找工作,而是换工作,她是由成本的,需要放弃原来公司的期权,需要重新熟悉业务,重新和同事搞际关系。跳槽要考虑好自己的付出和收益,衡量好得失,没事别裸辞。
跳槽不是加薪的砝码。不要以跳槽为砝码去谈加薪,这种迫胁性的谈薪资方式会使主管对你信任。类似的,当你提跳槽时,如果你的主管通过加薪来挽留你,最好也不要同意。那么......
工作最重要的目的是积累。挣钱这个事情,至少有四种形式:帮别人挣钱(打工);为自己挣钱( SOHO);雇比人挣钱(企业主);让钱自己挣钱(投资)。第一种门槛和风险最低。而求职只是我们在自己资源和能力不足以进入后几种挣钱形式时,通过自己的劳动能力换取资源的阶段性行为。
跳槽其实是打工这种挣钱形态下,我们进行调节的方式,通过合理地跳槽,我们可以寻找到市场需求和实现的最佳匹配,从而在和成长上双丰收。“市场需求“描述了企业渴求的员工,”实现“描述了你想要的生活;当它们重合到一起,梦想就照进了现实。
比如最终目标是CTO,那么它的线图可能是:应届生-----初级程序员-----小组主管-----部门经理-----总监-----CTO。然后我们会给每一个节点设置一个达标能力和一个参考时间。当我们的能力已经开始可以胜任下一个节点的工作时,我们就会开始寻找相关机会,最理想的是在当前公司进入下一个节点,如果当前公司提供不了的话,那么就要通过换公司来前进。
当然线图是可以调整的,比如应届生-----初级程序员-----小组主管-----初创公司CTO-----B司CTO-----上市公司CTO。但不管怎么调整,自己头脑里边要有清晰的目标。我们总是先在风险最小的径(比如当前公司)寻求成长不成功时再考虑其他的径。
一旦你决定要离职,(除非事发仓促,比如家庭变故之类的)一定要做充分的准备。你该去什么样的公司、做什么样的事情、拿多少钱,都取决于一个问题:你想成为什么样的人。工作只是人生的一部分,是用来支撑你人生价值的核心框架之一,在你自己没有想明白的时候,没有人能帮你。
第二,如果你暂时没有发现人生的意义,那么就多挣点钱,因为等你有一天发现它的时候,一定用得上。