济南白癜风医院 http://baidianfeng.39.net/a_zzzl/131229/4319047.html很多人工资低干不下去,想转程序员;还有很多没学历的想改变生活的,也说要做程序员;以及一些大学里应届生,找不到工作,自学想当程序员。
假如他们这些人进入IT行业发展又真的会好吗?
一、程序员门槛
程序员从业不需要执照或资格证书,只要能写代码即可入行,比医生、教师、律师门槛低
程序员学习渠道丰富,可以通过课堂、网络、书籍、培训等获取相关行业技术知识
程序员需求量大,校招抢学生的时候,不会写代码都能招进去
新手程序员要是引导的好,一两周也可以学会一门语言并上手干活。而且程序员是乐于交流的一群人,很多开发的问题也都能在stackoverflowcsdn甚至QQ技术交流群里找到答案,只要想学还是能成长的很快的。
虽然程序员的门槛低,但是门里面的天地也是很广阔的。技术日新月异,需求变化多端,开发的系统也可能是冗余复杂,这行竞争很激烈工作强度大,入行也只是万里长征的开始而已。
二、入行门槛是不高,发展门槛就不低了
程序员和程序员之间存在着那么几条明明暗暗的线,那些线外行人看不见,水平低的看不懂,只有准备摸到那根线的人才知道自己被坑了。
行业在高速发展之中,经济成就和热钱的进来,造就了无数的岗位,岗位一多没经过系统培训的人就这么入行了。
如果工作过一段时间,你就会发现那些程序员会“差那么一点点东西”。
数据结构和算法
操作系统,你知道一个异步调用,操作系统里早就提到和实现了无数遍的东西,到了现在都还有人拿出来当概念玩,拿来做卖点,或者XX解读
计算机网络,网络对那帮人来说就是个黑盒子,真的。离开tomcat都不知道web是什么了
编译原理,撕逼大战不解释---------PHP是世界上最好的语言
以上是一个程序员的基本素养。
现在的码农队伍起码缩水90%。就互联网来说,到处充斥着一群“HTML文本构造人员”。仅此而已。
程序员这个概念太大了,会html/css的人、会写linux内核的人,都是“程序员”,前者门槛有多高?后者门槛又有多高?
程序员这个行,能力层次太多。而恰恰社会也需要各个层次的程序员。(总需要一些人来写html/css吧。)
再比如同样会写html/css的人,能写出优雅的兼容的css和不兼容的css又是不同层次,而且层次相差也不小。
就像做饭,人人都会做饭,但是专业的厨师却不多。
三、入行门槛不高,多掌握技术才是发展硬道理
如果我们对码农技术进行分层(层次本身没有优劣,是为了描述技术依赖关系而划分.....但是多掌握几层一般会更好一些):
1层是数学(加密解密,压缩算法,时频转换,计算机模拟\仿真)
2层是数字电路(机器码如何被硬件电路执行的过程)
3层是计算机组成原理(计算机体系架构,计算机是如何组成的)
4层是计算机算法和数据结构(低端排序,中端动态规划,高端人工智能)
5层是计算机操作系统,计算机图形学和编译原理(linux内核,词法树\语法树)
6层是计算机编程语言,IDE,架构(各种语言,各种架构)
半路转行的程序员只要老老实实把计算机本科教程刷一遍,经过系统培训正常情况下应该熟悉4-5层,一些小牛熟悉3-6层。个别神人能额外在擅长1层。
在经济形势不错,码农职业有泡沫的时候,熟悉第6层就能找到工作,运气好,收入也许还不错。因此,码农职业给人感觉“门槛低”(其实门槛也确实不算高,如果和医生职业比的话)
然而工作若干年后:
熟悉3-6层的码农成为了架构师\主程,开始参与项目\产品的设计和规划
仅熟悉第6层的速成码农工作依旧仅是简单的按照别人的设计写代码
这样等到35岁以后,前者还有可能继续做码农的工作,后者则出局的可能很大。
冯唐说写作有一条金线,计算机无疑也有这么一条金线,或者也许各行各业都有这么一条金线。这条线,是无形的,没人知道在哪。过了,你会知道你过了;没过,可能你根本不知道有这条线。
这条线是感觉上的,也是技术上的。
过了这条线,coding就不是为了钱是为了多巴胺了。这条线之上,程序不再是工具,而是玩具,会让你感到兴奋。你能感觉到语言,代码,算法,模式,思想都碎成粉碎,一块块等着你来拼。你能体会到程序里齿轮般环环相扣的精巧。你能闻到代码的味道,看到代码的形状。
过了这条线,你最爱的事会变成重构,变成删代码,因为你能感觉到有一个完美的东西在那里等着你。
过了这条线,35岁让你不写程序了你会觉得我他妈还没玩够呢。你会觉得你能干这个行业干一辈子了。觉得一件事能干一辈子了,这才是过了那个门槛,否则只是路过。
这行竞争很激烈工作强度大,入行也只是万里长征的开始而已。
一个行业,都有他的付出。不断的学习才是程序员的归宿。