ThousandEyes Interview Questions & Reviews
Getting an Interview
Devops Engineer Interview (Positive Experience; Easy Interview)
I applied through a recruiter and the process took 4 weeks - interviewed at ThousandEyes in March 2014.
Interview Details – A recruiter from Thousand Eyes reached out to me because of my LinkedIn profile. At the time I wasn't really looking for a new job, but I decided that it might be fun to go through the interview process anyway.
The recruiter started by telling me that the interview process with them starts with a series of questions and code samples, followed by a DevOps challenge, and ends with a phone interview with one of the company's founders. I only made it as far as the challenge before they turned me down, (I was a college student still working at my first SysAdmin position, and I think they were looking for someone with a wider skill-set), so I can't speak as to how the interview works, but I can talk about the questions and challenge:
The first questions were pretty straight-forward, asking to gage my experience and for some code samples:
1. Can you share with us a code/script sample that you're proud of? (*)
2. What is your level of experience with Bash?
3. What is your level of experience with Python?
4. Can you share with us Bash and Python code/script samples?
5. Can you tell us about a hard problem you've had to solve, and how you went about solving it?
6. Based on what you know about us, what would you find most interesting about working at a company like ThousandEyes?
(*) As far as the type of script, any relevant configuration automation code (e.g., puppet, python) related to the DevOps Engineer role is welcome.
After answering those questions and providing a handful of Python, Bash, Ruby & C++ code samples, they asked to continue on with the process my giving me a challenge project to complete in a week.
The DevOps Challenge was as follows:
They sent me a public-key to use as my identity when ssh-ing into an Amazon VPS, and asked me to do the following.
1. Fix a broken apache webserver. Make sure it runs and is serving pages correctly.
2. Make sure that only certain services were accessible from the outside.
3. Write a bash script that, given a directory, will:
+ replace 'foo' in any file names with 'bar'
+ replace 'foo' in the contents of any files with 'bar'
+ output the file names that were changed
4. Write some Puppet scripts to configure the server according to their requirements
Make reasonable assumptions, state your assumptions, and proceed. Once you have completed the challenge let us know and share your thoughts on the problems/solutions.
I got busy with school and work, so I didn't manage to really start working on this until the day before it was due, and knocked it all out in one night. These were my assumptions:
In the end I didn't get the job, but I wish that I would have gotten some feedback about the challenge. Though since it was the very first time I had ever tried to do anything with Puppet (since I'm more experienced with Chef), I imagine that was what I probably didn't complete to their satisfaction.
Regardless, it was a very cool little interview process.
Interview Question – Due to my inexperience with it, probably Puppet. Answer Question
Software Development Engineer In Test (SDET) Interview (Negative Experience; Difficult Interview)
I applied online and the process took 2 weeks - interviewed at ThousandEyes in October 2013.
Interview Details – This interview process seems to be unreal, from realm of other planets...and all the interviewing happened over email at this point, no human contact. The company recruiter began by sending me a questionnaire with questions like "why do you want to work for us", etc and asking for a code sample. I replied and 2 weeks later received an email....containing a coding assignment. No phone calls. The assignment, mind you, was allowed a week for completion, required to one of MVC frameworks, was specified as a full-fledged application hosted on public server and having both front and back end, AND full suite of integration and acceptance tests required. I laughed really hard when I saw this email as arrogance of some SF tech employers begins to cross all boundaries....why do they expect that a person will be coding full application for their coding assignment just to get a phone call instead of seeking a real job interview? This is so bad it's funny.
Interview Question – Coding assignment: write a Twitter-like API/service, allowing for at least 4 requests: follow a user, unfollow a user, get a list of people following a user, get a list of tweets of the user (including self-tweets and replies by followers). Full integration and acceptance test suite must be included. App has to be hosted on public server where they can access it. Back end using MySql. Use Java (MVC), Groovy + Grails, or Python + Flask. Output in XML or Json. Clients must use API tocken for authentication, framework must give 401 error if wrong tocken in used. Answer Question
Software Engineer Interview (Negative Experience; Difficult Interview)
I applied through a recruiter and interviewed at ThousandEyes.
Interview Details – Stay away. Very unprofessional. If they decide not to hire you, they will never get back to you, and will just leave you hanging. They will ask for code samples from you and a very time consuming coding challenge. They should have at least the decency of getting back to the candidates.
Interview Question – Coding challenge. Answer Question
Software Engineer Full Stack Interview (Negative Experience; Average Interview)
I applied through a recruiter and the process took 1 week - interviewed at ThousandEyes in March 2012.
Interview Details – Java programming challenge
Interview Question – Design a system like twitter. Answer Question
Software Engineer Interview (Negative Experience; Average Interview)
I applied through a recruiter and the process took 4+ weeks - interviewed at ThousandEyes in February 2012.
Interview Details – They make you complete a fairly lengthy coding challenge that could easily take more than one week, and when you submit it-- if they are unhappy with it for any reason, they will simply tell you no, with no feedback of any kind.
Don't waste your time on a long coding challenge (they essentially make you do a project), you may as well apply elsewhere
Interview Question – Create a twitter like service with the following basic functionalities
1. A login page for users to sign in and a link/portion for registration if user is not in the system.
2. Once logged in, the user is directed to the home page where the user can post "tweets". Tweets appear with timestamp below on the users home page.
3. A logged in user can search for other users and decide to "follow" them. Users cannot control whether they can be followed or not in this implementation. If a user is part of the system, then anybody can follow them.
4. Tweets made by people the user follows also start to appear on the users home page. Page does not need to be refreshed for new tweets by other users to appear on the page.
5. If a user decides to "un follow" somebody, past tweets are removed from that users page and no more future tweets appear.
In designing and implementing this system, feel free to correct things in twitter that you don't like or always wanted differently.
Database: MySQL Answer Question
Java Software Engineer Interview (Negative Experience; Average Interview)
I applied through a recruiter and the process took 5 weeks - interviewed at ThousandEyes in January 2013.
Interview Details – A recruiter contact me for a initial interview which was basically to get to know me. After that I've completed a code challenge that was to create a twitter API supporting basic functions like return the tweets from a user, start following a user, etc, in Java/Spring.
Interview Question – There wasn't any extremely difficult question. Answer Question
Systems Engineer Interview (Positive Experience; Average Interview)
I applied through a recruiter - interviewed at ThousandEyes in March 2012.
Interview Details – I was contacted by a recruiter and the offered seemed interesting so I followed up.
I had to do a coding challenge, a 1:1 interview that ended up being a skills test and a last interview that I can qualify as a personality test.
The hole process was challenging and I would qualify the difficulty of the interview process as average.
Interview Question – I was asked several questions about linux, networking and scripting languages. Answer Question
Software Engineer Interview (Positive Experience; Difficult Interview)
I applied through a recruiter and the process took 2+ weeks - interviewed at ThousandEyes in January 2012.
Interview Details – The interview process was pretty straightforward and without any problems. First, I got a coding challenge which consisted in developing a C++ program that made use of mysql and dns libraries. The second step was a series of 3 interviews where my coding and problem-solving skills were tested, from higher-level problems (the first interview was more focused on software design) to low-level problems (the next two interviews were more C++ hardcore coding that also required some network-level knowledge).
Got an offer in the next day and that was it.
The interviewers were nice and patient, and tried to keep me relaxed through the whole process. They just want to assess if you are up to the task or not. They didn't ask any of those puzzle questions either.
Interview Question – Some questions were more low-level and required some network-related knowledge (eg, network and bit masks, etc) Answer Question
Negotiation Details – Pretty straightforward.
Software Engineer Interview (Negative Experience; Average Interview)
The process took 2+ months - interviewed at ThousandEyes in May 2012.
Interview Details – ThousandEyes had the most unpleasant, unprofessional interview process I have ever experienced. If you value your time, then don't bother with these guys.
First was a coding challenge, which was ridiculously long. After submitting a solution which met their very specific list of requirements, I heard absolutely nothing for over a month.
Finally they got in touch and scheduled a phone conversation with one of the founders. He seemed completely uninterested in my background, and even in his own company.
I foolishly went ahead with a technical interview despite these red flags. This consisted of three one-on-one interviews. Each of the interviewers dove right into coding questions immediately. Each time, after about 40 minutes the interviewer abruptly said "Okay, my time is up, bye!" without even giving me the opportunity to ask a single question. Essentially I was subjected to a gauntlet of programming problems then promptly tossed out. The questions themselves were fairly cookie-cutter, but the attitude of the interviewers was exceptionally unprofessional.
To add insult to injury, they simply ignored me in the weeks following the interview. I wonder if they even planned to contact me at all (I finally got a decision when I asked for a status update after three weeks of silence), or if they just hoped I'd simply disappear after having so much of my time wasted.
Engineering Interview (Negative Experience; Easy Interview)
The process took 2 days - interviewed at ThousandEyes in February 2012.
Interview Details – It was a very poor interview experience. There is lack of maturity and professionalism right from the founders. They don't have a clue on what they are doing, what to look for, what to ask.
They don't have a single professional on the team and can't even articulate what they are doing in simple easy to understand way. This seems like one of the other wannabe startups in the bubble.
The interview process is a waste of time cause they are not really serious. They are looking for ideas, code samples, algorithms, etc. to eventually use without your permission.
If they ask for a long project - just walk away. This seems to be a common trick used by many startups. This one has integrity, ethics and transparency issues.
Interview Question – What are you looking to do? What interests you in Thousand Eyes? What do you know about the space? Answer Question