论坛首页 综合技术论坛

什么样的技术人才最受欢迎?说下我个人的感受

浏览 34674 次
该帖已经被评为良好帖
作者 正文
   发表时间:2011-06-21  
我那天去面试,面到最后领导了,
领导就问我 操作系统 问我算法,因为工作后,学校里的很多东西忘了

所以就没打上来,然后他就说我技术不行,

然后我就跟他理论(已经带情绪了,争论了很久),

不过还好,最后那领导改变观点了
0 请登录后投票
   发表时间:2011-06-21   最后修改:2011-06-21
yizhilong28 写道
jackra 写道
zhao3546 写道
Durian 写道
还要对JVM的内部机制要有所以了解,比如JVM的内存管理,类加载机制等

这些东西有啥用?


我不知道你有没有遇到过Java内存泄漏的问题,Java内存泄漏还分几种,感兴趣自己去找找。
如果你写的代码只有几个人用,可能有些问题你永远都不用考虑;
但假如你的代码每天有几万人、几十万人在用,很多小问题可能都会无限放大变成大问题。

如果你不能深入地去学习一些东西,而只停留在List、Map等几个常用类的使用上,我觉得你应该考虑一下你以后要怎么办。

内存泄漏?我见过,有文件句柄不够的,也有数据库连接超越最大允许数的,还有各种不关游标的,各种不关statment的。
程序员不一定必须要犯这样的错误,片面的强调这些,其实不见得是好事。很难想象在一组嵌套的N千行的function里,一个人能控制自己所有的逻辑代码。一些有好习惯和良好的素质教育的程序员,就算没有经验,也不见得就一定要犯你说的错误,他们在创造外部资源依赖的时候,或许已经就对外部资源进行了关闭。这些其实是基础知识,接受过良好的编程教育或者认真的对待这些经验问题的人,是可以通过学习学到的。
对于资源管理的知识,有些人当回事,有些人不当回事。很难说,把结构搞的很复杂,然后自己的资源控制不住,到底是水平问题,还是智商问题,或者是根本没用心思的问题。

程序员的基本素质,永远不会认为自己没有错误,而是计算机在犯错误。任何的错误都可能是由人导致的,而绝对不会是机器。你可以说JVM会有差异,也可以说操作系统有问题,但是机器永远代表的是现实存在的物理规律,而不是可以随便犯违反规律错误的带有情绪和不确定因素的活物。

聪明的程序员,要想办法防止自己陷入麻烦,进而防止团队陷入麻烦。所以聪明的程序员,应该学会挑选合适的团队、合适的领导、合适的团队,更聪明的程序员,就得做到“宁武子邦有道则知,邦无道则愚;其知可及也,其愚不可及也。”该钓鱼的时候钓鱼,该摸鱼的时候摸鱼吧。

事实上,聪明的程序员,会把麻烦的事情想到合适的解决办法。比如对于可能变化的设计,保存足够的生成代码的资料(详细设计),比如避免重复劳动而花费写时间为需要重复做的事情写脚本,还有必须发现项目的潜在危险(比如不确定的需求,无法确定的客户态度,以及无法确定的领导结构)。但是,其实聪明的程序员,不见得是成功的,毕竟现阶段的环境就是如此,天才也不一定能胜的过天朝。呵呵。

也许有时候,技术并不是真正的核心内容也说不定。永远不要在程序上谈论程序。单纯的程序,什么都不是。只是一些消耗电能的指令而已。


如果执泥于技术,会出现很搞笑的状况,学着学着就看起道德经起来,哈哈

想起很早以前的一本书《J道》以前一直想读,但是水平不够,没读懂,这家伙,估计肯定看过《道德经》
0 请登录后投票
   发表时间:2011-06-21  
受益匪浅,,很是受教了。
只是不知道的还很多,该怎么学呢???
0 请登录后投票
   发表时间:2011-06-21  
真正的疑难杂症不是解决了的..而是无缘无故又好了的..坑爹啊..
0 请登录后投票
   发表时间:2011-06-21  
jackra 写道
zhao3546 写道
Durian 写道
还要对JVM的内部机制要有所以了解,比如JVM的内存管理,类加载机制等

这些东西有啥用?


我不知道你有没有遇到过Java内存泄漏的问题,Java内存泄漏还分几种,感兴趣自己去找找。
如果你写的代码只有几个人用,可能有些问题你永远都不用考虑;
但假如你的代码每天有几万人、几十万人在用,很多小问题可能都会无限放大变成大问题。

如果你不能深入地去学习一些东西,而只停留在List、Map等几个常用类的使用上,我觉得你应该考虑一下你以后要怎么办。

内存泄漏?我见过,有文件句柄不够的,也有数据库连接超越最大允许数的,还有各种不关游标的,各种不关statment的。
程序员不一定必须要犯这样的错误,片面的强调这些,其实不见得是好事。很难想象在一组嵌套的N千行的function里,一个人能控制自己所有的逻辑代码。一些有好习惯和良好的素质教育的程序员,就算没有经验,也不见得就一定要犯你说的错误,他们在创造外部资源依赖的时候,或许已经就对外部资源进行了关闭。这些其实是基础知识,接受过良好的编程教育或者认真的对待这些经验问题的人,是可以通过学习学到的。
对于资源管理的知识,有些人当回事,有些人不当回事。很难说,把结构搞的很复杂,然后自己的资源控制不住,到底是水平问题,还是智商问题,或者是根本没用心思的问题。

程序员的基本素质,永远不会认为自己没有错误,而是计算机在犯错误。任何的错误都可能是由人导致的,而绝对不会是机器。你可以说JVM会有差异,也可以说操作系统有问题,但是机器永远代表的是现实存在的物理规律,而不是可以随便犯违反规律错误的带有情绪和不确定因素的活物。

聪明的程序员,要想办法防止自己陷入麻烦,进而防止团队陷入麻烦。所以聪明的程序员,应该学会挑选合适的团队、合适的领导、合适的团队,更聪明的程序员,就得做到“宁武子邦有道则知,邦无道则愚;其知可及也,其愚不可及也。”该钓鱼的时候钓鱼,该摸鱼的时候摸鱼吧。

事实上,聪明的程序员,会把麻烦的事情想到合适的解决办法。比如对于可能变化的设计,保存足够的生成代码的资料(详细设计),比如避免重复劳动而花费写时间为需要重复做的事情写脚本,还有必须发现项目的潜在危险(比如不确定的需求,无法确定的客户态度,以及无法确定的领导结构)。但是,其实聪明的程序员,不见得是成功的,毕竟现阶段的环境就是如此,天才也不一定能胜的过天朝。呵呵。

也许有时候,技术并不是真正的核心内容也说不定。永远不要在程序上谈论程序。单纯的程序,什么都不是。只是一些消耗电能的指令而已。


如果一个程序员遇到各种难题并能解决,我相信他的基本编程技能肯定是没有问题,至少他遇到过的问题他不会再犯了;另外,解决过一些难题后,心态也会成熟很多,这点我想你多少会有感受。你第一次遇到难题和你第十次遇到难题的心态,肯定会相差很多吧。
你解决技术问题的过程,正是你个人能力和水平的体现,如果你还将这些问题总结并分享出来,在总结的过程中,你个人肯定会收益良多,分享的过程,肯定也会对他人有不少启示。

从长远来看,技术多少还是要为产品服务,如果你做的产品没有任何价值,就算你的技术再先进又能如何?

其实在论坛上和大家交流也是一种分享,就算我的观点你不同意,我的观点多少也引起你的思考了,不是吗?
1 请登录后投票
   发表时间:2011-06-21  
jaystarba 写道
受益匪浅,,很是受教了。
只是不知道的还很多,该怎么学呢???


怎么学?其实很简单,踏实地做好本份工作,在做项目的过程中,适当地拓展和延伸,让自己知识的深度和广度得到发展。
在遇到问题的过程中,适当地加以深入学习,这种方式个人觉得收获最大,印象也最深刻。

我第一次花了两三周解决一个内存泄露的问题后,对JVM的内存管理及JVM的一些高级命令的掌握一下子提升了不少,当然中间的过程也很痛苦,但解决了这个问题后,领导一下子就认可了我。
0 请登录后投票
   发表时间:2011-06-21  
zhao3546 写道
jackra 写道
zhao3546 写道
Durian 写道
还要对JVM的内部机制要有所以了解,比如JVM的内存管理,类加载机制等

这些东西有啥用?


我不知道你有没有遇到过Java内存泄漏的问题,Java内存泄漏还分几种,感兴趣自己去找找。
如果你写的代码只有几个人用,可能有些问题你永远都不用考虑;
但假如你的代码每天有几万人、几十万人在用,很多小问题可能都会无限放大变成大问题。

如果你不能深入地去学习一些东西,而只停留在List、Map等几个常用类的使用上,我觉得你应该考虑一下你以后要怎么办。

内存泄漏?我见过,有文件句柄不够的,也有数据库连接超越最大允许数的,还有各种不关游标的,各种不关statment的。
程序员不一定必须要犯这样的错误,片面的强调这些,其实不见得是好事。很难想象在一组嵌套的N千行的function里,一个人能控制自己所有的逻辑代码。一些有好习惯和良好的素质教育的程序员,就算没有经验,也不见得就一定要犯你说的错误,他们在创造外部资源依赖的时候,或许已经就对外部资源进行了关闭。这些其实是基础知识,接受过良好的编程教育或者认真的对待这些经验问题的人,是可以通过学习学到的。
对于资源管理的知识,有些人当回事,有些人不当回事。很难说,把结构搞的很复杂,然后自己的资源控制不住,到底是水平问题,还是智商问题,或者是根本没用心思的问题。

程序员的基本素质,永远不会认为自己没有错误,而是计算机在犯错误。任何的错误都可能是由人导致的,而绝对不会是机器。你可以说JVM会有差异,也可以说操作系统有问题,但是机器永远代表的是现实存在的物理规律,而不是可以随便犯违反规律错误的带有情绪和不确定因素的活物。

聪明的程序员,要想办法防止自己陷入麻烦,进而防止团队陷入麻烦。所以聪明的程序员,应该学会挑选合适的团队、合适的领导、合适的团队,更聪明的程序员,就得做到“宁武子邦有道则知,邦无道则愚;其知可及也,其愚不可及也。”该钓鱼的时候钓鱼,该摸鱼的时候摸鱼吧。

事实上,聪明的程序员,会把麻烦的事情想到合适的解决办法。比如对于可能变化的设计,保存足够的生成代码的资料(详细设计),比如避免重复劳动而花费写时间为需要重复做的事情写脚本,还有必须发现项目的潜在危险(比如不确定的需求,无法确定的客户态度,以及无法确定的领导结构)。但是,其实聪明的程序员,不见得是成功的,毕竟现阶段的环境就是如此,天才也不一定能胜的过天朝。呵呵。

也许有时候,技术并不是真正的核心内容也说不定。永远不要在程序上谈论程序。单纯的程序,什么都不是。只是一些消耗电能的指令而已。


如果一个程序员遇到各种难题并能解决,我相信他的基本编程技能肯定是没有问题,至少他遇到过的问题他不会再犯了;另外,解决过一些难题后,心态也会成熟很多,这点我想你多少会有感受。你第一次遇到难题和你第十次遇到难题的心态,肯定会相差很多吧。
你解决技术问题的过程,正是你个人能力和水平的体现,如果你还将这些问题总结并分享出来,在总结的过程中,你个人肯定会收益良多,分享的过程,肯定也会对他人有不少启示。

从长远来看,技术多少还是要为产品服务,如果你做的产品没有任何价值,就算你的技术再先进又能如何?

其实在论坛上和大家交流也是一种分享,就算我的观点你不同意,我的观点多少也引起你的思考了,不是吗?

我不是否认你的观点。而是从另一个方面来阐述问题而已。中国文化里有很多很多的“只有。。。才能。。。”可事实情况真的如此吗?最少从一些天才的事件中一次次的在阐述“如果。。。也能。。。”我只是觉得,没有必要给什么所谓的后辈必要的框框,自由的天空下,才有自由的代码飞翔。不可否认,IT方面是有天才的,我无法想象这些天才的大脑,但我尊重他们与众不同的智慧。
0 请登录后投票
   发表时间:2011-06-22  
Durian 写道
zhao3546 写道
Durian 写道
还要对JVM的内部机制要有所以了解,比如JVM的内存管理,类加载机制等

这些东西有啥用?


我不知道你有没有遇到过Java内存泄漏的问题,Java内存泄漏还分几种,感兴趣自己去找找。
如果你写的代码只有几个人用,可能有些问题你永远都不用考虑;
但假如你的代码每天有几万人、几十万人在用,很多小问题可能都会无限放大变成大问题。

如果你不能深入地去学习一些东西,而只停留在List、Map等几个常用类的使用上,我觉得你应该考虑一下你以后要怎么办。

遇到过几次内存溢出。
eclipse编译大工程时候溢出,只要设置eclipse的初始化参数 =256m就可以。
死循环也会溢出
递归次数过大肯定溢出
不确定数据连接不关闭,连接数占满是否溢出?
这些问题靠jvm能解决?

另外,看类加载有啥用?

笑而不语,笑而不语。。。。
0 请登录后投票
   发表时间:2011-06-22  
我觉得楼主说的“先在某一方面成为专家,再扩展知识面”,这一点很有道理
0 请登录后投票
   发表时间:2011-06-22  
要记那些遇到困难的时刻,那平时心情能好吗?要不咋说过劳死呢!我基本上处理完棘手问题只要保证下次在遇到知道就行了,我才不记着过程呢,太伤脑细胞!同意的打钩啊
1 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics