A little background on myself: I completed my undergraduate degree in Computer Science at the University of Washington. Shortly thereafter, I was referred by a friend who works at Tableau. I had completed an internship at another company prior to being referred, but I didn't have any other programming-related work experience.
Before I describe the actual interviews, I'd like to say that I was very pleased with the interview process at Tableau. It was one of my primary reasons for joining the company. All of the interviews were very relaxed and put me at ease. I was sweating, but the interviews were enjoyable.
Regarding technical questions, if you've been practicing from any popular programming interview workbook (e.g., "Cracking the Coding Interview" or "Programming Interviews Exposed"), you should have no problem whiteboarding solutions. I was expecting tough problems, but it seems the company places more emphasis on finding people who fit the workplace culture (friendly, collaborative, honest) over deep knowledge. I certainly appreciated this, as I was fresh out of college. I think they realize that as long as you have an algorithmic mind and a strong grasp of the fundamentals, you can easily be expected to pick up the rest on the job.
Onto the interviews themselves.
The first interview was an initial phone screen with a recruiter. She was extremely friendly and asked me questions typical of any phone screen: resume, what I was looking for in a company, why I was interested in Tableau, etc. This initial call was a purely social interview; I wasn't expected to solve any programming questions.
The second interview was a technical phone screen. I was again asked some general questions (you can expect to answer some of the same questions throughout most of your interviews; this isn't a trick, you can recycle your answers) and was then asked to solve a programming problem live online via a shared text editor. If I recall correctly, it was something along the lines of finding the first non-duplicated character in a string.
I was interviewing for a test position, so I was then asked a test-related question (how would I ensure a freeway toll camera was working correctly). However, even the interviewer remarked that he was unsure how effective these types of questions were at evaluating candidates. He asked me if I had used their software. When I remarked I hadn't, he recommended I do so, as it would be important if I made it to subsequent interviews.
The third interview was onsite and consisted of a meeting with the recruiter followed by three separate interviews over the day. Each interview was conducted by a pair of interviewers and consisted of some general interview questions followed by a technical question, which I was expected to solve.
I took time to talk about the various approaches to solving the problem they gave me and sometimes wrote a little pseudocode before diving into actual code. During one of the interviews, I wasn't able to finish the problem, but they could clearly see I was headed in the correct direction. There were no complicated data structures like trees or graphs; the most complicated data structure involved linked lists.
I found these interviews to be very collaborative. While I was solving their questions, the interviewers would prod me when they saw I was going in the wrong direction or had missed a bug in my code. They weren't out to "get me".
When I was given the opportunity to ask them questions, I generally asked all of the interviewers the same questions:
All of the interviewers praised the work-life balance at Tableau (one remarked that they didn't think they ever had to work a weekend while at Tableau) and stated that internal transfers are very common. Most of my interviewers had senior experience in development and had worked extensively at other companies (four to five of my six interviewers were ex-Microsoft), so I valued their answers.
I should note that it's very important that you download a trial of Tableau Desktop and play around with it. I was asked about my experience with the software during every one of the onsite interviews. Neglecting to do this would likely be a serious mark against you.
I have mixed feelings about this. I think it's a bit silly to be expected to play around with the software of every company you plan to interview with, because instinct tells me practicing for technical interviews would be a far better use of time. On the other hand, I think I became impressed with the software while trialing it. Believing in the product you make and the company you work for makes a huge difference in your daily work life, and perhaps Tableau is simply seeking people who are genuinely enthusiastic about their product.
10/10, would interview again.
Given two linked lists. Each linked list represents a number where each node in the linked list contains an integer digit of that number.
For example, the linked list 1->2->3 represents the number 123.
Add the numbers represented by the two linked lists.
The following metrics were computed from 1 interview experience for the Tableau Software Engineer role in Kirkland, Washington.
Tableau's interview process for their Software Engineer roles in Kirkland, Washington is incredibly easy as the vast majority of engineers get an offer after going through it.
Candidates reported having very good feelings for Tableau's Software Engineer interview process in Kirkland, Washington.