Biostar Beta. Not for public use.
Forum: Programming interview via Skype
2
Entering edit mode

Hi,

I have an interview on Friday for a position of Bioinformatician in the Royal Marsden Foundation Trust. Since I can't travel there, the interview will be via Skype. They wanted to do a programming test and since the interview was via Skype, i asked if the programming test was still in order and they confirmed it still was. My questions are:

  • Have you conducted or had programming tests via Skype? How does it work?
  • What kind of programming test have you passed or conducted in bioinformatics?

Thanks,

Yujin

Entering edit mode
3

Hi,

So i just did the interview. The programming was just a Word file on which were 3 questions that I had to answer and return in 20 mins. For those interested the questions (using Perl, Python, Bash) were:

  • Split a file of 100M lines into 10M lines files
  • You have a list of files and you want to modify the name of the files so that a common string is inserted in the middle of the file
  • Write an analysis pipeline for RNA-Seq, WGAS-Seq in pseudo-code
ADD REPLYlink 20 months ago
padgaus
• 50
Entering edit mode
0

Thanks for following up with the actual content! Seems like generic data handling and knowledge of how to analyze relevant datasets, which seems fair.

ADD REPLYlink 20 months ago
Devon Ryan
90k
Entering edit mode
0

Fair enough, provided 20 mins and that the 3rd one is just a psuedo code

ADD REPLYlink 20 months ago
Vijay Lakhujani
4.1k
Entering edit mode
0

What did you use?

I'd have used

  1. AWK with the NR variable (number of records/lines)
  2. AWK with NF variable (number of fields, with "" as delimiter to find middle of each line)
  3. ...can be anything

Edit: I believe there is some other BASH command that can also break a file into chunks

ADD REPLYlink 20 months ago
Kevin Blighe
43k
Entering edit mode
2

Kevin, there is one, called split

ADD REPLYlink 20 months ago
Vijay Lakhujani
4.1k
Entering edit mode
0

Yes I used split to do the first thing. For the second one, I reused some code I had prefix=${name_file%%_*} and suffix=${name_file#_*} to get the prefix and the suffix of the file name and I used a for loop to insert the string in the file names (i couldn't test the code since i didn't want to lose time in restarting my computer and all and I just realized that the thing that would have work was suffix=${name_file##*_}). And for the last question, I tried to write up something but I wasn't really confident on what the pipeline should accomplish so I said, in a nutshell, Quality control -> trimming -> alignment -> count the reads FPKM style -> analysis in R.

ADD REPLYlink 20 months ago
padgaus
• 50
Entering edit mode
0

Okay, just be aware that FPKM is not great for differential expression analysis across samples. It would result in a higher false-positive rate when compared to, for example, TMM (EdgeR) or DESeq2's normalisation methods.

Hope that you get the job! I interact with researchers at the Marsden.

ADD REPLYlink 20 months ago
Kevin Blighe
43k
Entering edit mode
0

Ok, thanks for the heads up !

ADD REPLYlink 20 months ago
padgaus
• 50
Entering edit mode
Entering edit mode
0

I didn't know Skype had such a feature. Thanks!

ADD REPLYlink 20 months ago
padgaus
• 50
3
Entering edit mode

When I've done / issued these kinds of tests before in interview, it's usually on a shared notepad - ie you'll be given a link to follow and you can write pseudocode / in the language of your choice - The interview panel will typically be able to see as you type. A lot of the time what I'm trying to ascertain is:

  • Does the candidate know basic programming concepts?
  • Can they explain the code their writing?
  • Is their problem solving process methodical?

Remember, I don't care if your code compiles, or actually runs (unless the interviewer actually stipulates that), I'm looking for your methodology, your thought process. Generally if the candidate says nothing out loud, I'd ask them to talk me through their solution at the end, and ask if they could solve it in any other way (optimisation, trade offs, scaling). Another alternative is that you comment your code as you write, for your own reference and the interview panel's.

You'd be surprised how very simple problems can yield a really solid impression of a candidate's problem solving skills, and raw programming ability. Something like, output a Fibonacci sequence for x iterations is a nice and simple problem, but I've set more complex ones... see here for a list of some to maybe practise yourself.

Don't be afraid to email the person conducting the interview and ask for clarification on how the programming test will be issued, ie, do you need an account on anything? - it shows a bit of thinking ahead, if nothing else!

Edit: Pierre's comment is another possibility, I actually had no idea that skype had interview specific functionality!

ADD COMMENTlink 20 months ago andrew.j.skelton73 5.7k
2
Entering edit mode

Hi

My response below

Have you conducted or had programming tests via Skype? How does it work?

Never conducted one but went through once. However, not over skype. They sent me a couple of problems to solve and send them the results back by uploading on github. I don't how can someone judge programming skills on an online mode of interview. They may ask question on logic building, algorithms or probably check your approach to a possible solution. That's exactly what I will do if I am asked to conduct an online interview.

What kind of programming test have you passed or conducted in bioinformatics?

Check out a problem that I could attempt here. They provided a full day to get back to them.

ADD COMMENTlink 20 months ago Vijay Lakhujani 4.1k

Login before adding your answer.

Similar Posts
Loading Similar Posts
Powered by the version 2.0