面试问题以评估Linux C程序员

时间:2009-12-03 09:18:40

标签: c

我不是一名C程序员,我将采访一位有3年Linux经验的人。在他的简历中,他说他对C编程很有经验。

所以我的问题是,如果你要采访这个“C linux”的家伙,你会问什么问题,以确保这个人有能力?顺便说说, 我希望你也给我答案: - )。

提前致谢。

5 个答案:

答案 0 :(得分:10)

不要模拟你没有的知识。这会引起注意,这是您正在玩的公司形象。候选人可能希望找到更好的机会。

对你的C级别说实话,并向他提出有关他在C和Linux中发现的精彩内容以及他认为缺点的问题。让他告诉你他以前的经历是什么。

不是欣赏他的知识,而是欣赏他的激情。

答案 1 :(得分:10)

如果候选人真的知道他的东西(C Linux编程),他会很快找到你,但无论如何,这里有一些指向你应该调查以准备问题的主题:

  • POSIX概念
  • 标准C库(libc),ANSI C
  • 调试和分析工具:gdb, valgrind,strace等
  • Linux / UNIX系统调用:sbrk,mmap,fork等
  • 线程
  • (在此处插入您最喜爱的指针问题)
  • GNU工具链:gcc,ld,as,automake,autoconf等。
  • Classic Linux实用程序C / C ++ 库:glib,qt等。

答案 2 :(得分:2)

说实话,我认为你最好的办法是让在面试中遇到C程序员的人提问,你只能真正判断自己拥有的能力。

如果那是不可能的,我会说你应该问一些测试他们指针知识的问题。一个明显的例子是编写字符串操作函数,例如strcpy

答案 3 :(得分:1)

收藏: 问他C的强度在哪里......以及为什么他会建议使用它...也许你可以给他一个项目的例子。他必须从他的角度阐明为什么C是该工作的正确语言。

从我的观点来看,了解语言是否真正适合项目是非常重要的。不是因为它是你最喜欢的语言......

这是一个简单的问题......

答案 4 :(得分:0)

如果您要做的只是评估他对某种语言的了解,并且您不懂那种语言,那么您将无法评估他。

你可以改为评价“这个人可以这个节目,并且他是一个很好的沟通者”并且与他就你的知识保持联系吗?给他一个基本的问题,fizzbuzz或其他什么,并要求他用C 编写代码,然后给你一个C教程。然后做一些更复杂的事情但是C-ey(参见其他想法的答案),但仍然在“教我知道你知道什么以及如何运作”的背景下。

如果你将问题框定为“我知道(例如)python和Java,而不是C,请教我”你最终会得到一个非常丰富的访谈。但是不要给这个可怜的家伙一个小测验,你就不能给他一些提示,而且他可能会对它进行评价,或者与他的实际技能几乎没有关联。