程序员需要达到什么水平才能拿到20K黑

最近知乎火了一个问题。

接触过很多程序员,感觉年薪30万对于大家是一个门槛。按照我们正常些的职业规划应该是:3年入行年薪在30万左右,五年应该达到精通50w+年薪,十年就应该在这个行业称王这个阶段基本上要实现财富自由。

实际上呢?很多人停滞不前年薪30万根本达不到,也有很多非一二线城市,开发经验在五年左右薪资还是10k左右。该如何进阶升职加薪呢?

一、精通一门语言扩展1-2个语言

不管大家是精通什么语言入行的,应该学会另外一门语言,基本上高薪程序员都在自己所擅长的语言体系外另外掌握其他语言。看今年五月的TIOBE编程语言排行榜,Python再次超过Java,如果你只会Java我建议大家紧跟行前了解Python。

另外大家对于自己所掌握的语言,不仅是要懂语言,还要熟悉多个专业语言的大型开源系统,能够对开源系统进行代码修正。其中一个很重要的标志是高薪程序员对设计模式是非常了解的,在实际工作中经常运用设计模式。

二、精通MySQL

Mysql作为最常用的数据库系统,在OLTP的领域可是说独霸天下多年。高薪的程序员对Mysql绝对不是只会写sql,需要掌握的内容是:

Mysql的集群搭建与维护Mysql的主从同步机制Mysql的存储引擎特性尤其是Innobd和MyisamMysql的Btree原理以及特性Mysql的索引机制以及优化Mysql的存储过程以及事务使用,及隔离级别、非常了解数据库的ACID理论

掌握Mysql可以轻松应对复杂业务的数据建模问题,在高并发和高吞吐下的数据库设计与优化问题,同时对灾难恢复也要全面了解。毕竟很多互联网公司由于用户量大,日均PV达到千万,甚至是亿的级别。

三、精通Redis等缓存以及消息队列

主要是“高性能”“高并发”这两个角度。高薪程序员对Redis这种分布式独立缓存系统和消息队列系统,无论是Redis的集群搭建还是维护或者是使用场景。甚至是Redis的锁机制,错误恢复都要非常了解。只有了解了才可以轻松应对千万级高并发请求。

四、精通算法

是否每个程序员都要学算法一直都存在分歧,好多人认为机器学习、数据分析挖掘这类岗位才用算法。对于初学者都不建议大家给自己找麻烦学算法,但是小编以为程序设计=算法+数据结构。

在学习算法的过程中,一是可以解决问题,二是对自己有用才是最大的推动力。高薪程序员能够轻松应对算法,是要在实际工作中挑选合适的算法应对复杂业务逻辑。需要对算法和时间复杂度非常清晰。

五、懂数据分析和开源系统

云计算和大数据飞速发展,高薪程序员当中很多人有大规模数据处理能力,并且多数对云计算中流量负载均衡弹性扩容也非常了解。其中多数都已驱动类似Hadoop、Spark、Flink这种开源系统进行大规模数据处理。并且熟练使用Nginx,作为高性能负载均衡和流量调度机制。

多参加开源项目可以帮助大家认识更多的开发者,了解前沿技术。如果没有时间去参与,也建议大家留出时间阅读优质的开源代码。




转载请注明:http://www.aierlanlan.com/tzrz/2698.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了