If You Were Interviewing a Unix or Linux Guy What Would You Ask
GeneralThis forum is for non-technical general discussion which can include both Linux and non-Linux topics. Have fun!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I don't get your motive, to be honest. Quite a soup of profiles happened there.
What do you mean by writing a brand new kernel?
Apart from a dedicated kernel programmer, no(System/App/Network/Security)-Support admin might ever require writing a 'brand new kernel' IMO.
A job interview is an interview when focused on the job profile in question, otherwise it's a 'you are a n00b' test for most part.
Regards.
Last edited by PrinceCruise; 01-26-2012 at 03:52 PM.
Distribution: RHEL 5.1 on My PC, & SunOS / Sun Solaris, RHEL, SuSe, Debian, FreeBSD and other Linux flavors @ Work
Posts: 400
Original Poster
Rep:
Quote:
Originally Posted by PrinceCruise
I don't get your motive, to be honest. Quite a soup of profiles happened there.
What do you mean by writing a brand new kernel?
How to write a Kernel for Linux from scratch. What tools would be required? What programming language would be used and why? (Suppose you happen to be a System Programmer).
There is LFS (Linux From Scratch), for example. How to work with it?
I don't get your motive, to be honest. Quite a soup of profiles happened there....A job interview is an interview when focused on the job profile in question, otherwise it's a 'you are a n00b' test for most part.
+1
The aim of the interviewer should be to check whether
the candidate fits the vacant position, rather than
try to prove that he knows nothing!
Writing the kernel and knowing about the C++/Java kind
of languages have (nothing) to do with the system admins
jobs, AFAIK.
Distribution: RHEL 5.1 on My PC, & SunOS / Sun Solaris, RHEL, SuSe, Debian, FreeBSD and other Linux flavors @ Work
Posts: 400
Original Poster
Rep:
Quote:
Originally Posted by Anisha Kaul
+1
Writing the kernel and knowing about the C++/Java kind
of languages have (nothing) to do with the system admins
jobs, AFAIK.
Well, I think people misunderstood my main motive. I posted it under "General" category and originaly meant the post to convey this dialog:
"What questions would you ask if you were interviewing and testing someone from Unix, Linux background and who would work on a project per the requirement and the requirement could vary from Sys Admini to Developer and Monitroing/Support to Bug Fixing/Enhancement. So whatever you feel, you can express it. That's it!"
There is nothing like comparing Sys Admin to C++/Java Developer. You, Anisha, work on C++ technologies. Hence, you would give your views pertaining to your expertise. A Sys Admin out here would give his/her views pertaining his/her expertise, and so on.
I interview programmers in the embedded space, and usually ask some of these questions:
Basic "know this stuff"
- reverse a string in place
- write a "thread safe" atoi function.
- count all the 0 bits in a byte
Thinking about objects:
- detect tail recursion in a linked list
- given a class hierarchy d -> c -> b -> a, where each has a virtual function foo, reading:
Distribution: RHEL 5.1 on My PC, & SunOS / Sun Solaris, RHEL, SuSe, Debian, FreeBSD and other Linux flavors @ Work
Posts: 400
Original Poster
Rep:
Quote:
Originally Posted by orgcandman
I interview programmers in the embedded space, and usually ask some of these questions:
Basic "know this stuff"
- reverse a string in place
- write a "thread safe" atoi function.
- count all the 0 bits in a byte
Thinking about objects:
- detect tail recursion in a linked list
- given a class hierarchy d -> c -> b -> a, where each has a virtual function foo, reading:
Long ago, I filled several positions with experts in specialties I was not expert in myself. My main approach was to pick some sub topic in their area of expertise that I was nearly able to understand, then (without advance study on my part) try to get them to teach that sub topic to me during the interview.
With a few candidates, that teaching process worked and I came away from the interview more knowledgeable about the topic, and I hired that person who had successfully taught me something. Hindsight confirms those were all good hires.
With most candidates, that teaching attempt was overwhelmed by buzzwords that I didn't really understand, so I came away with no more knowledge of the topic than I started with. I didn't hire those candidates and thus don't know for sure that they would have been poor choices (but I'm satisfied with the results of assuming they would have been poor choices).
More recently, when I've tried that, the process is always overwhelmed with buzzwords and I never learn anything about the topic or the candidate. I'm not sure whether that indicates a worse collection of candidates or whether the whole computer field is just so buried in specialty specific terminology that a software generalist such as myself can't understand anything a specialist says.
Quote:
Originally Posted by Anisha Kaul
The aim of the interviewer should be to check whether
the candidate fits the vacant position, rather than
try to prove that he knows nothing!
Very often attempts at determining whether a candidate fits a position get bogged down in buzzwords, vagueness and mis communication. Most of the time I try to get details of what a candidate's work on a product did for that product, I instead get details of what the product does for the customer. Is that because of all the "customer focus" BS that companies (including my own employer) constantly spew? Or is it because of the all too common syndrome one of my brilliant previous bosses called "present when work was done"? Those merely present when work was done tend to tell you what the product does for the customer rather than try to lie to you about what they did inside the product.
Sometimes all the talk about their experience leaves you with no actual information about their skills. Sometimes you really need some basic technical skills testing to weed out the twits.
Quote:
Originally Posted by orgcandman
can I execute the following:
So many questions in typical C or C++ tests focus on that nasty boundary between what actually works and what the standard says you are allowed to do. I agree that an expert programmer should have a decent amount of knowledge of that boundary (and should almost always stay on the standard OK side). But it makes for a rotten test. I want a test to focus on more practical skills.
The test should not be about proving the test definer knows obscure factoids that ordinary programmers don't know. It should be about finding the practical skill level of the person being tested.
Last time I constructed a C++ test myself I included a question testing the semi obscure C++ factoid one would need to answer the much more recent question I answered at LQ here (I've answered it at LQ before) http://www.linuxquestions.org/questi...5/#post4611064
I thought at the time that it was a good question to include, because the situation comes up a lot in the unusual C++ code where I work. Every programmer in the office where I work has made a form of that mistake and come to me for help (usually multiple times) before they understood it well enough to avoid or correct on their own. So hiring a senior C++ programmer I thought it would be nice to know if they already understood that. No one I interviewed got that one right. Anyone I hired would need to be told that answer the first time the situation came up. So in hindsight it was a wasted test question.
Quote:
- reverse a string in place
...
- detect tail recursion in a linked list
I worked with someone who consistently asked those two. He seemed to get good info from watching a candidate recall and/or reinvent the answer.
Another coworker always asked "in place reverse a singly linked list".
They no longer work here and I sort of think some such question should be asked of C or C++ programmers, so I've been asking that last one and no one has known the answer. It ought to be a bad question because it is too easy and because too many people have been asked it before, not because no one knows the answer. Several, after failing to know that answer, even told me they had been asked it in previous interviews and looked up the answer afterward but couldn't remember it.
In that long sequence of interviews, I was interviewing numerical methods experts who were supposed to be only basically competent in C, C++ and general software engineering. I wasn't interviewing real C or C++ software engineers. But even so, I was shocked that this could be a hard question.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.