本文来自作者 Tamic 在 GitChat 上分享「程序员如何提高加速度,两年做到待遇 20K+」,「阅读原文」查看交流实录
「文末高能」
编辑 | 短笛
今天分享的这个主题,很可能会带来争议,因为目前优秀毕业生0年就可以拿到 20K 的待遇,这里暂且抛开硕士,985,211的 Top 前几高学校本科生。
毕竟今天的主题的初衷是地点低的程序员如何才能 2-3 年实现 20K 的目的,如果你已经达到了,恭喜你!如果感兴趣不妨阅读本文!
在进入主题之前,为了详细生动的说明今天这个分享主题的产生的背景,我先讲几个真实的故事。文章有点长,请耐心阅读。
主题背景
同学甲
一名普通大专学历,非计算机专业毕业生,在面对毕业选择就业的时候,选择了去参加培训班, 走上了软件开发这条路。
于是乎加入走向北上广求职大军中的一员,起初参工作时,拿到 7-9K 的待遇,已经是很自豪的事情了,甚至这名读者告诉笔者,他家人为了庆祝他找到的“好工作”,大办酒席。
甚至家人认为这是比公务员还光荣的事情。这里我并没有任何夸张的成分。
本身由于自己的起点低的问题,无法加入大点的公司,在后来的一年中,只能在目前公司通过项目学习,公司规模也是接近家属楼办公一样的公司,项目也属于初创产品,一年中没有任何技术收获。
后续这名同学也意识到了自己的处境不太乐观,短暂性的尝试过考虑新机会,但是都是不理想告终,后面同学甲渐渐放弃了看机会的念头。
就这样熬过了三年,一年加薪1k,到现在已经低于市场价,但自己出去面试也无法找到一家符合市场价的待遇的公司,觉得很迷茫!
同学乙
普通本科毕业生,建筑专业,毕业后去老家工地当了一年的监工经理,待遇2.5K, 由于女友的原因自己又背井离乡,来到深圳投靠女友,毕竟是半路出的家,开始找工作时候很不顺。
后来通过看了几个月相关技术视频,谋得一家传统公司的 Android 开发一职,待遇 6.5k, 面对生存的压力和女友的鼓励,加之自己通过一年的辛苦努力,换了家新的互联网公司,待遇10K,但是自己的女友是做金融的的 到手待遇比自己高。
最近面对房价和爱情的因素总觉得闷闷不乐,这个读者也找到我,问我怎么才能突破这种格局,找到属于自己的爱情! 毕业快三年了,自己同学都在15K+以上?
面对这个同学的规划,我个人感觉还是挺看好的,两年时间从非互联网公司过渡到互联网的工作,已经超越了很多人,他的自我驱动的这种进取精神我也是比较欣赏的。
同学丙
普通研究生毕业后,来上海从事开发技术岗位,目前在一家互金企业从事OA开发工作,由于所在企业体制的原因在公司无法得到提升。
目前毕业2年了开始有点迷茫,最近曾去面试过几次,由于硕士原因,目标公司会对自己期望很高,但面下来情况却不乐观。
于是有点高不成低不就,他自己有点担心了,后面突然对我说面对这种情况怎样办才能突破,我本人首次面对硕士的提问,有点受宠若惊。
说实话我只是一个本科生,无法去体会,甚至去给一个硕士指点迷津,不是说我不自信,而是我无法理解比我多读三年书硕士的认知和思维。
所以我也没有直接回复这名读者,也没有去咨询他的薪资待遇,况且我也不赞同连自己都没有经历过,就去说教别人的人,因此我婉拒了。但是我给他唯一的建议就是下剩的这一年内积累,厚积而薄发。
上面三个列子反映了目前大众的三种常态,曾经我也是属于这三类人中一类,笔者我不管读者源自于培训的诱惑,还是出自于自己的理想驱动,还是生存压力的目的。
总之你选择了程序这条路,首先你要对这行感兴趣,有了兴趣才能有动力自我鞭策。
在这里有读者曾说:“我高中学历咋办?”“ 我初中学历都20K+了” ,由于上面列子中没有这两种情况,面对两个问题我耐心回答下:
Q: 我高中学历咋办?
A: 高中学历,在社会中不算高的起点,但也并非没有文化,我见过很多高中学历的,技术不错的也不在少数,目前,甚至还有很多在公司担任经理的。
恩,对,你猜的没错,是小公司。但是在大公司做基础技术的也并不是没有列子,只是我见得情况比较少。
-
首先我建议考个专科学历。
其他方面,下文会详细介绍。
-
要自我排除戾气,不能排斥学历论。
-
Q:我初中学历都20K+ 了
A: 在和你同起点的同学相比较的话你非常优秀,但是千万不能有排斥方法论的念头,谦虚自行从古到今都是文人推崇的名言。
20K 的待遇,这个过程是艰难的,甚至是一个非常辛苦的过程,你的综合能力很好,甚至已经超过了很多人,有空可以分享下您的宝贵经验让更多人收益,我自己包括其他人,我想很多人不会去歧视任何学历低的人,甚至在这些人身上更能看到正能量。
如果有人歧视学历,更多人的原因是由于你的技术或者为人,只不过让学历背了锅。
相反如果你发展不顺,也不要去拿学历说事,而是从自己身上找问题,发现问题,去改正问题。
接下来我们进入主题。
如何提高?
以下是我总结的五个方面,从上到下都是个有序的渐进过程,缺一不可!
1. 通过分析目前的现状快速定位自我
细心的读者从第一章节的列子可以看出,什么是分析现状?这里的分析现状就是指充分明白目前自己在公司的位置,整个市场中的价值,自己的技术程度后。
当我们发现我们的技术落后了,待遇低于市场了,或者职级没得到发展,都可以视为对自己现状的分析认知,在这种先前条件下才能去定位自己.。
这种定位手段可以通过社群社交,同行交流,博客技术论坛介绍的东西对比,更粗暴的方式就是面试,这样才能更好的完全的认识自己的不足,自己的短板,才能让自己掌握哪些方面需要去学习,从而得到有效的提高。
从宏观层面讲
现从宏观来讲,包括的你的职级,你所做事情的影响力,如果你是领导,那么你有一定的主导权,你就应该让这种领导效益做到最大化,提高自身效率,提高团队协作,尽可能的让下属也得到提高,只有个人和团队一起发展,才证明你在发展。
如果事实不是这样,那么你确实是需要自我反省,自我认知了,不是做到领导就能觉得自己很厉害,相反你也要和其他领导做比较,是不是他的团队,人员更稳定,产出多,口碑好呢?
如果你非领导,只是一个核心开发,那么你也必须做到你负责的东西,如果你你负责的这个框架,那么你应该让这个框架做到稳定,易拓展,方便调用,甚至更多!
如果你开发的这个模块不够好用,甚至造成了其它新增的问题,那么你也要重新自我认识,技术高低并不是说你能写出多牛逼的框架和项目,而是你能做到每一件事完美解决。
从微观层面讲
微观相对宏观更细化,如果是领导,你自己是否做到了一个流程中任何环节的把关,推进和收尾总结,如果你有任何一点觉得交给下属办不好的事情,甚至觉得这个人无用。
那么你就应该摒弃这个可怕的思想,别人不是给你打工,你也是在给自己打工,如果下属能完全解决你交代的问题,那么你是不是该下岗了。
作为领导,情绪控制力,沟通能力,领导力,协作力,和为人口碑,都是影响你上升的关键因素,如果有不够好的地方,那么你已经定位到自己了。
作为普通的开发,新的框架你是否了解,项目现存的业务模式你是否熟悉,交流总结你是否做到,技术文档有去编写,其他技术方向有去拓展等,都能对比出自己不足的地方,这种通过对比的方法论是提高自我审视的最好办法。
2. 拓展自己的知识网络拓扑图,持续提高知识
上面我们通过通过分析目前的现状,可以快速定位出自我 。当你更好的认清自己的时候,你是时候去改变了,如果你缺乏沟通,你可以加强交流,试着多去参加群体活动。
如果你缺乏对新技术的掌握,可以去浏览各种论坛,官微,博客等涉取。从而弥自己的不足。如果你缺乏对基础知识的掌握,你可以去扎实基础,从而让自己的水平提高。
很多时候很可能我们掌握了项目中的技能之外,就懒得去学习其他技术,这种观念不能要,永远不能将对比参考点放在自己的项目组的成员中,一定要放到同行业的竞争者中,这样你才能知道自己需要去学习哪些技术。
就拿 Android 程序员来说,RxJava , OKhttp,必须要掌握,插件,热更新技术,混合开发技术需要掌握,Java 基础,设计模式也需要懂,算法,数据结构那更不用说,学过计算机网络的人都了解网络拓扑的概念,上面这些都是我们需要拓展的知识网络拓扑图。
掌握更多的技能不代表让你去做全栈工程师,而是面对机会时你有更多的选择!目前的 Kotlin, JS, 甚至人工智能,也应该去关注!(如果你是安卓程序员,我会在交流中详细介绍)
3. 提高全量思维,不放过任何一个成长的机会
在平时的工作中,你需要放开眼界,持续提高并全面发展,甚至每一个成长的机会。举个栗子:
-
参加公司每一次对你有用的技术分享,从而学习到他人总结的知识。
-
尽可能多的参与公司的项目,从而达到量的改变,这样在领导眼里对于提升你来说就有更高更多的砝码,从小的方面来说你可以熟悉更多的业务,掌握更多的技能。
-
尽量去做框架和底层,杜绝一直以业务开发和上层开发为主。这样你才能在团队中脱颖而出,才能得到好的认可。
上面三点都是对内层面,相反多外层面来说,你需要时刻关注行业动态,若有更好的平台,更好的机会,不能抱着害怕甚至排斥的态度,应该勇于去挑战,去尝试。
上面的每一个做法,都有提高待遇的可能,待遇就是每一个细节的积累,最后沉淀出果实。你的综合能力提高了,薪资待遇也自然而然的提高。
4. 养成规划职业生涯意识,关注职业素养
程序员一定要养成职业规划意识,千万不能有我牛逼我就跳槽,不爽就跑路的思想,从我这几年的开发观察来看,除了学历的筛选,加上技术的参考,更多的公司慢慢考核候选人的稳定程度。
不跳槽不能说一定是敬业,跳槽也不能说这个人就一定不忠心,在同样的水平之下,企业更愿意找稳定的人,我也曾面过很多人,我也会衡量面试者的稳定程度,毕竟稳定程度也能反映出他处事的能力。
职业规划另一个含义是每一个阶段有一定的 level 提高,从初级,中级 高级,架构师,总监,cto 都是一次飞跃,无论你是对内,还是对外,长时间无法的提高,那么也该去关注职业规划了。
很多人不明白,在一家公司服务时间短,会认为不靠谱,服务时间长,但是没任何发展会被认为你不够聪明,无论哪一种,目标企业都不会喜欢。
5. 机遇和运气很重要
善于抓住机遇,有助于自己成功,上面第三点说的只是小的机会,机遇是一个大的质的改变,这个就靠自己的眼界,观察去发现了,大佬们无非就是加上自己的努力,长时间的积累,靠一个机遇稀里糊涂的成功了。
由于这个是非必须因素,这里我也不打算用过多篇幅去说明。只要你知道这个有这么个理就行了。
总结
上面依次从个列,到具体方法论,怎么让自己成长,让自己综合能力得到提高。虽然与本次分享的主题(待遇) 从表面来说似乎没点联系,但是实质上只有你的综合能力提高了,待遇也会相应提高上去,能力能得到相应薪资回报,薪资待遇从侧面也反映了一个人的即使能力。
如果你能做到每一个技术细节的掌握,每一次机会的不流失,对自己职业生涯的规划,并对好机遇的把握,提高自己的加速度,在相同时间能获得别人更多的综合能力,我相信 20K 在一二线城市,无论大公司还是小公司,2-3年是根本没任何问题。
后录
文章本身出于大纲+大思维的目的撰写的,更多的方便面向不同语言的程序员,更多的细节内容还需看交流情况。
出自评论区的疑问,我读完评论感觉读者无非是更关心是怎样提高技术,或者更明确的短时间拿到20K。
Q : 怎样判别自己的水平
A: 北上广深杭。 按照薪资来讲 2-3 年经验的,一般水平的程序员 10-15K , 技术中上的程序员 15-18K+ , 技术好的程序员 20K+,不同方向 不同公司有所差异,只做参考!
最后值得强调的是,提高技术的途径无非是掌握 why(为什么学习), what(学习什么),how (怎样学习)三个要领。 这些细节我将会在周四的交流中解答 。
近期热文
福利
「阅读原文」了解更多知识