如何识别优秀的程序员?并不是像听起来那么容易。在这儿<nobr><strong style="border: 0px none ; margin: 0px; padding: 0px; color: rgb(0, 0, 255); font-weight: normal; text-decoration: underline;" onmouseover='isShowAds = false;isShowAds2 = false;isShowGg = true;InTextAds_GgLayer="_u5DE5_u4F5C";KeyGate_ads.ShowGgAds(this,"_u5DE5_u4F5C",event)' onmouseout='isShowGg = false;InTextAds_GgLayer="_u5DE5_u4F5C"' onclick='javascript:window.open("http://pagead2.googlesyndication.com/pagead/iclk?sa=l&ai=BbrMPO06PR-TuG5W86AO2kelfrrKvMc6WhrUDwI23AfCEDhASGBIgrYXQDSgUOABQv8iww_v_____AWCdudCBkAWqAQoyMDAwMDM2MTI3sgENbmV3cy5jc2RuLm5ldMgBAdoBK2h0dHA6Ly9uZXdzLmNzZG4ubmV0L24vMjAwODAxMTcvMTEyODUzLmh0bWypAgeBt0WchoI-yALuw98DqAMB6AMw6APbBfUDAAQAAA&num=18&adurl=http://www.szleadtech.com.cn&client=ca-pub-5186439242807756");GgKwClickStat("工作","www.szleadtech.com.cn","afc","2000036127");' class="kgb">工作</strong></nobr>经验的作用是很有限的,因为伟大的程序员不一定要‘正式’的工作经历来证明他们的伟大。
1,激情。
我曾经遇到许多“职业程序员”,他们从事IT是因为觉得这是一种职业,他们只在工作时间<nobr><strong style="border: 0px none ; margin: 0px; padding: 0px; color: rgb(0, 0, 255); font-weight: normal; text-decoration: underline;" onmouseover='isShowAds = false;isShowAds2 = false;isShowGg = true;InTextAds_GgLayer="_u7F16_u7A0B";KeyGate_ads.ShowGgAds(this,"_u7F16_u7A0B",event)' onmouseout='isShowGg = false;InTextAds_GgLayer="_u7F16_u7A0B"' onclick='javascript:window.open("http://pagead2.googlesyndication.com/pagead/iclk?sa=l&ai=BbrMPO06PR-TuG5W86AO2kelfrrKvMc6WhrUDwI23AfCEDhASGBIgrYXQDSgUOABQv8iww_v_____AWCdudCBkAWqAQoyMDAwMDM2MTI3sgENbmV3cy5jc2RuLm5ldMgBAdoBK2h0dHA6Ly9uZXdzLmNzZG4ubmV0L24vMjAwODAxMTcvMTEyODUzLmh0bWypAgeBt0WchoI-yALuw98DqAMB6AMw6APbBfUDAAQAAA&num=18&adurl=http://www.szleadtech.com.cn&client=ca-pub-5186439242807756");GgKwClickStat("编程","www.szleadtech.com.cn","afc","2000036127");' class="kgb">编程</strong></nobr>,除非送去培训否则他们不会学习新东西,这不是好的程序员。我认为一个好的程序员总是对编程充满激情,而且好的开发者会做一些编程工作即使这没有报酬。激情是一个优秀程序员的重要指标。
2,自学好学
编程领域始终发展变化着,不出一年有些新<nobr><strong style="border: 0px none ; color: rgb(0, 0, 255); font-weight: normal; text-decoration: underline;" onmouseover='isShowAds = true;isShowAds2 = true;KeyGate_ads.Move(this,"","","-100826","技术","Web%u6280%u672F%u5728%u4F01%u4E1A%u4E2D%u5E94%u7528","http%3A//www.sd2china.cn/track2.html", event)' onmouseout="isShowAds = false;isShowAds2 = false" onclick='javascript:window.open("http://s4.17luntan.com/ClickPortal/WebClick.aspx?id=-100826&k=%u6280%u672F&siteid=0098295a-e262-40f7-ae50-7a6fbbdb678b&url=http%3A//news.csdn.net/n/20080117/112853.html&gourl=http%3A//www.sd2china.cn/track2.html&parm=A3FEE29D401981CF6868CE80F20BF220FF00F26EF0504BE0&alliedsiteid=0");' class="kgb">技术</strong></nobr>就 变成了老技术,这并不是说好的程序员要对所有新技术跟进,但有些却对学习任何新技术都没有兴趣。他们通常在学校学习了编程,然后工作后单位安排学什么就学 什么。如果在招聘中你听到“让我培训一个星期我就会胜任这个工作”那不要雇佣他。实际上,真正优秀的程序员始终谈论着你所不知道的新技术,向人们解释为什 么你必须用这个技术,哪怕没有听众听得明白,哪怕他自己也不明白。
3,聪明
聪明包括很多因素,情绪和社会交际只是其中之一。好的程序员绝不木讷,他们是最聪明的人,他们中的许多善于交际,健谈、兴趣广泛。
4,隐性的经验
—好的程序员通。常有自己的私人的一些研究、爱好、项目,而这些是他们不写在简历上 (通常觉得不值得写),但表现出来却可能恰恰是他的潜能、深度和后劲所在。
5,技术多样性
由于好的程序员喜欢学习和涉猎新技术,所以一般来说超过22岁的都熟知很多新技术,而且对多种技术的长短有 “强烈”的个人意见/见解,喜好尝试新鲜技术。
6,资格证书
资格证书并不是识别真正程序员的方法,MCSE、SCJP、说明不了什么,它们只是让别人认识和获取的,顶多代表这个人在某个技术有一定的知识。
原文作者在文末写道:以上所说的标准并不是绝对的,因为有些优秀的程序员确实不符合上述,而有些bad程序员却符合了。但相信这些对大多数真正的程序员都适用。
总结而言,优秀的程序员通常有一下特点:
n 对技术充满激情;
n 将编程作为一种爱好
n 如果你允许会滔滔不绝地跟你谈论技术
n 有过个人的开发经历(与4意思相同)
n 坚持认为某种技术最好
n 如果让他用他认为不好的技术他会非常别扭
n 聪明、健谈、兴趣广泛
n 在大学和工作前就开始接触程序
原文链接:http://www.inter-sections.net/2007/11/13/how-to-recognise-a-good-programmer/
分享到:
相关推荐
6,资格证书 资格证书并不是识别真正程序员的方法,MCSE、SCJP说明不了什么,它们只是让别人认识和获取的,顶多代表这个人在某个技术有一定的知识。 原文作者在文末写道:以上所说的标准并不是绝对的,因为有些优秀...
4. 风险管理:识别项目可能面临的风险,制定应对策略,减轻风险对项目的影响。 5. 质量管理:确保项目成果符合预期的质量要求,持续改进项目流程,提升项目质量。 6. 时间和成本管理:合理规划项目时间线,确保...
(一)《国际:如何识别真正的程序员》: 1,激情。2,自学好学。3,聪明 4,隐性的经验 5,技术多样性 6,资格证书 (二)《一个真正的程序员是什么样子的》: (1) 真正的程序员没有进度表,只有讨好...
这份"PHP高级程序员笔试题(含答案)"是...对于招聘者来说,这样的笔试题可以帮助他们找到真正能够胜任高级PHP程序员角色的候选人。而对于开发者来说,无论是否正在找工作,这类题目都是提升和检验自身技能的有效工具。
使用google一查,对这个定义的回答还真多,例如: (一)《国际:如何识别真正的程序员》: 1,激情。2,自学好学。3,聪明4,隐性的经验5,技术多样性6,资格证书 (二)《一个真正的程序员是什么样子的》: ...
在C++程序员的成长道路上,经常会遇到一些常见的误区和弯路,这些弯路不仅会浪费大量时间,还可能阻碍技能的真正提升。以下是C++程序员在成长过程中最常走的四条弯路,以及如何避免它们。 ### 弯路一:通过MS-VC++ ...
在识别真正优秀的程序员时,我们需要考虑的不仅仅是他们的工作经验或者证书,因为真正的才华往往超越了这些表面的衡量标准。以下是一些关键特征,可以帮助我们更好地理解并鉴别出那些真正热爱编程并具备深厚技能的...
AI程序员能够在应用程序开发过程中识别潜在的缺陷和错误,通过机器学习模型预测错误的类型及其可能的位置,从而降低调试成本,同时提升测试的覆盖率和精确性。 ##### 2.5 需求理解和管理 AI程序员利用自然语言处理...
程序员在面对纷繁复杂的编程挑战时,数据结构的知识和能力是他们手中最锋利的武器。数据结构不仅是计算机科学的基石,更...通过不断的学习和实践,程序员可以逐步提升自己解决问题的能力,成为真正高效、专业的开发者。
在试题4中,`GetMemory`函数分配内存并试图将其结果赋值给`str`,但由于指针传递是按值传递,`str`并未真正获得内存。面试者应该明白,必须将返回的内存地址保存回`str`。而在试题5中,`GetMemory`返回了一个指向...
5. **面试模式**:系统可能提供多种面试模式,例如单选题、简答题、编程题,甚至可以模拟与面试官的口头交流,通过语音识别技术实现人机交互。 6. **历史记录与分析**:用户可以查看自己的答题历史,包括完成时间、...
程序员需要学会如何识别并处理程序运行中的各种异常情况,以确保系统的稳定性和可靠性。这不仅包括对常见错误的处理,还需要具备排查和修复深层次问题的能力。良好的异常处理机制能够显著提高系统的健壮性,减少因...
- **问题识别**:确定文档需要解决的核心问题,例如功能验证、性能测试或是用户体验测试等。 - **方案制定**:基于问题的性质,选择最合适的测试方法和技术手段。例如,对于功能测试,可能需要详细的测试用例;而...
随着经验的积累,程序员能够更快地识别和解决问题,更好地适应不断变化的项目需求。 5. 学识:这指的是对特定技术栈、编程语言、框架和工具的深入理解。例如,熟悉Java、Python或JavaScript的高级特性,了解最新...
用例的核心在于识别系统能够提供的“价值”,这不仅仅是系统能够执行的功能,更重要的是这些功能如何满足用户的真实需求。例如,在取款机的例子中,“取款”是银行取款机向客户提供的核心价值,而非单纯的“登录”或...