想当程序员的朋友,给你一些忠告?
首先什么是程序员,我拿百度百科的解释:
程序员(英文Programmer)是从事程序开发、程序维护的基层工作人员。
一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚。
随着互联网的不断普及,现在网络上把男程序员称作“程序猿”,女程序员称作“程序媛”。
大学计算机相关专业核心课程有高等数学、线性代数、概率与数理统计、普通物理、离散数学、计算机科学导论、C语言及程序设计、汇编语言、计算机组成原理、算法与数据结构、操作系统原理、软件工程、计算机网络与通信、计算机专业英语、编译原理、数据库系统原理、面向对象编程技术(如:VB,c#,c++等)、JAVA、计算机维修技术、计算机系统维护技术、多媒体技术及其应用、算法分析与设计、网络操作,某些大学可能有一点差异。
那现在为什么很多人想当程序员,答案是工资高,大家都是打工,为什么程序员工资那么高,年薪随便都是几十万,年薪百万的大把。但是他们有没有想过,作为年薪百万的程序员,他都付出了哪些?
第一是需要一定的天赋。
作为程序员,需要较强的逻辑思维,逻辑思维强就是一种天赋。我之前带过两个实习生,同样的程序设计逻辑,a我跟他讲一次,就懂了,b跟他讲了3遍,可能不好意思,虽然说懂了,但就是懂部分。还有某大厂程序员,3年就能升到p7,有很多人都做不到,这些都是天赋的体现。另外,女性在逻辑思维方面,确实比男性要差一点,所以程序员中女性占比很低,近几年稍微增多了一些。
第二是保持不断学习,时刻给自己充电。
从大学开始选择计算机专业开始,就开始的努力学习,然后开始不断了解行业动态,了解当前最火爆的技术,不断学习新知识,新框架,让自己技术不落伍,如果你的技术落后了,那你也可能被淘汰。
有个朋友大学学习的是.net技术,然后现在大家都用java,他也开始自学,但是由于各种原因,自学不努力,结果java技术水平比较差,现在辞职后,很难找一份满意的工作。
第三,需要一定的数学基础和英语基础。
程序员需要熟悉高等数学,数据结构的一些东西,能让你在工作中更好理解一些技术,也能让你在工作中技术水平更高。现在大厂招聘都要考算法题,为什么?因为掌握算法能让一个人在设计系统的时候,会使用算法,提升系统能力。说到计算机,都是美国人发明的,系统全是英文字母,如果你不懂英语,根本没法学习。
第四,需要能吃苦,能承受加班和压力。
现在互联网大厂,都是常态,偶尔赶项目,通宵也有。而且经常网上看到,某互联网公司员工加班猝死。阿里,腾讯,华为等这些大公司,不管哪个待遇高的员工,肯定都经历过甚至,还有职场的pua,在互联网公司太多了。所以做程序员,需要身体和心理承受能力都很强。
如果你是一名高中毕业生,自觉逻辑思维还可以,有一定的程序员天赋,而且高考分数还可以,能上一所重本大学,那你可以选择计算机相关专业,然后就努力学习奋斗吧,小青年。
如果你不是数学专业,是其他专业的朋友,想通过教育机构培训转行做程序员,我不是很赞成。因为想转行过来,需要学习很多知识,花费大量的时间,而且要持之以恒的学习,如果只通过简单培训当了程序员,你只是一名普通程序员,行业中不缺这种普通程序员。而且行业中,对于非科班出生的程序员,都会有点看不起,很多晋升,评优都不怎么考虑,还要面临35岁年龄危机。如果你有时间,有毅力,有天赋,肯学习,那你就可以自学培训一起,转行成一名出色的程序员。
一位工作10多年程序员的一点看法。