I applied online and received an email from a recruiter. We had a quick chat about Tinder and its different teams. All the recruiters were super cool.
I received a take-home coding challenge, which involved developing an online multiplayer tic-tac-toe game in Node.js using socket.io. I actually had a lot of fun doing the project.
Then, there was an online phone interview with two coding exercises. Finally, the onsite round.
The office is pretty cool. The people who work there are "sooooo LA." They have free catering for lunch and dinner every day. They do make you bring your own laptop.
First, they gave me two hours to develop a REST API in Node.js that uses a database system. The project was pretty open-ended and could be whatever I wanted. I then explained it to two engineers.
After that, they asked a bunch of questions about the project I had just coded and how I would scale it. There were many database questions. So far, so good.
After that, I had a one-on-one with what I believe was the head of the whole development team. He was kind of douchey and condescending when asking questions. He was playing with a Rubik's cube the whole interview. You could also see on his face how he thought he was so good at analyzing me while I answered, as if he thought highly of himself and could read me perfectly. But whenever I made eye contact with him, he would go from his dummy-analyzing-face to a fake smile.
He asked about databases and the meaning of different acronyms. He would make me guess when I told him I didn't know what an acronym stood for, so he could arrogantly say, "No, but good guess."
In the end, he tried to casually end the interview by saying, "I only have one more question for you," but you could tell he was actually trying to make me think the next question wasn't going to be a big deal. The question was, "Why do you want to work at Tinder?" After asking that question, you could see how he went from being distracted to paying close attention to what I was about to say, like he had just pulled off a great acting performance. He does know a lot and is probably super good at what he does.
Finally, another one-on-one with the head of the backend engineering team. He was a super cool guy. He just asked about my previous projects and jobs.
Overall, it was a very positive experience. I learned and had so much fun in the process.
Why do you want to work at Tinder? (This question appears about 4 times in the whole process.)
Code a Tic-Tac-Toe game in Node.js.
You have two unsorted arrays of integers that differ by only one element. Find that element in the most efficient way.
Find the k largest elements in an unsorted array.
Code a REST API using a database system. How would you approach scaling it? What's the first thing that is going to break when you get millions of users? How would you shard the data? (Assume all AWS services and MongoDB.)
What is the difference between PUT and POST methods?
How do you handle conflicts when there are multiple requests at the same time?
The following metrics were computed from 2 interview experiences for the Tinder Backend Software Engineer role in Los Angeles, California.
Tinder's interview process for their Backend Software Engineer roles in Los Angeles, California is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Tinder's Backend Software Engineer interview process in Los Angeles, California.