Taro Logo
Profile picture

Interviewing Q&A and Videos

About Interviewing

Tech has one of the highest rates of job switching, making this skill incredibly high-leverage and vital to master. Understand what it takes to convince companies you are strongly competent.

[Discussion] Machine Learning Interview tips

Machine Learning Engineer at Taro Community profile pic
Machine Learning Engineer at Taro Community

I've done about 25 ML interviews in the last 3 months. Here's my tips

  1. HM interviews are super common. KNOW YOUR WORK IN DEPTH. This is the single biggest tip I can give
    1. Be able to talk for atleast 5-10 minutes about the ML models you choose. You cant just give a high level description
    2. Understand the tradeoffs with the ML model you choose
    3. I think depth is just everything. You need to understand deeply the frameworks you use, the models you choose, the evaluation methods, deployment strategy. How it works under the hood
  2. DSA is a must. It's hard to cram DSA, but you get really really far with just a bit everyday. About 30% of interviews have a DSA round onsite. Another 30% might have DSA screening (hackerrank/codesignal). I'm not saying grind leetcode 6 hrs a day but even 1-2 problems consistently everyday adds up a lot! and you dont want to be caught unprepared if u get a DSA interview, you cant push back interviews for a month right now
  3. Takehomes/timed take homes are common. Make sure you clearly document and your code is easily reproducible and no steps are missing. e.g. if you did some data preprocessing but its not documented/shown thats bad. The conversion rate on takehomes is pretty high for me so do well on them and treat them seriously. In this interview cycle I've gotten first round interviews for all 6 takehomes i submitted
  4. Interviews are 80% luck and 20% skills in this market. Sometimes you just cant help it they might want a golang developer and even if youre a 200IQ java developer they dont care. Transferrable skills are not the same in this market. Sometimes theres just not a fit and dont beat yourself up. You can do everything right and still fail interviews
  5. Lower Pay/Lower presitge != Easier Interview. They're just different interviews looking for different things. Don't think that just because an interview is for a less prestigious company it will be easier. I've passed first rounds for roles that pay 3x more and 2 levels higher than ones ive failed.
  6. Make sure to go through the JD and note the skills theyre looking for and spend 30 mins being able to insert talking points to highlight those skills

Any other tips anyone would like to add?

Show more
332 Views
3 Comments

I need interview prep help... how can I get that on here?

Entry-Level Software Engineer at Unemployed profile pic
Entry-Level Software Engineer at Unemployed

Today I fumbled a technical interview.

I was told by the company I interned at previously to apply for a job posting. The person who knew the role is my manager from my internship there. That same manager I knew in there is now one position under the CTO. He told me it was a role that uses Spring Boot, Docker, and GraphQL. He said there’s a big effort to get GraphQL into the company’s architecture. It said “5+ years experience”, and didn't mention GraphQL, so I didn’t take it seriously. After I applied, the posting disappeared. My manager said the job posting I applied for was “probably just one of those ghost postings”. I had the behavioral where I spoke with the manager: I aced that. Today was the technical. The recruiter I was talking to was telling me this was an interview where I could show off projects, so I took the “prep some projects” approach. Did 3 projects. One using mern and GraphQL, one using typescript and express with rest architecture, and one using spring boot.  So I do that. I also prepped a Google doc with a list of common interview questions for all that I’m expecting. 

When I get into the interview, I get asked about my prior role. They said that showing projects wouldn’t be necessary: and that GraphQL wasn’t in the role. The first 20 minutes went well. I was asked about API stuff. I hear them say “good” sometimes, so I know something is right. Then I start getting asked simple questions I didn’t think to prep for. One was literally “what’s the difference between JDK and JRE”, and I knew what JDK was, but not JRE, and the difference between @override and @overload. I was then asked what Node is, so I tell them it’s a runtime environment (idk how I didn’t piece together what JRE was at this point), but I made a mistake because I should of delved into themes that made node.js incredible, like its event loop. Although I knew the basics of a microservice, it was only the basics. The interviewers were kind, and told me that although I articulated myself well, they’re looking for someone who knew more about microservices, and can code right now.

Luckily, the company told me prior to this that even if this doesn’t work out, they’d still want to hire me. There'll be another chance, but I realized I need mock interview help. I know I’ll need to review the Taro course on getting into and succeeding in interviews, but I also want to find people to do mock interviews with. How can I do that with Taro?

Thanks,

~Evan

Show more
48 Views
6 Comments

I keep failing my ML/Data Science interviews and I dont know why

Junior Machine Learning Engineer at Taro Community profile pic
Junior Machine Learning Engineer at Taro Community

In the last month I had 5 companies I interviewed for. I made it to on-site for 2 companies and got rejected after first round for 3 interviews and i'm feeling so lost on how to get better or what I'm doing wrong

  1. a series A YC startup: they ghosted me after a first round which was a HM convo about my past experience. Didn't even send an email even after follow up

  2. Wayfair associate level role (asking for 1-2 YoE): passed OA. idk what happened i thought it went well but I got rejected after first round. It was a "case interview" for data science. Dont want to leak the exam on public forum but it was something along the lines of they said u have X data, what would you use it for? How to train a model on it? and a lot of follow up questions.

    I took a mock interview for a system design from and got passed at the mid level so im not sure why i got rejected here.

  3. a series B startup: passed OA/takehome. failed on site - 4x rounds (SQL, pandas, coding/pair programming, ML theory) I thought I did fine on everything except the SQL which honestly is not my storng suit. I did ok ok on it. I kinda fumbled on 1 question out of 6 questions of the ML theory round where they asked me a stats question (find sample size needed for calculating significance of an A/B test). But I think I did well on the pandas round and the rest of ML and coding/pair programming.

  4. a really really fancy AI startup hiring ML Scientist: I did a 4 hr take home which I passed and then a 5 hour onsite no DSA but really delving into ML research skills and system design and coding. I was totally unqualified for this (they wanted strong research/math skills) so im not surprised here

  5. Series B startup: Passed OA and I got rejected after the first interview the moment the HM realized I had 6 mos of experience he ended the interview right there

Didnt also make it past the phone screen for 2 companies. I presume they were looking for someone more senior based on the JD

Show more
71 Views
7 Comments

How can I identify companies that have good work cultures where code doesn't have to be refactored all the time?

Senior Software Engineer at Taro Community profile pic
Senior Software Engineer at Taro Community

How can I prevent myself from putting myself in a job where I have to recode an entire code base after a long amount of time on a product?

More specifically, how do I identify good teams that have working styles where you aren't having to refactor an entire codebase and have a frustrating work environment? In the past, I've heard that at companies like Netflix that people can just code in whatever language they want, then when folks sometimes regroup/resync with a larger product team, one team in a particular language will win, leading to large parts of other specific devs on the team to hate it because they have to refactor their code.

How does one come up with certain criteria (and follow through with it) as they interview for jobs and specific companies about working styles on preferences of code base, tools, frameworks?

What other core principles and criteria folks consider as they're interviewing other people (not just the company interviewing for a role) that they should consider as a part of the dev culture, structure when it comes to these types of things so I don't make the same type of mistake?

And yes, I know people refactor code bases (ex. legacy projects, cleaning out whatever tech debt folks have), which people tend to hate because it's a lot of work--and that it's still bound to happen and unavoidable, but how can we eliminate cultures we dislike that are refactoring code bases as a result of a dysfunctional tech team? I want to avoid having terrible experiences at a future company I work (similar to an hackathon experience I had recently working on a small MVP can be frustrating when folks are not aligned / on the same page for things that might take to long to complete or have to refactor completely if they are not communicating well or upfront from the beginning).

Show more
61 Views
3 Comments

API interview in a couple of weeks... what's the best course of action to take?

Entry-Level Software Engineer at Unemployed profile pic
Entry-Level Software Engineer at Unemployed

Hi everybody. Last time I posted on here, I was laid off. I'm still laid off, BUT I got an interview where I interned at! It's a medium-sized financial company, looking to expand soon. The people I know in there are pretty high up. I told the recruiter that I was interested in making an impact on the business, and he really liked that about me. They said that no matter what happens with this interview, they're still gonna try to get me a software engineer job within the company. I think it was in a Taro course I saw when I first signed up where Alex said this, but the recruiters are looking for trust that you'll be able to ship production-level code. I've already done this within the company as an intern, and given my manager there at the time is now one guy under the CTO and CIO (the CIO remembered me and approved getting that position open!), I got that company trying to get me back in. Fingers crossed it works, but I'll have a hard time typing if I keep them crossed rather than code to practice beforehand.

The team is trying to modernize APIs. In the behavioral/vibe check interview, the manager told me that he has a bunch of awesome APIs he'd like to convince other areas in the company to use, but they're stubborn because their current processes work as they are, and they don't want to put themselves at risk by implementing the new awesome APIs. I'd be expected to act as someone who can have these conversations with these groups about the code and APIs they currently work with, and get them to buy in on the said new awesome APIs. It was originally a senior software engineer role, but they're interviewing me to see if they'd like to lower that to a mid-level role, and then (hopefully) hire me.

The role itself uses Node.js, SpringBoot, GraphQL, and Docker. I want to know what plan you guys think I should implement to study this next week and a half before it's technical interview day. I've been building some Node/GraphQL projects, and just worked on a SpringBoot project yesterday, too. A project approach is what I'm doing for this. I can also ask ChatGPT for some good interview questions on these things, but is there anything you guys can lob at me that will help me achieve proficiency (if not mastery) of those technologies in a week's time? Advice, tutorials, strategy planning, etc.

I'd really appreciate whatever y'all can throw at me. Thanks so much!

Evan

Show more
42 Views
2 Comments

Learn About Interviewing

Interviewing is an essential skill for every software engineer. The tech industry has one of the highest rates of job switching, so learning how to get good at interviewing can elevate your career. Your ability to transition between roles and companies depends on how well you perform during the interview. Taro offers resources for helping you to excel in software engineering interviews. We provide insights on effective preparation strategies and guide you on how to master the interview.
Interviews are a test for you to demonstrate your problem solving and technical skills. The ability to navigate complex challenges during an interview shows how prepared you are to take on the demands of being a software engineer.
Interviews also assess cultural fit and communication skills. This is important because you’ll be working in collaborative work environments where you need to talk to your team and other teams to execute well on your projects. Having great communication skills means you are able to effectively outline a broader vision of your project, dig into the technical details of your project, and communicate any potential issues to your stakeholders.
It’s crucial to thoroughly research the company to get valuable insights and make a good first impression. You can filter our Q&A by company to see whether there are any relevant conversations about the company to help with your interview. You can also check Blind and Reddit to understand what people are saying about the company. Use our Taro Networking feature to reach out to people in a company to get an insider perspective of the company. The company page should include information about their values and culture. Make sure that you align with these values. You should get a sense of the company’s financial reports to understand their products from a revenue point of view.
You should have a solid foundation in data structures and algorithms to show your experience and problem solving capabilities. Pick a programming language that you are proficient in, and use it for the technical portion of the interview. Leetcode is recommended as the best tool to practice for data structures and algorithms type of interviews. The provide a large set of problems with a code editor for you to solve the problems, and they have test cases and performance profiles so you can evaluate your solution. it’s also recommended to prepare through mock interviews.
The above strategies, along with diving more into Taro interviewing resources, can help you effectively prepare for an interview at a tech company.
Show more