一个普通专科毕业的程序员,给大家分享下自己8年工作生涯的一些感悟和总结。
还记得自己刚开始进入软件开发行业的时候,也是在网上看了好多大佬的工作总结,每次看完总是踌躇满志,像打了鸡血一样充满干劲。所以这也是我的博客ID命名为斗者_2013的原因。
斗者,与天斗,其乐无穷;与地斗,其乐无穷;与人斗,其乐无穷。
2013年,算是我正式踏上软件开发的第二年。
时间过的真的很快,转眼进入软件开发行业8年了,混的还是不如人意。突然想起了筷子兄弟的《老男孩》,“梦想总是遥不可及,是不是应该放弃,花开花落又是一季,春天啊,你在哪里?”。
当曾经的梦想都被残酷的现实打击的支离破碎时,更多的也许是平静和认命吧。人生真的到了一定的岁数,真的要学会认命,知道天命不可违。
感慨太多,先进入正题吧
普通专科毕业,12年转行进入软件开发行业。
在杭州工作两年,14年来到深圳,从事java开发一晃8年。
尝试过2次开发方向的转变,一次是2014年左右,移动APP的浪潮时期,自学了安卓开发半年,结果还没等转开发方向成功,移动开发的浪潮就逐渐过去,第一次转变尝试就这样胎死腹中,白忙活一场。第二次是2015~16年,这个时间点正是大数据开发最热门的时期,自学各种大数据框架,无奈受限于学历,并没有找到满意的工作,只能回归java。
早期为了多学点技术,多接触点项目,跳槽比较频繁。由于内心一直以一个技术人自居,所以一直重技术,轻业务,导致在职业规划上做的很差,经历的公司业务方向都没有承接性,教育,金融,支付,政务方向的软件产品都有接触开发。
盲目的追逐了几次技术浪潮,但是又没有真正对自己的职业生涯有多大的帮助。
总的来说,工作8年,做过一些尝试和努力,但可能没有遇到好的机会或者选择的方向错了,导致至今混的不尽如人意。
现在网上各种流行程序员动不动年薪百万,我想澄清下,大部分都是标题党为了吸引眼球和访问量,里面一般都是推荐一些培训课程或者公众号。
怎么拿到年薪百万?
大部分都是一线互联网公司,类似阿里,腾讯,华为,至少P6以上的核心技术人员,算上期权、奖金等福利才有可能突破年薪百万。拿一般公司14薪为例来算,要拿到年薪百万的话,月薪需要达到7万多,7万多的月薪什么概念,你们可以自己去招聘网站上面看看,这样的岗位需求有多少,要求是什么,对标参考下。
能进入大厂的程序员毕竟是少数,大部分普通程序一般工作几年,可能拿到20多K算是比较正常的,后面的薪资提升就比较困难了。20多K在一线城市待遇算多吗?只能说,勉强生活,除去五险一金,房租,生活开销,节约点的话,可能一个月能攒1w左右,一年能存个10多万,但是一想到一线城市5,6w一平的房价,和高强度的工作,其实并没有任何幸福感可言。
所以不要被网上各种标题党忽悠,大部分程序员的时薪,可能比不上路边卖早餐的阿姨。
刚到深圳一段时间,曾经在平安科技做过一段时间的外包。
谈一下对外包的看法。
我的建议是,工作前3年,可以考虑外包,毕竟那时候工作经验和技术水平都不是很充分,到哪里都是学习,外包进入门槛比较低,初中级别给的待遇又相比其他甲方公司更丰厚,所以,这个时期是可以考虑外包。另外在给甲方公司做外包项目的时候,有时候会获取到转内的机会。
为什么有一定工作经验后,不推荐进外包呢?
一是外包的项目大部分不稳定,可能这个项目赶进度的时候缺人,你过去当牛做马,天天加班,当项目不缺人了,就把你调到新的项目组,继续赶进度。
二是外包技术成长慢。主要原因是项目开发节奏紧张,难以接触到核心模块的开发,大厂做外包很多都是内部封装好的框架和组件,技术沉淀和业务积累都很缓慢。
三是很多外包都是驻场开发,很容易感受到和甲方公司开发人员的隔阂,团队归属感会很差。
本人由于是专科学历,而且还是转行进入软件开发行业,吃过各种学历带来的苦果。
尽管现在已经自考了中山大学的计算机应用专业的本科文凭,但是由于有学历要求的公司,大部分只看第一学历,也就是统招全日制的学历,所以学历还会是我今后职业发展道路上的重大瓶颈。
不要迷信什么学历不重要,只要技术能力过硬就行。现实中,你首先要学历过硬,才能获得到更多的面试机会,更好的成长平台。
其实经过最近这2年,给公司招聘技术人员,越来越能理解为什么越来越多的公司学历要求的门槛越来越高?
1、整体来说,本科毕业生大概率比专科生综合素质强,学习能力,沟通表达能力,技术功底,自我驱动,执行力,规划能力,成长潜力。
2、招聘成本问题,从网上挑简历,筛选简历,到预约面试,复试,确定人选,整个流程下来,招聘一个合适的人员,其实成本非常高。
3、通过简历判断技术能力难度大。现在开发人员的简历基本都是项目介绍,然后一大堆雷同的技术栈名词的堆砌,很难直接通过简历判断出技术功底的真实差别。
所以面对公司hr一次推送10多份简历筛选,上级又催着尽快招人的时候,也会对学历上有优势的优先筛选出来,毕竟通过的概率大很多,能很大的节约招聘成本。
由于学历问题,职场遇到过各种问题:
1、压低待遇,尽管艰难的通过面试,同等情况下,待遇可能被砍好几千。
2、以外包方式在大厂工作,转内通道是关闭的
3、工作中的培养锻炼的机会
4、职场晋升的机会
5、没有住房补贴的申请资格
怎么改变学历的劣势呢?
1、大专生改变学历的劣势,只能靠考研,有学历要求的公司一般都只会看第一学历。
2、普通本科尽量去考研,首选报考重点院校(985/211)的研究生
3、重点本科(985/211)毕业,如果直接获得大厂的工作机会,可以先工作。否则还是建议先努力考研,毕竟工作后考研会由于工作和生活的压力,难度会更大。
人生的路,一步慢,步步慢。
以后本科生只会越来越多,越来越普遍,逐渐失去职场竞争力。硕士学历才是你以后职场生涯的一个保障,至少学历不会是你职场发展的瓶颈。
来一张图,更深刻的揭示学历的重要性。互联网圈的大佬,无一不是重点大学毕业。
我自己是追逐2次技术风口最后都是失败结尾的,没有享受到技术的红利。
我的意见是不要盲目的追逐技术的风口,首先还是把自己吃饭的核心技能深入挖掘。
技术领域都是深度优先,然后才是广度。
追逐技术风口是有风险的,比如移动开发就火了那么几年,区块链感觉更像炒作,你很难判断这个风口什么时候过去。
技术风口的岗位需求会比较少,很多时候可能你在招聘网站上投一轮,成就成,不成就没有其他机会了。
当然,不追逐技术风口,并不是说不学习新的技术,软件开发是一个终生学习的行业。几年不学习,你的技术可能就会落伍,主流技术框架和中间件一定要熟练运用,深入挖掘。
当你技术框架的了解比其他大部分人多的时候,就是你拉开和其他人的差距,体现出你的核心竞争力的时候。
新的技术框架,可以先了解,关注行业动态,作为解决方案和下期技术引进的一些技术储备。
不要盲目的追逐风口。风口一般很小,能在上面站稳的很少,能飞起来的更少,大部分是摔下去了。
1、面试一定要带简历,这是态度问题,不然容易第一印象就不好。
2、简历上最核心的2点,1是自己掌握的技术栈说明,让面试官清楚知道你掌握技术栈;2是项目中使用了哪些技术栈,体现自己对这些技术栈的实际项目的运用情况。
另外简历不要超过3页。很多早期的项目经验和大篇幅的项目功能介绍,并没有什么意义。
3、准时,实在有突发情况,要提前打电话商量修改面试时间。
4、至少提前几周准备面试,因为java知识体系真的很庞大,不复习下直接面试,就像送人头一样,很容易错失难得的面试机会。
5、java基础一定要掌握好,不然丢分非常严重。之前面试一个高级java,竟然回答不出年轻代的垃圾回收机制,一下子我都不想继续聊下去了。
6、框架的核心特性要熟悉,并对其实现原理有一定的了解。比如:Spring Boot有哪些新的特性?他的核心特性自动化配置的原理了解吗?
7、主流中间件的工作原理和调优有一定的了解。
8、数据库一般也是必问的,索引,锁,事务,sql优化都必须了解。
9、听清楚面试问题再回答,不要答非所问,太过自由发挥。你和面试官聊的越有共鸣,你通过的几率越高。不知道可以直接说不知道,然后再阐述下自己的认知和了解,以探讨的方式让面试官和你互动,这样也能偷师点东西。
10、了解不深的技术栈名词和机制,尽量回避,不然只要你提到,面试官就可能展开深入的问下去。
11、多积累一些技术圈的人脉,很多时候内推进入会容易很多。
12、多积累一些可展示的技术成就和作品,比如参与了某某著名网站或者APP的核心模块开发,在GitHub上开源了什么框架或者参与了什么开源框架的开发,著名博客网站的一些排名,运营某某技术公众号。
为什么谈到这个,是由于最近在公众号里面,动不动看到吊打面试官。
感觉面试官也挺惨的。
首先说明一个观点,你永远也不可能吊打面试官。因为是他在面试你,你是在被面试,主动权掌握在面试官手里,他的问题你必须回答,你的问题他可以故作高深,不屑回答。
另外,作为求职者,不用抗拒“面试造航母,工作拧螺丝”,因为如果都是非常简单的问题,怎么区分出程序员的技术层级,怎么评级定薪。“欲戴王冠,必承其重”,想要拿高工资,进大厂,总要先体现自己的技术水平和价值。
1、控制好跳槽的频率,控制2~3年才跳一次,跳槽太频繁会给公司不踏实的感觉。公司不会关心你跳槽的原因是因为公司倒闭,还是上级太难相处。
2、尽量不要裸辞。早些年自己一直都是裸辞,因为性格比较直,不想找理由请假出去面试,也希望离职后能安心为面试做准备,全心全意找到一份理想的工作。但是裸辞面临的最大问题就是长期没有收入,会逐渐降低自己的心理预期,最终可能将就着进入一家不怎么满意的公司,谈待遇的时候也没有底气。
3、尽量选择同一个业务方向的公司。这样更有利于你的技术积累和业务沉淀,业务知识比技术知识的生命力更持久,一个行业的业务可能10多年都不会出现太大的变化,但是一个技术可能也就3~5年的生命周期。现在很多公司缺的不是懂技术的人才,而是即懂技术又懂业务的人才。
如果在一些城市奋斗几年,不能进入大厂,职位待遇没有什么质的提升。我的建议是可以考虑早点回二线家乡的省会城市发展,幸福指数会高很多。
就像我很多湖南同事一样,很早就回老家,在长沙买车买房,也能找到1万多待遇的工作,工作节奏轻松,加班不会像一线城市这么严重,羡慕的很。
工作的最终目的是为了更好的生活。有的时候人生无非就是换种活法,退一步海阔天空,不必死磕较劲。
1、多看些技术书籍,做一些技术总结
2、坚持写些技术博客,做一些技术输出,即是对技术的总结梳理,也希望能对自己今后的求职发展有所帮助
3、锻炼身体,健康作息
4、可能会看看老家有没有合适的工作机会
该拼搏的时候,就努力拼搏,不留遗憾。
该放下的时候,就洒脱放下,不要执着。