Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rating 作为一名程序员,你如何衡量自己的技能?_Rating_Metric - Fatal编程技术网

Rating 作为一名程序员,你如何衡量自己的技能?

Rating 作为一名程序员,你如何衡量自己的技能?,rating,metric,Rating,Metric,在之前的一次采访中,我被问到一个问题:“从0到10,你如何评价自己是一名程序员?” 我发现这是一个很难回答的问题,因为我不知道衡量我的技能有多好的标准。此外,了解您的表现将有助于了解您需要改进什么才能成为一名更好的程序员 有没有办法知道你的工作做得有多好 打电话给你以前的雇主,和继承你所有旧代码的人谈谈。他们会告诉你你是一个多么优秀的程序员 如果有人抱怨说,当你的几个软件系统投入生产时,你手头上什么都没有,那就意味着你的系统设计得很好,编码也很好,而且,与其他公司的代码猴子不同,你没有6个月的问

在之前的一次采访中,我被问到一个问题:“从0到10,你如何评价自己是一名程序员?”

我发现这是一个很难回答的问题,因为我不知道衡量我的技能有多好的标准。此外,了解您的表现将有助于了解您需要改进什么才能成为一名更好的程序员


有没有办法知道你的工作做得有多好

打电话给你以前的雇主,和继承你所有旧代码的人谈谈。他们会告诉你你是一个多么优秀的程序员

如果有人抱怨说,当你的几个软件系统投入生产时,你手头上什么都没有,那就意味着你的系统设计得很好,编码也很好,而且,与其他公司的代码猴子不同,你没有6个月的问题单让你忙个不停

如果是这样的话,请拍拍自己的背。你干得不错


记住,软件只有在赚钱后才能完成。

这是一个很难回答的问题。从一个纯粹的内省的角度来看,我认为“优秀程序员”的最佳衡量标准之一是:你有多喜欢你的手艺?我见过很多开发人员,其中一些非常优秀,但我从未见过任何人是一个9-5级的开发人员,并且能够管理比平庸的结果更好的东西

当然,向内看并不是衡量能力的最佳方式。我想你的程序员同事会给你一个相当可靠的答案。这样一个问题的措辞涉及到社交礼仪,但潜力仍然存在。根据我的经验,与你共事的人将对你的工作表现有最好的了解,如果你犯了错误,他们就必须收拾残局。:-)

最后一个小贴士:编程就是解决问题,纯粹而简单。想想你是如何处理遇到的难题的。首先,你对一个严峻的挑战有什么样的情绪反应?第二,你的代码是什么样子的?你只是在丛林中盲目地摸索,直到你得到某种结果,还是你的方法有条不紊、衡量周全并且(最重要的)经过了大量的研究?真正优秀的程序员并不是什么都懂或者能用八种语言实现Dijkstra算法的人,他们是那些花数小时翻阅教科书和晦涩难懂的博客来发现对当前问题至关重要的微小想法的人。如果你有耐心和激情去克服一个深刻的挑战,并且谦逊地向别人寻求想法,那么你就在通往“10”的路上

此外,了解您的表现将有助于了解您需要改进什么才能成为一名更好的程序员

事实上,了解自己需要改进的地方对于了解自己的表现非常重要。只要看看与你一起工作或互动的人,试着找出他们中你希望自己做得更好的地方。这将慢慢帮助你成为一名更好的程序员。随着您的成长,请查看其他团队和源代码(其他开源项目),以帮助您进一步提高自己


我认为一个更好的方法来回答给自己评分的问题,就是说我给自己的评分是x百分位,与我共事过的所有其他人相比

简单的回答是,你可以对照同龄人来衡量自己。也就是说,选一个一无所知的人,分配一个0,把你个人知道的最好的程序员分配给一个10的人,你怎么看待自己和这两个人比较?接近最佳?那将是一个8。中间的那将是一个5


不要回答0或10,尽量客观。问题的重点不是给你的程序员评分,而是给你的自我评估能力评分。您的洞察力,即。

任何编程语言的熟练程度似乎有三个级别:

  • 您可以立即修复语法错误,无需任何艰苦的脑力劳动
  • 您可以阅读其他人的代码并了解他们的意图,而无需将代码“翻译”为自然语言(或其他编程语言)
  • 一旦您理解了一个问题,您就可以用该语言提供的结构(命令式、面向对象、函数式……)自然地表达它
  • 我想这会让你从1->10开始


    值得注意的是,对一种语言的深入了解可能会阻碍另一种语言的学习。因为一旦你用语言“A”思考,你就必须重新连接你的大脑来学习语言“B”。显然,这只适用于完全不同类型的编程,例如C->C++、C->F、Java->Scala等。。。因此,我认为抽象地说,做一名“完美的程序员”是不可能的。

    作为面试官,我会问这个问题,看看应聘者在表达自己方面有多出色

    此外,它还显示了他们是多么的自我批评,以及他们为自己和同事设定了什么样的标准

    它不仅告诉你他们对上帝/糟糕编程的了解程度,还告诉你他们与客户互动以提取需求的能力,以及他们与团队其他成员的匹配程度


    实际排名0-10就不那么重要了。

    我认识一个人,他多年来一直使用这个面试问题。他说,最好的程序员倾向于给自己评分在7分左右。特别是那些给自己打分为10的人通常对自己的能力非常自信,因为他们从来没有遇到过真正优秀的程序员。但由于从未见过这样的人,他们会从谁那里学到真正的技能呢?当然,也有例外。但是如果你进入社区,你可能知道例外情况是谁

    顺便说一句,这种现象并不局限于编程。我找到了