Question: What Is Your Favorite Question To Ask When Interviewing Potential Bioinformaticians?
21
gravatar for Madelaine Gogol
9.1 years ago by
Madelaine Gogol5.1k
Kansas City
Madelaine Gogol5.1k wrote:

What questions tell you a person is (a)Smart and (b)Gets things Done?

What small bioinformatics-oriented functions would be good to ask someone to write out on a whiteboard?

How do you test communication abilities?

job subjective • 12k views
ADD COMMENTlink modified 3.1 years ago by 5heikki8.4k • written 9.1 years ago by Madelaine Gogol5.1k
2

Can you be more specific ? Are you looking at Masters' or PhD candidate ?

ADD REPLYlink written 9.1 years ago by Khader Shameer18k

Possibly neither in this case, it's going to be an entry-level type of position.

ADD REPLYlink written 9.1 years ago by Madelaine Gogol5.1k

I would like to consider following points to selecting Bioinformatician:

  1. Basic bioinformatics tools: sequence alignment, BLAST, PSI-BLAST, FASTA, Multiple Sequence Alignment (MSA), etc And knowledge about bioinformatics related web-portals: NCBI, PDB, EMBL-EBI, ExPASy, etc..
  2. Basic Unix/Linux command (awk, sed, bash command highly recommended).
  3. knows about programming skills, Perl, R basic requirement.
  4. Basic statistical knowledge (correlation, Coefficient of variation, Standard deviation, t-test, data distribution etc..)
  5. should be aware with RNAseq, ChiPseq, microarray, DNA-methylation data analysis protocol.
  6. familiar with: TCGA, GEO, NCI, CCLE, ArrayExpress, COSMIC, 1000genome etc..
  7. handling R, Bioconductor related packages, and data visulization related tools.
ADD REPLYlink modified 3.1 years ago • written 3.1 years ago by Mike1.3k
15
gravatar for Andrew Su
9.1 years ago by
Andrew Su4.8k
San Diego, CA
Andrew Su4.8k wrote:

We've just recently started asking candidates to do a code review with the existing team/group members. It can be on any piece of code from their past -- I tell them to choose something that they're passionate about, and that demonstrates the skills that are relevant to our job posting. It works great. Covers everything from coding style to communication skills to documentation to programming ability. I highly recommend this approach...

ADD COMMENTlink written 9.1 years ago by Andrew Su4.8k
1

Pair programming + code review looks like an interesting approach to assess the programming skills. How about the bio-part or generic bioinformatics algo and related stuffs ?

ADD REPLYlink written 9.1 years ago by Khader Shameer18k

I like this idea a lot, thanks.

ADD REPLYlink written 9.1 years ago by Madelaine Gogol5.1k
5
gravatar for Pierre Lindenbaum
9.1 years ago by
France/Nantes/Institut du Thorax - INSERM UMR1087
Pierre Lindenbaum121k wrote:
  1. In the following C code, can you implement the function char* strdup(const char* );

    char* s=strdup("hello");
    free(s);
    
  2. How does BLAST roughly work ?

ADD COMMENTlink modified 10 months ago by RamRS22k • written 9.1 years ago by Pierre Lindenbaum121k
5

It's better to choose someone who can code very well in some language, than somebody who knows your language. A proficient programmer can learn almost any language in a few days.

ADD REPLYlink written 9.1 years ago by Phil Goetz140
4

@Stefano. I disagree, in order to "fit-in" with a lab you need to use the language that is the lab-standard. If that's C then its important to make sure they at least have a basic understanding. I've worked in labs where everyone uses their own favorite language; it becomes a real hassle to share work between different people.

ADD REPLYlink written 9.1 years ago by Will4.5k
3

knowing C is not a prerequisite, I think, for a bioinformatician. I would always use pseudocode or let the candidate use the language of his/her choice.

maybe the BLAST one is better...

ADD REPLYlink written 9.1 years ago by Stefano Berri4.1k
3

Hiring people who don't know how to code, for positions where you need code written is fraught with danger. And a degree and PhD in CS doesn't equate to 'being able to write code' - have witnessed this first hand.

ADD REPLYlink written 9.1 years ago by Daniel Swan13k
2

I now ask this question because I remember we hired someone who said "C ? yes I know C!". In fact, he just knew 'printf' and became a 'drag'. Many times I asked this simple question: I was frequently very surprised by a poor answer.

ADD REPLYlink written 9.1 years ago by Pierre Lindenbaum121k
1

@Will. The question was about selecting bioinformaticians. If you are head of a huge group that works with Lisp, you might ask proficiency with Lisp. In my experience picking up the syntax and the tricks of a language from experienced colleagues is easy compared to learn programming, best practice, commenting and writing usable and scalable code.

ADD REPLYlink written 9.1 years ago by Stefano Berri4.1k
5
gravatar for Will
9.1 years ago by
Will4.5k
United States
Will4.5k wrote:

I mostly deal with finding PhD students for my lab and here's my general procedure:

I ask the "How does BLAST work?" question ... And I make sure they actually answer with something involving suffix-trees. I also ask them to answer the "FizzBuzz" test. I ask these in an e-mail interview ... if they can't answer these (or they're clearly copy-pasted from Wikipedia) then I don't even bother inviting them in.

In a sit down interview: I'll test communication their skills by sending them a handful of papers before our sit-down interview. I'll then have them to give me a "back-of-the-envelope" explanation of any of the papers that I sent.

In the interview I'll point them to the Matlab contest on protein-folding here. I leave the office and ask them to think about another "back-of-the-envelope" algorithm for solving it. I then give them a weekend to come up with an algorithm that will beat ~half of the entries. I also require them to write the same algorithm in both Matlab and Python. There are hundreds of example submissions that they can look at for inspiration. This will tell me how well they can look at previous work and come up with something novel. It also tells me how well they deal with the temptation to copy.

Hope that helps,

Will

Since most people seem to think that this is a little "over-the-top". I'll add a few of my caveats. Out of the dozen or so people I've interviewed only 1 has ever completed the whole thing but I've hired everyone who could pass the FizzBuzz test and make a working Matlab and Python answer. I make my decision based on their enthusiasm and how well they TRY as opposed to just giving up and saying "Its tooo haaaaard"

ADD COMMENTlink modified 10 months ago by RamRS22k • written 9.1 years ago by Will4.5k
7

At one point, I could describe the ins and outs of BLAST to you, but it's been 5 or 6 years. Since it's not an algorithm I use frequently, it's not something I've retained. OTOH, I can go on all day about the new class of short-read aligners (MAQ, BWA, Pash, et al). My point is that just because someone can't implement BLAST, doesn't mean they don't know bioinformatics.

ADD REPLYlink written 9.1 years ago by Chris Miller21k
6

hrm, i dont think BLAST uses suffix trees? if it does, that's news to me. i'd say it finds a seed by exact match of the requested word size and then does extension by heuristic (gap extension/ penalty) from there.

ADD REPLYlink written 9.1 years ago by brentp23k
4

I guess they can finish their PhD even before start working in the lab too. Or maybe they don't even need a PhD after all, especially after the interview.

ADD REPLYlink written 9.1 years ago by Paulo Nuin3.7k
2

your interviews are very difficult!! :-)

ADD REPLYlink written 9.1 years ago by Giovanni M Dall'Olio26k
2

LOL I don't know whether to pity or envy all the interviewees who tried in vain to explain to you how BLAST actually works. Maybe you should read up on dot plots.

ADD REPLYlink written 9.1 years ago by Jeremy Leipzig18k
2

Asking someone how to write something with functionality similar to BLAST would be a good question. But asking how the existing BLAST works is like asking a programmer how the C compiler works.

ADD REPLYlink written 9.1 years ago by Phil Goetz140
2

The correct answer to the "how does BLAST work" questions is in most cases that it lets you provide a sequence database and query sequences, and calculates the alignments between them. Also something about the various output formats, the meaning of e-values and bitscores, HSPs, how and when to specify e-values and BLOSUM matrices, etc. In other words, how to use BLAST, not how to reimplement it (especially as most modern alignment tools have different requirements, and use quite different methods - re. suffix trees and bwt-compression). (Do I get the job? :-)

ADD REPLYlink written 8.7 years ago by Ketil3.9k
2

Wow. I'm a 4th year Ph.D. student studying bioinformatics and I'd find your interviews scary.

ADD REPLYlink written 8.3 years ago by Dsimcha60
1

@Will: The concept of suffix tree seems not so relevant for the BLAST question (of course interesting for sequence search in general), so doesn't astonish me that nobody could answer this correctly. But shows how important it is to know the correct anwser yourself before trying to push somebody to give the answer you want to hear.

ADD REPLYlink written 9.1 years ago by Michael Dondrup46k

thanks ... I take that as a compliment ;). I'm hoping that after a few years people will see it as a "point-of-pride" that they survived my interview. I'm pretty ambitious and I run my lab at a very quick pace and this type of interview really helps to weed out people who don't have the 'desire/drive' to work under these conditions.

ADD REPLYlink written 9.1 years ago by Will4.5k

Why both Matlab and Python ? Your lab already have a legacy code base in Matlab ? The bio* aspects are missing. To design something novel (say algorithm or method), candidate should be aware of the problems in protein folding domain and their biological significance.

ADD REPLYlink written 9.1 years ago by Khader Shameer18k

Yep, no suffix trees in Blast (or any other program derived from it).

ADD REPLYlink written 9.1 years ago by Paulo Nuin3.7k

FizzBuzz, on the other hand is basic enough that anyone with basic CS skills should be able to solve it - kudos on that one.

ADD REPLYlink written 9.1 years ago by Chris Miller21k

I'm definitely going to do FizzBuzz. I kind of like the idea of "summarize this paper".

ADD REPLYlink written 9.1 years ago by Madelaine Gogol5.1k

@Paulo. Its been my understanding that suffix trees are used in the local implementation to find the exact matches in the large database quickly. Thats how its described in the methods from their first paper. I ask plenty of questions to prompt the answers I'm looking for.

ADD REPLYlink written 9.1 years ago by Will4.5k

Yep, you are correct. It's a variant of a suffix tree, I checked the original paper. I deleted my comment.

ADD REPLYlink written 9.1 years ago by Paulo Nuin3.7k

@Will: The concept of suffix tree seems not so relevant for the BLAST question (of course interesting for sequence search in general), so doesn't astonish me that nobody could answer this "correctly". But shows how important it is to know the correct anwser yourself before trying to force somebody to give the answer you want to hear. Or to put it differently: after such an interview, I wouldn't want to work for you any more!

ADD REPLYlink written 9.1 years ago by Michael Dondrup46k
5
gravatar for Daniel Swan
9.1 years ago by
Daniel Swan13k
Aberdeen, UK
Daniel Swan13k wrote:

I think the best thing we've done recently is a review of code from a previous project. Admittedly we've mainly been interviewing for PhD positions recently, but casting an eye over the organisation of (for example) a final year project in terms of code, and how problems have been solved is quite a good mechanism.

I've interviewed more senior positions, and well, it's unlikely you would set people like that code tests, the publication record is more of a key..

For communication, just leave them with the rest of your team for a while. As long as you're going to get proper unbiased opinions back, trust some other people to make a call on the things it's harder to assess in a formal interview.

ADD COMMENTlink written 9.1 years ago by Daniel Swan13k
3

if you are interviewing a phd student, their last project will be what they have done for the master. While in some universities these projects are taken seriously, in some places the projects for master students are very crappy, and they are not really followed properly and usually are abandoned to theirselves to carry out a research that is not really useful. So I won't look too much at the quality of the work done on the master's project, it depends too much on the university and in the opportunities one has had.

ADD REPLYlink written 9.1 years ago by Giovanni M Dall'Olio26k
1

Giovanni, that is a sad comment on how some institutions treat their students.. however I would like to think an exceptional student will make the best of whatever opportunity they have been given.

ADD REPLYlink written 9.1 years ago by Daniel Swan13k
1

I would want to see code by a candidate for any position. It shows me how clearly they think.

ADD REPLYlink written 9.1 years ago by Phil Goetz140

For PhD students, looking at the last project they completed will be a good idea.

ADD REPLYlink written 9.1 years ago by Khader Shameer18k

Completely agree with you. For PhD students, looking at the last project they completed will be a good idea.

ADD REPLYlink written 9.1 years ago by Khader Shameer18k
4
gravatar for Phil Goetz
9.1 years ago by
Phil Goetz140
Phil Goetz140 wrote:

I ask people to show me something related to the area that they work in, that they did, not for work, and not as part of any class.

Any decent programmer will have dozens of large programs that they wrote on their own time, neither for class nor for work. Any decent writer will have lots of manuscripts they wrote for practice or fun. Anyone who is absorbed by what they do will sometimes do something like it in their free time.

ADD COMMENTlink modified 9.1 years ago • written 9.1 years ago by Phil Goetz140
3
gravatar for H.Hasani
3.1 years ago by
H.Hasani760
Freiburg, Germany
H.Hasani760 wrote:

As a Bioinformaticians, I've been once asked on a phone-call to answer quickly & in less than a minute questions regarding

  • linux commands (which we all use in our daily work),
  • differences between file formats in bioinformatics world
  • how or what is a statistical test (e.g. t-test)
  • favourite sequence mapper & why
  • kind of distribution your data would normally take after making certain analysis
ADD COMMENTlink modified 3.1 years ago • written 3.1 years ago by H.Hasani760
1

I would like to consider following points to selecting Bioinformatician:

  1. Basic bioinformatics tools: sequence alignment, BLAST, PSI-BLAST, FASTA, Multiple Sequence Alignment (MSA), etc And knowledge about bioinformatics related web-portals: NCBI, PDB, EMBL-EBI, ExPASy, etc..
  2. Basic Unix/Linux command (awk, sed, bash command highly recommended).
  3. knows about programming skills, Perl, R basic requirement.
  4. Basic statistical knowledge (correlation, Coefficient of variation, Standard deviation, t-test, data distribution etc..)
  5. should be aware with RNAseq, ChiPseq, microarray, DNA-methylation data analysis protocol.
  6. familiar with: TCGA, GEO, NCI, CCLE, ArrayExpress, COSMIC, 1000genome etc..
  7. handling R, Bioconductor related packages, and data visulization related tools.
ADD REPLYlink modified 3.1 years ago • written 3.1 years ago by Mike1.3k

I find these a lot more relevant than many other questions posted here.

ADD REPLYlink written 13 months ago by steve2.1k
3
gravatar for 5heikki
3.1 years ago by
5heikki8.4k
Finland
5heikki8.4k wrote:

Emacs or Vim?

Tabs or spaces?

Get either of these wrong, and you're out ;)

ADD COMMENTlink written 3.1 years ago by 5heikki8.4k
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 621 users visited in the last hour