中国程序员那令人悲哀的成长道路

作为一名在一家大型软件公司做开发的码农(至少我现在是这么看待我的地位的),我发现中国的程序员的成长环境并不能有效地帮助程序员成长。

1.公司环境不利于程序员成长

不能以偏概全,如阿里巴巴,百度,京东这样的互联网大厂还是舍得花重金培训自己的员工的。不过话说回来,中国很多IT产业发达的城市中的中小型公司其实不太情愿出资金,请大牛给自己的员工做培训;很多boss心里想着,反正能做出需求就好了啊!真的是这样的吗?举个例子:1+1+1+1+1+1+1+1=8【循环相加】,((1+1)+(1+1))+((1+1)+(1+1))【递归相加】也可以等于8,上述两种方法都可以实现需求,但执行效率到底谁高,资深的程序员谁都看得明白。而很多程序员在编写代码的时候最喜欢用第一种方法,而用return function()来实现运算仿佛变得更难,其实哪有什么难的。公司没有对程序员培训,谁会想到程序还可以这么写。

2.中国高校的教育形式化(但愿这个标题不会被请去喝茶)

中国的高校与其说是培养IT人员,不如说是在完成教学任务,我的大学读的是软件工程,毕业后又进入软件行业工作,地地道道的科班出身。学校教计算机网络、软件设计、算法设计、Java、C#、C++、C、计算机组成原理、微机原理(单片机)、数据结构、Linux操作系统等等。参加工作后,有多少是我用到了的呢?Linux和数据结构是我现在还在翻阅的大学教科书,其他的书我就没有翻过,工作时很多知识没有涉及过,只能自己买书回来看,比如说《Vue实战》,《spring实战》,《mybatis技术内幕》等等;我们的高校教育希望培养出全能型人才吗?我越来越认为这是不可能的了,现如今的计算机已经发展成了一个庞大的系统,人工智能,算法设计,前台设计,系统架构设计等等,而这个系统中的每一门都是大学问,四年时间真的可以让学生样样掌握,样样精通吗?no!!!最后让学生学成了“四不像”,我说我懂ASP.NET吧,但我不了解其中的原理,我只知道怎么实现出业务;我说我懂Java web吧,但我不会用框架,只能使用最原生的方式,我说我懂算法设计吧,我就只会写个简单的递归和快速查找(拿到专业的算法设计师面前那都不算啥本事),这样的走出校门的孩子和普通码农有什么分别,我的一个同事感叹:还不如读了初中就去读个新华电脑培训学校,出来照样干基层的活。我想问:中国的教育部就没有一个人想过这个问题吗?大学的任务是什么?需要培养什么样的人才?

3.社会环境不利于程序员成长

996ICU已经被炒得沸沸扬扬,很多程序员都在反抗,但是并没有啥用,资本家已经露出了无耻的面容和锋利的獠牙,你能怎么滴?就拿成都来说,早9点上班,晚9点下班,这已经将程序员利用空余时间提升自我的道路给卡死了,挤地铁,做公交耽误的时间怎么来说也是3个小时吧,早晨7:30起床,去赶地铁,晚上9:00下班去赶地铁,回到家10:30,工作又这么累,根本没有多余的精力去学习了,洗个澡就睡了,第二天如此重复。在这样的环境下有的公司还没有培训员工的传统,那怎么成长?只能利用周日看看书,尝试着敲敲新的代码了——这样的成长有多慢,各位可想而知。

最后来个总结:

很多学弟问我毕业后该进大公司还是小公司,大公司实习工资2000,小公司2400,但我极力推荐他们进大公司而且是那种有技术培训传统的公司,如果能朝九晚五那就更好了;刚工作不应该为了钱,而应该增长自身的能力,这才是最重要的!!!虽说有的小公司挣的钱是比大公司要高,可是人也要抬起头看看未来!

你可能感兴趣的:(中国程序员那令人悲哀的成长道路)