博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(转)成为优秀技术人员的两点建议
阅读量:5846 次
发布时间:2019-06-18

本文共 1368 字,大约阅读时间需要 4 分钟。

 

 原文链接:http://www.cnblogs.com/baiyanhuang/archive/2010/06/08/1754310.html
 

  呃, 不要误会,这不是我给出的建议,我暂时还算不上“优秀”的软件技术人员。

  是这样,这几天,从美国那边过来几个比较有经验的同事,因为相对来讲,中国这边的团队比较年轻,因此安排了一个“Open Forum” 的讨论会,让他们与中国的同事分享一下成长经验。他们一个是中国人,清华硕士毕业后去了美国,有10年的工作经验了;一个是美国人,有20年的工作经验。

  其间有一个人问了个问题:“要成为一个比较资深、优秀的技术人员,你觉得什么是最重要的?” 这两位同学给出了看法基本一致,概括起来就以下两点:

 

  • Don't treat the code you not own as blackbox
    每个人写代码,其所涉及的方面不仅仅是你所”负责“的那些模块,你往往需要从整个系统的层面来考虑问题:我所依赖的那些模块是怎么工作的,怎样正确的使用他们?怎样高效的使用他们? 以及谁依赖于我,我的改动会对后续模块产生什么样的影响,等等。听起来蛮简单的一个道理,但要做到其实并不那么容易。尤其在一个有几百的模块的大系统中。很多人的工作方式是直接发封信去问那个模块的owner或者expert,的确很"高效",但是如果你需要长期在这个系统中工作,你需要经常接触这些模块,那么最“高效”方式恐怕是你好好研究一下这些模块,搞清楚其组成与工作方式,所谓磨刀不误砍柴工。不要认为这与我没有直接关系就可以不管,将其看成一个"blackbox",其实在程序员面前,只要你愿意,什么都是“whitebox”,任何程序都没有什么magic,只是以最简单的规则与逻辑组合起来的东西而已。
    而最关键的是,只有这样,你才会进步,你才会渐渐成为某一领域的专家。不然,正如你所注意到的那样,有些人在干了N年之后,问他整个系统是怎么工作的,他都说不出个子丑寅卯来。
  • Don't assume, just confirm
    假设害死人,害死你自己,或者害死别人。举两个例子:
    1. 在调试程序的时候,我们经常会做了自以为是的假设:注册表应该没问题吧、DLL数据的初始化也不会出错的,那么会是消息传递出错了吗? 好像也不会~~~。 我们一直在思考,却不去求证,而这所谓的思考,就是假设,然后在自己错误的假设下愈行愈远。这是害死自己。
    2. 作为某一领域的权威,人家发信问你个问题,你不太确定,于是回道“我觉得”应该是这样,或者应该是那样,然后人家照你“觉得”的方式试了一天,不行,然后和你说不灵,然后你再“觉得”一下,继而又浪费人间一天时间。这是害死别人。
    其实为什么要做这些假设呢,你完全可以停下来,花个5分钟或者10分钟去确认一下,不就什么都ok了?一步一步踏踏实实往前走,才是真正的往前走,依靠在那些浮云般的假设,你始终都在摇晃。而且,正是这一次次的确认,才构成了你真正的经验,不然,若干年后,你有的只有自己的假设别人告诉你的结论
  其实做不到这两点的,关键还是懒:懒得去研究学习,懒得去确认。所以,要成为优秀的技术人员,归根结底还是勤奋啊!

转载于:https://www.cnblogs.com/sdlwlxf/p/4278151.html

你可能感兴趣的文章
我的友情链接
查看>>
Nginx的健康检查机制
查看>>
Nginx介绍及企业web服务软件选择
查看>>
计算机书籍备忘
查看>>
esxi虚拟机中系统克隆及迁移的方法
查看>>
Linux必学的62条命令 (4)
查看>>
App_Offline.htm 功能
查看>>
java之旅
查看>>
解决linux虚拟机不能上网的问题
查看>>
恢复Reflector反编译后资源文件的办法
查看>>
HandlerExceptionResolver异常解析器家族揭秘
查看>>
Red Hat Linux4.0下主DNS服务器的搭建
查看>>
https/443安装
查看>>
Web服务器压力测试工具http_load、webbench、ab、Siege使用教程
查看>>
我的友情链接
查看>>
RHEL6.3 源码安装Puppet
查看>>
我的友情链接
查看>>
mybatis 和 hibernate 区别?
查看>>
初级文件系统管理之一
查看>>
Mac软件下载备忘
查看>>