Data Scientist Interview Questions

Review this list of 155 data scientist interview questions and answers verified by hiring managers and candidates.
  • Adobe logoAsked at Adobe 

    "static boolean sudokuSolve(char board) { return sudokuSolve(board, 0, 0); } static boolean sudokuSolve(char board, int r, int c) { if(c>=board[0].length) { r=r+1; c=0; } if(r>=board.length) return true; if(boardr=='.') { for(int num=1; num<=9; num++) { boardr=(char)('0' + num); if(isValidPosition(board, r, c)) { if(sudokuSolve(board, r, c+1)) return true; } boardr='.'; } } else { return sudokuSolve(board, r, c+1); } return false; } static boolean isValidPosition(char b"

    Divya R. - "static boolean sudokuSolve(char board) { return sudokuSolve(board, 0, 0); } static boolean sudokuSolve(char board, int r, int c) { if(c>=board[0].length) { r=r+1; c=0; } if(r>=board.length) return true; if(boardr=='.') { for(int num=1; num<=9; num++) { boardr=(char)('0' + num); if(isValidPosition(board, r, c)) { if(sudokuSolve(board, r, c+1)) return true; } boardr='.'; } } else { return sudokuSolve(board, r, c+1); } return false; } static boolean isValidPosition(char b"See full answer

    Data Scientist
    Data Structures & Algorithms
    +4 more
  • Adobe logoAsked at Adobe 

    Permutations

    IDE
    Medium

    "function permute(nums) { if (nums.length <= 1) { return [nums]; } const prevPermutations = permute(nums.slice(0, nums.length-1)); const currentNum = nums[nums.length-1]; const permutations = new Set(); for (let prev of prevPermutations) { for (let i=0; i < prev.length; i++) { permutations.add([...prev.slice(0, i), currentNum, ...prev.slice(i)]); } permutations.add([...prev, currentNum]); } return [...permutations]"

    Tiago R. - "function permute(nums) { if (nums.length <= 1) { return [nums]; } const prevPermutations = permute(nums.slice(0, nums.length-1)); const currentNum = nums[nums.length-1]; const permutations = new Set(); for (let prev of prevPermutations) { for (let i=0; i < prev.length; i++) { permutations.add([...prev.slice(0, i), currentNum, ...prev.slice(i)]); } permutations.add([...prev, currentNum]); } return [...permutations]"See full answer

    Data Scientist
    Data Structures & Algorithms
    +3 more
  • Walmart Labs logoAsked at Walmart Labs 

    "I’ve spent over 6 years building and scaling e-commerce products across EMEA and APAC. At Jumia, I led product initiatives on the checkout and payments side. For example, I launched gamified promotions on PDP and checkout that improved engagement and delivered a 2.3x uplift in conversion. I also introduced automated installment payments and order cancellation flows, which not only improved user trust but also reduced complaints by 30% and lowered operational costs. Before that, at Lazada, I work"

    Rajeev K. - "I’ve spent over 6 years building and scaling e-commerce products across EMEA and APAC. At Jumia, I led product initiatives on the checkout and payments side. For example, I launched gamified promotions on PDP and checkout that improved engagement and delivered a 2.3x uplift in conversion. I also introduced automated installment payments and order cancellation flows, which not only improved user trust but also reduced complaints by 30% and lowered operational costs. Before that, at Lazada, I work"See full answer

    Data Scientist
    Behavioral
    +2 more
  • Meta (Facebook) logoAsked at Meta (Facebook) 
    Data Scientist
    Product Strategy
  • "Probability that one of the coupons is used = 1 - Probability that no coupon is used = 1 - nC0 p^0 * (1-p)^n = 1 -(1-p)^n"

    Chetak C. - "Probability that one of the coupons is used = 1 - Probability that no coupon is used = 1 - nC0 p^0 * (1-p)^n = 1 -(1-p)^n"See full answer

    Data Scientist
    Statistics & Experimentation
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • "[I'm not sure whether the answer below is the best, as I have not gotten result and feedback from my interview] Ans: I would solve by first using a VAE-style model, to create a latent space embedding that translates user description to generate images. Training would be done on the 1000 avatar images and 100000 descriptions, following this scheme: VAE: description -> encoder -> latent space -> decoder -> image Q: "OK, but that means you're limiting the generated images to be only the 1000 imag"

    Nick S. - "[I'm not sure whether the answer below is the best, as I have not gotten result and feedback from my interview] Ans: I would solve by first using a VAE-style model, to create a latent space embedding that translates user description to generate images. Training would be done on the 1000 avatar images and 100000 descriptions, following this scheme: VAE: description -> encoder -> latent space -> decoder -> image Q: "OK, but that means you're limiting the generated images to be only the 1000 imag"See full answer

    Data Scientist
    Machine Learning
  • Adobe logoAsked at Adobe 
    +7

    "from typing import List def traprainwater(height: List[int]) -> int: if not height: return 0 l, r = 0, len(height) - 1 leftMax, rightMax = height[l], height[r] res = 0 while l < r: if leftMax < rightMax: l += 1 leftMax = max(leftMax, height[l]) res += leftMax - height[l] else: r -= 1 rightMax = max(rightMax, height[r]) "

    Anonymous Roadrunner - "from typing import List def traprainwater(height: List[int]) -> int: if not height: return 0 l, r = 0, len(height) - 1 leftMax, rightMax = height[l], height[r] res = 0 while l < r: if leftMax < rightMax: l += 1 leftMax = max(leftMax, height[l]) res += leftMax - height[l] else: r -= 1 rightMax = max(rightMax, height[r]) "See full answer

    Data Scientist
    Data Structures & Algorithms
    +4 more
  • TikTok logoAsked at TikTok 

    "I generate insights through stakeholder requirements and the data I have in hand"

    Anonymous Eagle - "I generate insights through stakeholder requirements and the data I have in hand"See full answer

    Data Scientist
    Analytical
    +1 more
  • Slack logoAsked at Slack 

    "The only time I felt unhappy at work was when I didn’t get to pick the job I want to do at the jobsite."

    Amparo L. - "The only time I felt unhappy at work was when I didn’t get to pick the job I want to do at the jobsite."See full answer

    Data Scientist
    Behavioral
  • Data Scientist
    Analytical
    +1 more
  • Discord logoAsked at Discord 
    Data Scientist
    Behavioral
    +2 more
  • Tinder logoAsked at Tinder 
    Data Scientist
    Behavioral
  • Salesforce logoAsked at Salesforce 
    Data Scientist
    Behavioral
    +4 more
  • Data Scientist
    Data Analysis
  • Data Scientist
    Concept
    +1 more
  • Apple logoAsked at Apple 

    Coin Change

    IDE
    Medium
    +6

    "The example given is wrong. The 2nd test case should have answer 3, as we can get to 6 by using 3 coins of denomination 2."

    Anmol R. - "The example given is wrong. The 2nd test case should have answer 3, as we can get to 6 by using 3 coins of denomination 2."See full answer

    Data Scientist
    Coding
    +3 more
  • Apple logoAsked at Apple 
    +2

    "Make current as root. 2 while current is not null, if p and q are less than current, go left. If p and q are greater than current, go right. else return current. return null"

    Vaibhav D. - "Make current as root. 2 while current is not null, if p and q are less than current, go left. If p and q are greater than current, go right. else return current. return null"See full answer

    Data Scientist
    Data Structures & Algorithms
    +4 more
  • Tinder logoAsked at Tinder 

    "I would recognize the factors that are causing the interference. Then i will use tools like smoothing techniques or algorithms (e.g Kalman filters for time series) which can help isolate genuine trends from noise. In testing i would employ techniqu es like A/B testing to measure interference from unrelated factors and use techniques like regression analysis to seperate the relevant factors from noise."

    Trusha M. - "I would recognize the factors that are causing the interference. Then i will use tools like smoothing techniques or algorithms (e.g Kalman filters for time series) which can help isolate genuine trends from noise. In testing i would employ techniqu es like A/B testing to measure interference from unrelated factors and use techniques like regression analysis to seperate the relevant factors from noise."See full answer

    Data Scientist
    Technical
  • Infosys logoAsked at Infosys 

    "In Python, an "oops" (Object-Oriented Programming) concept refers to a programming paradigm that is based on the idea of objects and classes. OOP allows developers to model real-world concepts and create reusable code blocks through the use of inheritance, polymorphism, and encapsulation. Here are some common OOP concepts in Python: Class: A class is a blueprint for creating objects. It defines the attributes and behaviors that objects of that class will have. Object: An object is an insta"

    Anonymous Flamingo - "In Python, an "oops" (Object-Oriented Programming) concept refers to a programming paradigm that is based on the idea of objects and classes. OOP allows developers to model real-world concepts and create reusable code blocks through the use of inheritance, polymorphism, and encapsulation. Here are some common OOP concepts in Python: Class: A class is a blueprint for creating objects. It defines the attributes and behaviors that objects of that class will have. Object: An object is an insta"See full answer

    Data Scientist
    Technical
  • Adobe logoAsked at Adobe 

    "Leetcode 347: Heap + Hashtable Follow up question: create heap with the length of K instead of N (more time complexity but less space )"

    Chen J. - "Leetcode 347: Heap + Hashtable Follow up question: create heap with the length of K instead of N (more time complexity but less space )"See full answer

    Data Scientist
    Coding
    +3 more
Showing 121-140 of 155