Skip to main content

LinkedIn Machine Learning Engineer Interview Questions

Review this list of 30 LinkedIn Machine Learning Engineer interview questions and answers verified by hiring managers and candidates.
  • LinkedIn logoAsked at LinkedIn 
    42 answers
    Video answer for 'Edit distance'
    +34

    "from collections import deque def updateword(words, startword, end_word): if end_word not in words: return None # Early exit if end_word is not in the dictionary queue = deque([(start_word, 0)]) # (word, steps) visited = set([start_word]) # Keep track of visited words while queue: word, steps = queue.popleft() if word == end_word: return steps # Found the target word, return steps for i in range(len(word)): "

    叶 路. - "from collections import deque def updateword(words, startword, end_word): if end_word not in words: return None # Early exit if end_word is not in the dictionary queue = deque([(start_word, 0)]) # (word, steps) visited = set([start_word]) # Keep track of visited words while queue: word, steps = queue.popleft() if word == end_word: return steps # Found the target word, return steps for i in range(len(word)): "See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +3 more
  • LinkedIn logoAsked at LinkedIn 
    126 answers
    Video answer for 'Tell me about yourself.'
    +118

    "As you know, this is the most important question for any interview. Here is a structure I like to follow, Start with 'I'm currently a SDE/PM/TPM etc with XYZ company.... ' Mention how you got into PM/TPM/SDE field (explaining your journey) Mention 1 or 2 accomplishments Mention what you do outside work (blogging, volunteer etc) Share why are you looking for a new role Ask the interviewer if they have any questions or will like to dive deep into any of your experience"

    Bipin R. - "As you know, this is the most important question for any interview. Here is a structure I like to follow, Start with 'I'm currently a SDE/PM/TPM etc with XYZ company.... ' Mention how you got into PM/TPM/SDE field (explaining your journey) Mention 1 or 2 accomplishments Mention what you do outside work (blogging, volunteer etc) Share why are you looking for a new role Ask the interviewer if they have any questions or will like to dive deep into any of your experience"See full answer

    Machine Learning Engineer
    Behavioral
    +17 more
  • LinkedIn logoAsked at LinkedIn 
    60 answers
    Video answer for 'What is the project you are most proud of?'
    +53

    "I was working for my friend building streams at venues across the Chicago land area for FGC (fighting game tournaments), I adjusted and engineered his equipment to be set up permanently that's until covid came around at least. I used OBS to give visual appearances to stream watchers. So we're talking about subscribe, follow, and donation notifications and things of that nature for viewers to know they contributed in one of those ways. I set up proper sign-up scheduling for participants to lock t"

    Ayinde B. - "I was working for my friend building streams at venues across the Chicago land area for FGC (fighting game tournaments), I adjusted and engineered his equipment to be set up permanently that's until covid came around at least. I used OBS to give visual appearances to stream watchers. So we're talking about subscribe, follow, and donation notifications and things of that nature for viewers to know they contributed in one of those ways. I set up proper sign-up scheduling for participants to lock t"See full answer

    Machine Learning Engineer
    Behavioral
    +13 more
  • LinkedIn logoAsked at LinkedIn 
    31 answers
    +26

    "We can use dictionary to store cache items so that our read / write operations will be O(1). Each time we read or update an existing record, we have to ensure the item is moved to the back of the cache. This will allow us to evict the first item in the cache whenever the cache is full and we need to add new records also making our eviction O(1) Instead of normal dictionary, we will use ordered dictionary to store cache items. This will allow us to efficiently move items to back of the cache a"

    Alfred O. - "We can use dictionary to store cache items so that our read / write operations will be O(1). Each time we read or update an existing record, we have to ensure the item is moved to the back of the cache. This will allow us to evict the first item in the cache whenever the cache is full and we need to add new records also making our eviction O(1) Instead of normal dictionary, we will use ordered dictionary to store cache items. This will allow us to efficiently move items to back of the cache a"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +6 more
  • LinkedIn logoAsked at LinkedIn 
    56 answers
    Video answer for 'Merge Intervals'
    +48

    "const mergeIntervals = (intervals) => { const compare = (a, b) => { if(a[0] b[0]) return 1 else if(a[0] === b[0]) { return a[1] - b[1] } } let current = [] const result = [] const sorted = intervals.sort(compare) for(let i = 0; i = b[0]) current[1] = b[1] els"

    Kofi N. - "const mergeIntervals = (intervals) => { const compare = (a, b) => { if(a[0] b[0]) return 1 else if(a[0] === b[0]) { return a[1] - b[1] } } let current = [] const result = [] const sorted = intervals.sort(compare) for(let i = 0; i = b[0]) current[1] = b[1] els"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +6 more
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • LinkedIn logoAsked at LinkedIn 
    24 answers
    +21

    "function isValid(s) { const stack = []; for (let i=0; i < s.length; i++) { const char = s.charAt(i); if (['(', '{', '['].includes(char)) { stack.push(char); } else { const top = stack.pop(); if ((char === ')' && top !== '(') || (char === '}' && top !== '{') || (char === ']' && top !== '[')) { return false; } } } return stack.length === 0"

    Tiago R. - "function isValid(s) { const stack = []; for (let i=0; i < s.length; i++) { const char = s.charAt(i); if (['(', '{', '['].includes(char)) { stack.push(char); } else { const top = stack.pop(); if ((char === ')' && top !== '(') || (char === '}' && top !== '{') || (char === ']' && top !== '[')) { return false; } } } return stack.length === 0"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • LinkedIn logoAsked at LinkedIn 
    7 answers
    +3

    "General Approach (using Max-Heap) Use a max-heap (priority queue) of size k. For each point: Compute the distance to P. Push it into the heap. If heap size > k, remove the farthest point. The heap will contain the k closest points to P. import java.util.*; public class KClosestPoints { static class Point { int x, y; public Point(int x, int y) { this.x = x; this.y = y; } // Euclidean distance squared (no need to take square root) p"

    Khushbu R. - "General Approach (using Max-Heap) Use a max-heap (priority queue) of size k. For each point: Compute the distance to P. Push it into the heap. If heap size > k, remove the farthest point. The heap will contain the k closest points to P. import java.util.*; public class KClosestPoints { static class Point { int x, y; public Point(int x, int y) { this.x = x; this.y = y; } // Euclidean distance squared (no need to take square root) p"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +2 more
  • LinkedIn logoAsked at LinkedIn 
    2 answers
    Video answer for 'Implement k-means clustering.'

    "at first I want to know number of cluster I will put random number if I don't know and I will use method called Elbow method or Silhouette Score ,Gap Statistic and Davies–Bouldin Index to know the best number of cluster and I will use scikit-learn library to import kmeans from sklearn.cluster import KMeans kmeans = KMeans(nclusters=2, randomstate=0) kmeans.fit(X) and X this my data "

    Taheia S. - "at first I want to know number of cluster I will put random number if I don't know and I will use method called Elbow method or Silhouette Score ,Gap Statistic and Davies–Bouldin Index to know the best number of cluster and I will use scikit-learn library to import kmeans from sklearn.cluster import KMeans kmeans = KMeans(nclusters=2, randomstate=0) kmeans.fit(X) and X this my data "See full answer

    Machine Learning Engineer
    Analytical
    +5 more
  • LinkedIn logoAsked at LinkedIn 
    4 answers
    Video answer for 'Explain Bayes' theorem.'
    +1

    "Is it bad to get the answer a different way? Will they mark that as not knowing Bayes Theorem or just correct as it is an easier way to get the answer? The way I went is to look at what happens when the factory makes 100 light bulbs. Machine A makes 60 of which 3 are faulty, Machine B makes 40 of which 1.2 are faulty. Therefore the pool of faulty lightbulbs is 3/4.2 = 5/7 from machine A and 1.2/4.2 = 3/7 from Machine B."

    Will I. - "Is it bad to get the answer a different way? Will they mark that as not knowing Bayes Theorem or just correct as it is an easier way to get the answer? The way I went is to look at what happens when the factory makes 100 light bulbs. Machine A makes 60 of which 3 are faulty, Machine B makes 40 of which 1.2 are faulty. Therefore the pool of faulty lightbulbs is 3/4.2 = 5/7 from machine A and 1.2/4.2 = 3/7 from Machine B."See full answer

    Machine Learning Engineer
    Concept
    +2 more
  • LinkedIn logoAsked at LinkedIn 
    Add answer
    Video answer for 'Find the median of two sorted arrays.'
    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • LinkedIn logoAsked at LinkedIn 
    18 answers
    Video answer for 'Given an nxn grid of 1s and 0s, return the number of islands in the input.'
    +15

    " from typing import List def getnumberof_islands(binaryMatrix: List[List[int]]) -> int: if not binaryMatrix: return 0 rows = len(binaryMatrix) cols = len(binaryMatrix[0]) islands = 0 for r in range(rows): for c in range(cols): if binaryMatrixr == 1: islands += 1 dfs(binaryMatrix, r, c) return islands def dfs(grid, r, c): if ( r = len(grid) "

    Rick E. - " from typing import List def getnumberof_islands(binaryMatrix: List[List[int]]) -> int: if not binaryMatrix: return 0 rows = len(binaryMatrix) cols = len(binaryMatrix[0]) islands = 0 for r in range(rows): for c in range(cols): if binaryMatrixr == 1: islands += 1 dfs(binaryMatrix, r, c) return islands def dfs(grid, r, c): if ( r = len(grid) "See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • LinkedIn logoAsked at LinkedIn 
    30 answers
    +22

    " O(n) time, O(1) space from typing import List def maxsubarraysum(nums: List[int]) -> int: if len(nums) == 0: return 0 maxsum = currsum = nums[0] for i in range(1, len(nums)): currsum = max(currsum + nums[i], nums[i]) maxsum = max(currsum, max_sum) return max_sum debug your code below print(maxsubarraysum([-1, 2, -3, 4])) `"

    Rick E. - " O(n) time, O(1) space from typing import List def maxsubarraysum(nums: List[int]) -> int: if len(nums) == 0: return 0 maxsum = currsum = nums[0] for i in range(1, len(nums)): currsum = max(currsum + nums[i], nums[i]) maxsum = max(currsum, max_sum) return max_sum debug your code below print(maxsubarraysum([-1, 2, -3, 4])) `"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • LinkedIn logoAsked at LinkedIn 
    13 answers
    Video answer for 'Merge k sorted linked lists.'
    +7

    "A much better solution than the one in the article, below: It looks like the ones writing articles here in Javascript do not understand the time/space complexity of javascript methods. shift, splice, sort, etc... In the solution article you have a shift and a sort being done inside a while, that is, the multiplication of Ns. My solution, below, iterates through the list once and then sorts it, separately. It´s O(N+Log(N)) class ListNode { constructor(val = 0, next = null) { th"

    Guilherme F. - "A much better solution than the one in the article, below: It looks like the ones writing articles here in Javascript do not understand the time/space complexity of javascript methods. shift, splice, sort, etc... In the solution article you have a shift and a sort being done inside a while, that is, the multiplication of Ns. My solution, below, iterates through the list once and then sorts it, separately. It´s O(N+Log(N)) class ListNode { constructor(val = 0, next = null) { th"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • LinkedIn logoAsked at LinkedIn 
    1 answer

    "Functional requirement's: partial search while searching for users, products any keywords in the search. additional keywords in the filter Black listed words in the search. Non functional requirements: low latency, search through 2 Billion records recent search should be cached. Design: high reads, we should have caching enabled over the primary db storages. caching cluster can be added when the search load increases. read ahead. - check in cache (periodic cache refresh), lfu, lru "

    Sandeep Y. - "Functional requirement's: partial search while searching for users, products any keywords in the search. additional keywords in the filter Black listed words in the search. Non functional requirements: low latency, search through 2 Billion records recent search should be cached. Design: high reads, we should have caching enabled over the primary db storages. caching cluster can be added when the search load increases. read ahead. - check in cache (periodic cache refresh), lfu, lru "See full answer

    Machine Learning Engineer
    System Design
    +1 more
  • LinkedIn logoAsked at LinkedIn 
    Add answer
    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • LinkedIn logoAsked at LinkedIn 
    Add answer
    Machine Learning Engineer
    Behavioral
    +3 more
  • LinkedIn logoAsked at LinkedIn 
    6 answers
    +3

    "def mergeTwoListsRecursive(l1, l2): if not l1 or not l2: return l1 or l2 if l1.val < l2.val: l1.next = mergeTwoListsRecursive(l1.next, l2) return l1 else: l2.next = mergeTwoListsRecursive(l1, l2.next) return l2 "

    Ramachandra N. - "def mergeTwoListsRecursive(l1, l2): if not l1 or not l2: return l1 or l2 if l1.val < l2.val: l1.next = mergeTwoListsRecursive(l1.next, l2) return l1 else: l2.next = mergeTwoListsRecursive(l1, l2.next) return l2 "See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +5 more
  • LinkedIn logoAsked at LinkedIn 
    Add answer
    Machine Learning Engineer
    Behavioral
    +1 more
  • LinkedIn logoAsked at LinkedIn 
    1 answer

    "We've identified the problem as a Design a Product question. Use the following framework for tackling these types of questions: Ask Clarifying Questions Identify users, behaviors, and pain points State product goal Identify current solutions Brainstorm new solutions Evaluate solutions Measure success Summarize We'll go through each of these step by step. Ask Clarifying Questions The PM interview isn't about your ability to come up w"

    Exponent - "We've identified the problem as a Design a Product question. Use the following framework for tackling these types of questions: Ask Clarifying Questions Identify users, behaviors, and pain points State product goal Identify current solutions Brainstorm new solutions Evaluate solutions Measure success Summarize We'll go through each of these step by step. Ask Clarifying Questions The PM interview isn't about your ability to come up w"See full answer

    Machine Learning Engineer
    Product Design
    +1 more
  • LinkedIn logoAsked at LinkedIn 
    Add answer
    Machine Learning Engineer
    System Design
Showing 1-20 of 30