[nycphp-talk] Oh... Interviewing
prusak at gmail.com
Thu Aug 2 00:07:07 EDT 2007
As someone who has been on both sides on the fence, a few helpful
comments based on my experience:
(I'm brainstorming here, so this is in no particular order)
- It's totally acceptable to try to get a better understanding of a
candidates "true" technical capabilities during an interview. Of
course you need to let them know in advance that you'll be asking
- A written test is *not* the best way to gauge a person's knowledge.
What works best for me is a conversation between myself and the
This is for a couple of reasons -
(1) Many people just aren't good at written tests regardless of their
knowledge (it makes them nervous, etc).
(2) Ultimately, you shouldn't really care about a person's specific
knowledge at a specific point in time (ie the interview) You should
care about their ability to make the right decision at the right time,
and in timely fashion.
For me, this means that if the candidate doesn't know something, they
at least know enough to fully understand the question and it's
implications, and know where to find the correct answer quickly (and
understand the answer as well).
- I usually ask the candidate to describe a project they were recently
involved with and then interweave my questions into the conversation.
I'll ask why certain decisions were made and what other options they
- It's also very revealing to see what questions the interviewer asks back.
I'll ask something purposely vague (like "you're told to build a new
web app - what language would u use?")
Hope that helps.
On 7/20/07, CED <Consult at covenantedesign.com> wrote:
> I recently sat down with a candidate for a Software Management/Architect
> position here is what I presented:
> Software Architecture
> a.. Name 3 design patterns.
> e.. Which of the following general statements about a class are true?
> f.. Select Answer:
> g.. 1. A class represents a concept in an application domain
> h.. 2. A class defines a new data type
> i.. 3. A class contains data and operations
> j.. 4. All of the above
> k.. 5. None of the Above
> l.. What is the average anticipated load per processor (2GHz) that a web
> application server can support? (in concurrency)
> m.. Name 3 Scopes.
> q.. Name 3 Aggregate SQL functions
> u.. Name 3 Network Layer protocols
> y.. Name 3 Transport Layer protocols
> ac.. Language agnostically describe how you would do the following:
> ad.. Switch the assignments of variable A and variable B.
> ae.. Reverse the string "apple" into "elppa".
> ag.. Describe to your best ability the following:
> ah.. Polymorphism
> ai.. Clustering
> aj.. Persistence
> al.. Using language agnostic regular expressions how would you do the
> am.. Find "apple" in "Christine's Apple pie"
> an.. Replace the 2nd "p" with "g" and change "Planned" to "Plotted" in
> "Peter Piper Planned Poorly"
> Now I thought that these questions were certainly challenging yet basic
> enough for an expert software architect, however, and much to my surprise
> the candidate wasn't really even interested in looking at it, in fact he
> refused to answer any of it. Other than being surprised, and needless to say
> concerned, It made me re-visit our many emails a few weeks ago about
> interviewing... and here was my conclusion:
> 1) If you're given an exam, just try your best, but don't refuse, after all,
> are you or are you not confident in your abilities
> 2) When administering an exam, be sure to have informed the candidate before
> hand, it gives them the opportunity to prepare
> 3) In the end, trust your gut. We have all been at various places of talent
> throughout our respective careers, you know when someone isn't completely
> up-to-speed, and when someone is simply bashful about their skills.
> New York PHP Community Talk Mailing List
> NYPHPCon 2006 Presentations Online
> Show Your Participation in New York PHP
- - - - - - - - - - - - - - - - - - - -
More information about the talk