27

在招聘前端开发人员时,您应该测试哪些特定技能和实践?评估他们在 HTML、CSS 和 Javascript 方面的技能的好指标是什么?

显然,无表语义 HTML 和纯 CSS 布局可能是关键技能。但是具体的技术呢?他/她应该能够毫不费力地模拟多列布局吗?CSS精灵?等高(或人造)列?HTML 标签的选择是否重要(即过于依赖<div>)?他们应该能够(用文字)解释花车是如何工作的吗?

那么javascript技能呢?框架经验(jQuery、Prototype 等)有多重要。今天?

显然,职位的详细信息和他们将从事的工作地点是需要哪些技能的最佳指示。但我想知道在为候选人创建测试时,人们可能会认为哪些特定技能会破坏交易(或制造商)。

4

13 回答 13

19

当我面试客户端开发人员职位的人时,我试图弄清楚:

1) 了解 DOM(那是什么,它与 HTML 有什么关系等)
2) 理解 XML/命名空间
3) 理解 JavaScript(面向对象?否则如何)
4) 了解组件化方法(XBL、HTC) - 加
5)理解OO原理
6) JavaScript 闭包
7) 浏览器内存泄漏

我马上给出的唯一简单的测试用例:

<script type="text/javascript">
变量 a = 1;
</脚本>

我建议受访者用技术术语解释那条线。

我还检查了对 Web 技术当前状态的总体认识,在其他问题中,我建议设计一个 Web 浏览器,建议受访者选择他将投入到他的全新生物中的技术,建议可能缺少的技术当前的客户端平台。

于 2008-10-13T17:33:06.610 回答
7

我可以建议你在线测试,包括 HTML、CSS 和 JavaScript。

http://tests4geeks.com/test/html-css-javascript

它有 60 个问题(每个主题 20 个)。考生完成考试后,您将通过电子邮件收到报告。

于 2013-02-14T12:05:16.807 回答
5

Sergey 和 swilliams 都给出了很好的答案,特别是 swilliams 提到要求投资组合是关键。使用投资组合,您还可以测试以下项目,

  • html 和 css 是否有效?
  • 演示文稿是否在浏览器中呈现一致?
  • 候选人有 JavaScript 错误吗?如果他们这样做了,这个人是让他们冒泡到表示层还是他们至少用一个 try/catch 块来捕获它们?
  • 就 JS 而言,这个人有多先进?他们可以进行表单验证吗?他们可以做正则表达式吗?他们是否依赖 MM_Preloader?(呸!)

作品集还可以让人感受到某人对 Web 开发的热情。此外,如果他们为其他人建立了一个网站,仅此一项就提供了与候选人讨论许多事情的机会,

  • 他们是如何着手开发 UI 的?
  • 什么样的规划进入了网站?
  • 如何发现/满足用户期望?
  • 施工过程中遇到了哪些挑战?

除了这些项目之外,您可能要考虑的另一种方法是开发人员测试,您可以将其发送给潜在雇员。没有什么比一天更难的了,但足够的脑筋急转弯来看看他们是否可以解决 CSS 或 JS 问题。

于 2008-10-13T18:12:18.340 回答
4

索取作品集,然后与您的团队一起审查。这照顾了装腔作势的人和“不能很好地处理采访”的人。

除此之外,我会向他们展示一些相对简单的模型和一台笔记本电脑,然后说“试试吧”。

也许问他们今天最喜欢网页设计的什么,最讨厌什么。询问他们对即将发生的事情(HTML 5、IE 8、Chrome 等)的看法,看看他们是否跟上即将发生的事情。

询问他们是否有最喜欢的 JavaScript 框架以及为什么。也许让他们在 JS 中编写一些代码,例如 [in] 著名的嘶嘶声问题。

于 2008-10-13T17:30:56.443 回答
4

在我的公司,我们不使用测试,而且作品集更重要,尤其是因为我们倾向于关注候选人的个人动机和对前端开发的热情。

但是,如果我应该在招聘之前给候选人一个测试,我会这样做:

交出一张经过 Photoshop 处理的网页的打印件,该网页代表了一个清晰的语义组件树。询问该人他或她将如何得出 html 的结果。只是请他或她大声思考。看到一个页面时会想到什么,知道它需要开发。

然后归结为候选人采取的方法。

为每个特定的 html 部分选择最佳可用标记是一个(重要的)方面,但可以由周围有经验的人掌握,以指导新员工。能够正确地将设计分解为其语义组件,识别部分并将主要和次要内容与导航分开不是数学或科学,因此难以测试。但是关于分解页面方法的对话可能会将有经验的人和初学者分开。

但正如我在第一行所说的,我们通常会询问一个人在空闲时间做了哪些与网络相关的工作,例如博客、游戏或演示。如果做了任何事情,这个人通常非常擅长前端开发,或者渴望学习和适应。

于 2008-10-14T06:10:28.780 回答
2

我们过去要么为他们设置一个小简报,让他们在特定的时间范围内工作,要么在某些情况下与他们签订一份工作,看看他们的进展如何。

我从不担心让某人坐在面试室的笔记本电脑前并想出一个解决方案,因为那种环境(你希望)与正常的工作条件不太一样。

简介的确切性质在很大程度上取决于您正在寻找的技能。在一些商店中,前端开发人员在实现设计“氛围”时将不得不承担一定程度的填补设计空白,和/或履行“品牌警察”职责。
在这些情况下,在简报中留下一些关于排版的一些细节和其他小细节的漏洞可以给你一些关于他们在这些方面的能力的提示。
让他们选择 javascript 框架,他们是选择最适合这项工作的框架,还是他们知道的框架。(主观问题,是的。但是为了一个日期选择器和一些菜单动画而引入道场可能是矫枉过正)

我会寻找可以实现基于 css 的布局的人,但如果在处理遗留项目时需要,实际上可以在基于表的布局上工作。尽管受到了诽谤,但 hacky 表格布局的一些更精细的细节并不总是那么容易。

这类任务的主要内容是对细节的关注,他们是否为打印添加了一套样式规则,使用了适当的图像大小和格式,生成了干净有效的代码,他们是否因为真的想要这份工作而去追求黄金,并准备稍微伸展自己来得到它。

因为你给了他们一些额外的时间,所以期望他们试图给人留下深刻印象是公平的,而不是把他们放在一张陌生的桌子上并告诉他们去做的那种充满压力的情景。因此,虽然现实并且不期望每天在每项任务上都完美地工作,但在这种情况下,我正在寻找黄金,或者至少证明黄金是目标。

扔一个他们以前没有做过的东西的曲线球......看看他们能很快把它捡起来。经验是好的,但在一个变化如此之快的领域,快速学习的能力可能更为重要。

于 2008-10-14T02:55:02.170 回答
1

了解浏览器的不同之处也很关键。尤其是 IE。如果他们只为 IE 编码过,请当心!Vica Versa 也是如此,如果他们从未在 IE6/7 中测试过他们的东西,他们就不知道它的失败有多可怕。

如果他们能说出 3 件失败的事情,或者在 IE 中需要解决方法,那么他们很可能会成功。如果他们不能,他们还没有足够的跨浏览器体验。

于 2008-10-13T22:03:58.903 回答
1

我问人们他们使用什么工具,他们如何编码,即他们是否使用 DreamWeaver、BBEdit、emacs 或其他什么。假设他们不只是给出一个单词的答案,您通常会了解他们的优先级是什么,他们如何编码等。

然后我问他们如何验证他们的代码,这总是很有趣。

除了通过让他们坐下来敲定一个页面来实际测试他们之外,我还会询问他们所做工作的具体示例,以及他们如何解决问题。

例如,你说“告诉我们你在一个严格的期限内完成的工作”或者你说“告诉我们一个非常令人沮丧的问题以及你是如何克服它的”“在你最近完成的工作中,发生了什么你最自豪?”

通过这种方式,您可以深入了解他们所做的事情、他们解决问题的技能和经验、他们处理压力和挫折的方式,当然还有他们的变通办法/偷工减料措施是聪明的还是愚蠢的.

于 2008-10-14T02:18:12.883 回答
0

感谢您到目前为止的所有答案。他们绝对是很好的建议。不过,我还没有准备好将其标记为已接受。我真正寻找的是前端开发人员需要能够在测试环境中生成的具体任务。换句话说,什么是 CSS 的 FizzBu​​zz?

我确实同意,一个扎实的作品集和聪明地谈论这个主题的能力可能会最大限度地降低考试的重要性。另一方面,我认为我们都知道非常善于说大话的候选人,但是当涉及到实际展示实际知识时,他们就功亏一篑了。

@JonathanHolland - 我倾向于不同意。HTML/CSS 确实很容易学习,但是从一些快速教程中获得的知识与花费数年时间做布局的人相比是微不足道的。优秀的 CSS 开发人员可以提供许多技术和实践。

@roenving - 也许我是多余的。通过“纯 CSS”,我的意思是无表。我还指不使用表格作为布局方法的意义上的无表格。但是,这不是 div-vs-table 布局讨论的问题。试试这里。尽管我相信现在大多数雇主都会问开发人员是否可以在不使用表格的情况下进行布局(作为一种方法)。

于 2008-10-13T22:04:08.217 回答
0

我没有任何招聘经验,但我参加了许多 Web 开发人员的面试,并且可以讲述我的经历。

在我所有的采访中,一种方法确实被认为是发现真正人才的最佳方式。我承认我不是专家,这可能就是我没有得到这份工作的原因,但这是淘汰那些有能力和优秀的人的绝妙方法。

我们被问了几个关于 DOM、面向对象、闭包、XML 命名空间和一般 Web 设计的问题,然后我们被带到一个安静的办公室,可以看到附近河流的美景,并被要求写几个例子来展示我们的能力. 我们被单独留下,但被告知如果我们需要使用浏览器,将在之后查看源代码和我们的浏览器历史记录。我们被要求使用以下内容制作公司内部网:

  • 一个简单的三列布局
  • 使用 CSS 制作的漂亮表格
  • 一个可用但好看的导航栏。
  • 使用 XML 和 JavaScript 进行动态加载

只要花一点时间来做这件事,你就会看到真正能做这件事的人。虽然也许他们的示例总是更好或更适合不同的应用程序,但这只是表明展示开发人员技能的最佳方式是让他们做出一些事情!如果你知道你的东西并且他们知道他们的东西,那么他们的代码会很好。

于 2008-11-20T15:38:35.837 回答
-1

"

显然,无表语义 HTML 和纯 CSS 布局可能是关键技能。

"

没看懂这句话...

您真的是说为了避免使用表格而以复杂的方式使用表格来完成一项简单的任务会更好吗?-)

餐桌恐惧症就像在没有服务器端帮助的情况下制作大型网站一样难受...

当然,过去十年的餐桌地狱并不有趣,但是如果不使用桌子来完成很多任务真的很愚蠢......

使用 easyist 完成任务的 html 元素,无论它使用哪个标记名!-)

——而且我不明白什么是“纯 CSS 布局”;我从来没有想过如何创建一个没有 html 元素的 html 页面来托管样式表中的布局......

于 2008-10-13T21:55:45.410 回答
-2

我知道这不是一个很好的答案,但我做的第一件事就是公开他们的 Word 简历的格式。如果他们利用了 Word 提供的缩进和样式,而不是制表符、制表符、制表符、空格、空格、空格、空格,那么他们就会排在首位。

于 2008-10-13T19:43:57.890 回答
-9

我不会太重视它,因为正确的 HTML/CSS 非常简单,任何人都可以在一周内学会它。

也就是说,您可能想查看他们的投资组合,以帮助您对他们当前的技能水平做出决定。

于 2008-10-13T17:30:00.360 回答