由于没有人问过我在哪里可以找到 SO,而且我可能很快就会雇用一个 Haskell 开发人员,所以我想我会提出这个..
要问一些详细的口头问题,以证明对 Haskell 有很强的工作知识。我能想到一些好的问题和编码项目,但看看其他人的想法真的很有帮助。
由于没有人问过我在哪里可以找到 SO,而且我可能很快就会雇用一个 Haskell 开发人员,所以我想我会提出这个..
要问一些详细的口头问题,以证明对 Haskell 有很强的工作知识。我能想到一些好的问题和编码项目,但看看其他人的想法真的很有帮助。
我通常会问一些面试问题,从简单开始,然后再努力。最终,你会遇到一个足以让候选人失败或至少流汗的问题,然后你会看到他们如何应对压力。
所以对于 Haskell,你可以选择:
我的最爱之一是:
编写一个函数,按元素的频率对列表进行排序。列表中出现频率最低的元素应该排在最前面,出现频率最高的元素应该排在最后。例如,[3,2,1,2] 应按 [3,1,2,2] 排序。
我喜欢这样的问题,因为它们允许申请人提供一个简单的解决方案,并且仍然可以讨论更有效的替代方案。
当然,你会想在面试的后期问更复杂的问题。
“解释你认为 和 的相对优势和Monad
劣势Applicative
。Arrow
”
“解释你认为使用类型族和依赖类型的相对优势和劣势。”
但主要是,您希望看到一些代码,然后在那里编写,并且您需要询问他们将如何在各种情况下开发解决方案的问题。