看了这里不少人的帖子都说自己的经历如何如何,按我看来他们不少人其实还没有真正入行(包括我自己也只能算初级程序员向中级靠拢的阶段)。
我觉得做IT的人最重要的是对自己有非常清醒的认识,不要懂的一些浅薄的技术就自以为是。要明白自己和真正大公司的高手比较其实还是井底之蛙。我起码认识好几百个程序员,但是真正让我佩服的只有2个,让我觉得是个程序员高手的也不到10个人。
对于我们这些做应用级别的程序员来说,要非常透彻的理解系统不是那么容易。我自己算是对C++,JAVA,UNIX/LINUX和ORACLE/POSTGRE略有了解,但是对于操作系统和内核从来没有接触过,算法我也不好,写出来的CODE可读性还行但是效率只能凑合。不过我也不打算在系统底层钻下去,因为这个不是我的优势所在,目前我对公司运作和项目管理挺感兴趣。其实我也算是挺喜欢技术,但是当一种技术了解到7、8成左右我就没兴趣了。除了C++是要混饭吃不得不学,ORACLE是真正算有点兴趣混了个ORACLE DBA证书。
我很感谢我以前的一个TEAM LEADER, 从他身上和他写的代码里面我学到我现在的75%的技术(我本科毕业时候写C程序连strcpy都不会调用,比起现在的毕业生差的远了,很惭愧.幸好自学能力还行,刚毕业的那2年每晚看2个小时编程书籍,也基本上赶上来了)。我的Team leader是C++,JAVA,UNIX,ORACLE,PB无所不精的,特别是系统设计能力即使是在国外的大IT公司也没有见过比他强的。每次请教他之后我都觉得有所进步甚至醍醐灌顶的感觉:p
我还有个比较幸运的地方就是那时候公司有不少大项目(大概几百到上千万人民币,要开发一些跑在几十台服务器上的分布式系统,几百到几千万用户,一般每天几千万条数据吧)都让我一个人负责总体设计、编码和连调。我试过好几次出差临去飞机场前以及出差时在宾馆疯狂CODING的经历,实在是难忘。 刚毕业那2年,每天下班的时候就觉得自己比昨天懂的多了一些,那种幸福的充实感实在是很美妙。这段经历也使得我比同龄的程序员在广度上有所优势,所以出国很短时间就找到一份不错的工作。现在在国外写程序就没啥意思了,白天干完吩咐下来的活就算了,不想费心思去优化,纯粹是为了混口饭吃。晚上就刷中文网站和学英文,技术感觉进步不大,整个人有趋向颓废的感觉。
Anyway我举自己的这个例子是想说明2点:1.身边的人是影响你技术最大的。如果你想走技术路线而又发现公司的人比你差那么你就要考虑跳槽了。 2.你一定要对技术有兴趣并愿意花大量时间去钻研才能有所进步。