首先讨论下,有多少实际工做经验叫老程序员呢?我这里定义5年吧,毕竟我才在公司开发了5年多点.(真真实实的开发了5年多,极少出差,一坐一天的开发.毕业前两年没从事开发,不算)程序员
我写的博客关于具体的技术,实现的详细说明或代码的方式写出来的极少.由于我擅长的只是.net,桌面开发方向,新入行的程序员web开发或app开发等都比我技术NB.web
可是,可是,个人优点在哪里?我认为我这5年多工做经验,最大的优点就是养成了程序员的工做习惯或工做态度及解决问题的办法.数据库
好比,我在公司接手一个新的项目,我首先会在电脑上建一个这个项目的文件夹,而后分门别类的把涉及这个项目的全部资料,都放在一这个文件夹里.oracle
而后在后续的开发,及修改过程当中,我会把本身的分析,及解决办法,业务的理解,客户的需求等等通通记录下来.这样,就算我让其余同事负责这个项目了,他也会有资料看,或者我辞职了,接手的程序员也会很快上手的.假如我去一个新公司,接手一个项目的维护工做,若是没资料,我很难上手的话,我会很快再辞职的.(这对公司来讲也是一个很大的损失)app
再者,我能坚持写这么多年代码,只有一个缘由,那就是我喜欢,享受写代码.这个很重要,不少程序员坚持不下去的缘由就是作开发根本没兴趣.操作系统
NB程序员还有一个重要的缘由,就是善于总结,善于思考技术点.假如思考这么多年的话,关于底层的,不少技术的前因后果都会很清楚.也会触类旁通进行创新..net
今天我忽然想到,像C,C++这些程序,编译连接后生产二进制可执行代码,而二进制命令是针对CPU,RAM,IO等硬件的,与操做系统无关,因此能够移植.我是这样想的.翻译
搞C#,我只有一个认识,就横走.net,那就是把引用类型理解成地址变量.orm
最后,经验的积累,会让我触类旁通,更好的解决问题,好比我没学过C++,照样把C++翻译成C#来操做硬件,安装一个ORACLE,报错不断,我不用问别人,而是本身解决.再好比,我没开发过Delphi程序,可是慢慢看代码,也能开懂6,7成.还有,我没有用ado链接过informix数据库,可是我曾经见其余同事用odbc联oracle,那触类旁通,也就链接成功了等等开发
再总结一下,老程序员的优点就在于,这么多年的开发,已经养成了本身的工做(开发)习惯和本身的处理问题的解决方式.
这才是宝贵的,新手程序员没法体会和竞争的优点.
路漫漫其修远兮,技术突飞猛进的变化,可是,根本的东西都不会变,变的只是表面.精通一门语言,其余都相似.
年纪大了,好记性不如记到电脑上.
我想终身搞开发,搞技术,写代码!