美文网首页
浅谈程序员职业——“程序员干不过35岁!”

浅谈程序员职业——“程序员干不过35岁!”

作者: Python编程导师 | 来源:发表于2019-02-21 15:44 被阅读178次

    现在程序员越来越多,我再也不用担心怎么跟亲戚解释我整天在电脑前做什么,随着微信日活8亿,我每年回家也基本没有人找我修电脑了,而且众多手机厂商一年几款旗舰机的发布速度,我很难再遇到说手机慢,让我看看怎么办。我太感谢智能手机一般不出问题,出了问题也基本打不开手机。

    大家都用微信了,没人问我会盗号不,帮他冲点Q币;网上支付人人会用,我再也不会因为我有网银而帮别人付款;以前最麻烦的帮忙破解一下谁谁谁的QQ空间等需求也被越来越多的社交、资讯APP占用,我发现大家都很忙,低头看着手机,偶尔问我一句:”哎,你说我这个XXX怎么弄“……我从原先的超能者变成了只是略懂人机交互的正常人。

    也几乎在同一时间,在朋友介绍说我是程序员后,对方没什么谈的,都会问我一句:”加班多不多“。加班似乎成了程序员的代名词,凌晨四点钟下班的似乎只有程序员。

    越来越多的人转行做程序员,越来越多的人从程序员的职位走出不再写代码,越来越多的程序员迷茫,认为自己烦躁,静不下心学习,觉得走到了瓶颈……

    我很感谢这个社会的从业人员让程序员这个职业被更多的人了解,也很感叹进入程序员这个圈子里的程序员其实不了解程序员这个职业,所以我想再次谈谈程序员这个职业。

    软件开发工程师

    程序员是一个总称,一般在公司的职位都是XXX工程师。是的,程序员分很多种,就好比老师分很多种一样,每种老师教的课程都不一样。大多数程序员都属于软件工程师。很多方面的原因导致了软件工程师的需求量大,所以软件工程师人多,原因后续会说到。

    当然也有所有课程都教的老师,比如说山区小学的校长。这种程序员被称作全栈工程师,“栈”这个词不好理解,你可以把它理解成一个排的士兵在排队,有头有尾的那种排队方式,和士兵一样死板,必须等前一个走了,后一个才能跟上走。这里所谓的全栈工程师是软件这一种类别的全栈,继续用老师来解释,就是大家都是语文老师,但是有教小学的,有教中学的,有教大学的,全栈老师就是从小教到大的。

    计算机科学发展了这么多年,和数学一样,已经分出了很多很多的枝杈,延伸到公司用人方面,越是大公司,分工越细。

    软件工程师有时候特指软件开发工程师,因为这里面还分很多种,你可以理解为做软件和用软件两种,软件开发工程师就是指做软件的那种。到了软件开发工程师这一级,除了分初中高三级,很多时候和老师一样,按编程语言去分,也有按行业去分的,因为每个行业设计的业务知识不一样。

    我现在说的程序员可以特指软件开发工程师。

    研发还是生产

    软件开发工程师所在的部门,一般称作研发部,但是这个研发,对应的不是其他行业的研发,更像是生产。如果拿其他行业做对比,一般的程序员更像是生产车间里的蓝领工人,而不是摇着试管的科学家。

    但是为什么在软件公司里,软件开发就能称为研发呢?因为软件开发的研发和生产相当模糊,生产人员所做所学的和研发人员基本一样。在软件行业,当然也对此有所区分,但是不叫生产,而是应用。继续拿其他行业来解释,现有技术和制造规格都有,软件开发工程师做的就是把东西做成不同的样子。

    那什么软件开发才能算是研发呢?比如做操作系统的,做编程语言的,做编程工具的,其中涉及的知识点和一般应用软件开发是完全不一样的,虽然大家也都是用同一种操作系统,同一种编程语言,同一个编程工具。说到这里,大家可能会有点懵B,为什么做操作系统的还得用操作系统,做编程语言的还得用编程语言,做编程工具的还得用编程工具,完全是个先有鸡还是先有蛋的问题。在软件开发里,有很多违反普通人认知的东西,因为这完全是在一个虚拟的世界里,凭借人类的想象来构建出来的。

    现在的程序员似乎很多都认识不到这一点,以为自己干的是多么牛逼的事情,其实大多人放在别的行业,就是车间的工人而已。所以去培训班培训三个月,完全是可以当程序员的,只是程序员一般没有和其他行业一样,有老带新的传统。新人入门前,老人还会不停的强调软件开发是需要天分的,是需要编程热情的,然后一大堆知识对给你,让你觉得即使用尽毕生精力也不可能学完,新人开始怀疑自己是不是真的没有天分或者说不喜欢编程,老人则依靠这种“别人做不了”的成就感来自我安慰。

    中国软件行业现状

    我在这个行业听的比较多的言论就是中国软件水品落后,国外技术发达。相对其他工业技术而言,中国软件行业可以用两个字来形容【幸运】。

    中国工业技术落后国外很多年,本来软件行业也应该和机械、化工、电气、医药行业一样,拿着国外的技术,在中国赚辛苦钱。但是因为计算机产业大爆发相对较晚,技术壁垒也不严重,中国搭上了世界潮流的顺风车,中国软件技术与世界水品的差距是其他工业技术中比较小的,甚至有些都领先世界。

    其中有一个很大的原因就是计算机技术的开源和免费。开源是说开放源代码,相当于其他行业中,把核心技术公开。中国做嵌入式的公司,靠开源技术赚了很多钱,如果Linux和机械数控系统或者芯片技术一样保密,这些公司就和其他行业一样,辛辛苦苦的生产设备,高价买国外的系统和技术。移动系统两大阵营苹果和安卓,安卓系统因为开源,中国手机厂商从中赚的盆满钵满,给中国造就了多少高薪岗位。

    其他行业就没有软件行业这么幸运,核心技术投入太高,研发根本搞不起,只能赚点快钱,要么做不大,要么做不长久,软件行业和互联网行业不只赶上了时代的顺风车,又享受了中国的人口红利,这是多么的辛运。

    程序员的担忧

    记得在我刚入行的时候,有个说法是程序员干不过30岁,那时大概是2011年,中国的第一代程序员基本都走上了管理岗位,47岁的”中国第一程序员“(注意这里没有代)求伯君退隐江湖,那时中国软件发展仅仅20年时间。所以五年后的今天,依然会流传这个说法,只不过数字有所改变:“程序员干不过35岁”。这样算来,5年后是40岁,10年后就是45岁。

    干不过30岁,一般是说这个行业吃的是年轻饭,说到软件开发这里,就是30岁后,身体没有20岁的小伙好,不能拼命的加班。所以最后的字眼还是定位到“加班”上面来。

    程序员加班似乎已经成为一个普遍的认知,和当官的必定贪污,年轻女子开豪车一定是被包养一样,昨天前同事还跟我发牢骚,说现在在华为做外包,认识到高工资必定得高付出,很多人都觉得程序员工资那么高,就应该加班才是,但是加班根本的原因是什么?

    加班一般是企业因为业务需要让员工在休息时间上班,还有一种就是在预期的时间内没有完成任务,需要加班。在软件行业中,项目似乎是永远都做不完的,加班基本都是赶进度,但是赶完了这个进度,做完了这个项目,继续有新的项目需要做。

    软件行业的项目管理很难做,以至于专门有软件工程这门学科,公司甚至在技术总监的架构中,增加了一个交付总监的职位,软件开发中业务的复杂,需求的变化,让一波又一波人陷入焦油坑中。

    我一直认为软件开发属于工程学领域,应用级的软件开发更算是熟练工种,科研领域中新人可以超越老人,但是工程领域新人只能跟着老人走,只是软件开发这个行业的技术变化太大,需要一直保持终身学习的态度,才不至于必须另寻出路。

    很多程序员都说,希望写代码写到60岁,这是对于编程的热情,而不是对于工作的态度。

    另外,如果有想学习C语言和c++的程序员,可来我们的C语言c++学习扣qun:9416,36044免费送C语言的视频教程噢!我整理了一份适合大学生学习的c++干货,送给每一位想学的小伙伴,并且每天晚上8点还会在群内直播讲解c/c++知识,欢迎大家前来学习哦。

    相关文章

      网友评论

          本文标题:浅谈程序员职业——“程序员干不过35岁!”

          本文链接:https://www.haomeiwen.com/subject/seiryqtx.html