cloudera logo

Cloudera Interviews

3 experiences15 reads22 questions67% success rate
Cloudera , SSE
cloudera logo
Cloudera
SDE IIOngoing
October 17, 20258 reads

Summary

I recently had an interview at Cloudera for an SSE role, which involved a Low-Level Design round focusing on service dependencies and a technical deep-dive on Java, Spring Boot, microservices, and practical production challenges.

Full Experience

My interview experience at Cloudera for the SSE role was structured into two main rounds. The first round was a Low-Level Design (LLD) focused on designing linked services and managing their dependencies. The interviewer emphasized the need to optimize dependent service querying and strictly adhere to SOLID principles throughout the design process, ensuring proper class design, dependency management, and separation of concerns. It was a challenging session where I had to think critically about architectural best practices.

The second round delved into more specific technical areas, primarily covering Java, Spring Boot, and microservices. We also discussed my current projects in detail. The questions were quite practical, testing my knowledge of framework nuances and production-level problem-solving. It was an engaging discussion covering various aspects of enterprise application development.

Interview Questions (3)

Q1
Low-Level Design: Linked Services and Dependencies
System DesignHard

The LLD round required me to design linked services and their dependencies. The key focus was on optimizing how dependent services query each other, while rigorously applying SOLID principles in class design, dependency management, and ensuring a clear separation of concerns.

Q2
Spring Boot Retry Mechanism Internal Call
OtherMedium

I was asked to explain the behavior and solution for implementing a retry mechanism in Spring Boot when a @Retryable method is invoked by another method within the same class. This typically leads to a self-invocation issue where the proxy mechanism doesn't intercept the call.

Q3
Database Column Renaming Without Downtime
System DesignHard

The interviewer posed a practical scenario: how would you go about changing a live database column name in a production environment without incurring any downtime for the application?

✅ Cloudera (On Campus) | Software Engineer | Bengaluru, India | Aug 2022 [Selected]
cloudera logo
Cloudera
Software EngineerBengaluru, IndiaOffer
August 27, 20223 reads

Summary

I interviewed for a Software Engineer position at Cloudera in August 2022 and successfully received an offer after completing four rounds focusing on coding, technical knowledge, and behavioral aspects.

Full Experience

My Interview Experience at Cloudera

As a final year undergraduate from a Tier 2 engineering college, I applied for the Software Engineer role at Cloudera and secured an offer with a CTC of 19 LPA.

Round 1 - Coding Round (120 mins)

This round was conducted on the Hackerrank platform and featured 4 questions. These included one problem based on heaps, a mathematical problem, a tree-based problem (a variation of the maximum sum path), and one SQL query. I managed to solve 2 questions completely and partially solved the other 2. Out of many candidates, 37 of us were selected to proceed to the next round.

Round 2 - Technical Interview 1 (45 mins)

My second round began with a self-introduction. The interviewer then asked me to solve 3 coding questions on the Codebunk platform:

  1. To find a cycle in a linked list.
  2. To implement a stack in C++.
  3. To merge 2 sorted arrays.

Following the coding segment, the interviewer inquired about my web development project, specifically asking how I would integrate advertisements into my website. When I mentioned Google AdSense, he delved into how Google AdSense works and the functionality of cookies.

Round 3 - Technical Interview 2 (45 mins)

This round also started with introductions. The interviewer showed significant interest in one of my Flutter projects and asked several questions related to it. Following this, I was asked to explain various process scheduling algorithms, their pros and cons, and to identify the most optimal one. He then presented a problem based on the Round Robin Algorithm.

In Computer Networks, I discussed the differences between HTTP and HTTPS, the OSI model, various protocols, why HTTP resides in the Application layer, and the roles of Switches and Routers, along with how a packet is transmitted.

For DBMS, the discussion revolved around Indexing and database optimization techniques. I initially mentioned sharding and normalization, but the interviewer wasn't fully satisfied. I then proposed using binary search if IDs are sorted for optimization. This led to a discussion on searching and sorting algorithms. I explained different sorting algorithms, specifically Bubble Sort and Merge Sort, including their time complexities. I also explained how binary search works and the two ways to calculate the middle element.

Towards the end, I answered a few OOPs questions with real-life examples and discussed operator overloading. I was also given one coding question on balancing parentheses on the Codebunk platform.

Round 4 - Hiring Manager (HM) Round (30 mins)

The final round began with mutual introductions and a casual conversation. The HM asked several questions from my resume concerning my projects, hackathons, CTFs, coding contests, and my involvement in a technical club. He also asked about B+ trees, which I couldn't answer. We then discussed various factors to consider before releasing an app as a product. The round concluded with some HR-related questions and an opportunity for me to ask questions.

Out of three selected candidates, I was one of them, ultimately receiving the offer.

Interview Questions (4)

Q1
Linked List Cycle Detection
Data Structures & AlgorithmsMedium

Given the head of a singly linked list, return true if there is a cycle in the linked list. Otherwise, return false.

Q2
Implement Stack in C++
Data Structures & AlgorithmsEasy

Implement a basic stack data structure in C++.

Q3
Merge Two Sorted Arrays
Data Structures & AlgorithmsEasy

Given two sorted arrays, merge them into a single sorted array.

Q4
Valid Parentheses
Data Structures & AlgorithmsEasy

Given a string s containing just the characters '(', ')', '{', '}', '[', ']', determine if the input string is valid.

Preparation Tips

My Preparation Strategy

My preparation focused heavily on core computer science fundamentals and problem-solving. I spent considerable time practicing Data Structures & Algorithms (DSA), ensuring I had a strong grasp of various data structures like heaps and trees, and common algorithms including sorting and searching.

I also revised key concepts in Operating Systems (OS), particularly process scheduling algorithms, and Computer Networks (CN), covering topics like HTTP/HTTPS, the OSI model, and packet transmission. Additionally, I prepared for Database Management Systems (DBMS), focusing on indexing, optimization, sharding, and normalization.

My practical experience from various projects, especially in web development and Flutter, also proved beneficial during the technical discussions. I also participated in hackathons, CTFs, and coding contests, which enhanced my problem-solving skills and provided practical exposure.

Cloudera interview experience for SDE-1 On campus hiring 2022
cloudera logo
Cloudera
sde-1No Offer
March 26, 20224 reads

Summary

I completed an on-campus interview process for an SDE-1 role at Cloudera, which involved a coding test with four programming questions and two subsequent technical rounds covering data structures, algorithms, operating systems, DBMS, networking, and OOPS concepts. I managed to solve most coding problems and discussed various theoretical aspects.

Full Experience

I recently participated in the on-campus hiring drive for an SDE-1 position at Cloudera in 2022. The selection process was structured into four main steps.

Step 1: Resume-based Selection

The first stage involved a screening of resumes, which I successfully cleared to move to the next round.

Step 2: Coding Test (120 minutes on HackerRank)

This round consisted of four programming questions, where two were easy and two were of medium difficulty. All of them were standard problems:

  1. Longest Increasing Subsequence
  2. Word Compression
  3. Last Remaining Element
  4. A problem described as: "For strings and an integer k, a selection of substrings is valid if the following conditions are met: The length of every substring is greater than or equal to k. Each substring is a palindrome. No two substrings overlap. Determine the maximum number of valid substrings that can be formed from s."

I was able to solve three of these questions completely and achieved partial acceptance for the fourth one.

Step 3: Technical Interview 1

My first technical interview began with a standard introduction. The interviewer then presented two coding questions on their platform (codebunk):

  1. Program 1: We discussed the theory of how a Binary Search Tree (BST) works, followed by a coding question to check if a given binary tree is a valid BST and how an optimal solution can be implemented. This is similar to LeetCode - Validate Binary Search Tree.
  2. Program 2: This was an array-related question, essentially a Kadane's Algorithm problem focusing on its complexity, asking for the maximum subarray sum. This is similar to LeetCode - Maximum Subarray.

Following the coding problems, we moved to theoretical discussions:

  • How memory allocation works in a program, specifically static and dynamic memory allocation.
  • Deep dive into OOPS concepts, particularly the abstraction part.
  • Differences in Java String declarations, with examples like String str = "abc"; and String str = new String("abc");.

Step 4: Technical Interview 2

This interview started with the usual "Tell me about yourself" question. Afterward, we covered several theory questions:

  • Differences between Array and Linked List.
  • DBMS – ACID properties, along with real-life examples.
  • OS – Deadlock Condition, the difference between thread and process, semaphores, and Mutex.
  • Networking – HTTP requests, DNS, how TCP works, and how various processes operate in a network, among other related questions.

Finally, there was a programming question:

Library System Design: I was asked to design a library system capable of storing a maximum of 50 songs. The requirements were:

  1. If the library size is less than 50, simply add the song.
  2. If the song already exists in the library, it should be removed from its current position and moved to the top (most recently played/added).

All insertion and deletion operations were required to be performed in O(1) time complexity. I decided to use a combination of a Queue and a Hashmap for my solution to meet these requirements effectively.

Interview Questions (15)

Q1
Longest Increasing Subsequence
Data Structures & AlgorithmsMedium

Standard problem to find the length of the longest increasing subsequence in a given array.

Q2
Word Compression
Data Structures & Algorithms

Problem involving compressing words, specifics not detailed but common in coding challenges.

Q3
Last Remaining Element
Data Structures & Algorithms

Problem to find the last remaining element after a series of operations or deletions.

Q4
Maximum Valid Substrings Selection
Data Structures & AlgorithmsHard

Given a string s and an integer k, determine the maximum number of valid substrings that can be formed from s. A selection of substrings is valid if the following conditions are met:

  1. The length of every substring is greater than or equal to k.
  2. Each substring is a palindrome.
  3. No two substrings overlap.

Q5
Validate Binary Search Tree
Data Structures & AlgorithmsMedium

Theory part of BST, how it works, and then the question statement is: Check if a given binary tree is a valid BST or not and how the optimal solution can work.

Q6
Maximum Subarray Sum (Kadane's Algorithm)
Data Structures & AlgorithmsMedium

This question is array related, essentially a Kadane's Algorithm problem focusing on its complexity, asking for the maximum subarray sum.

Q7
Memory Allocation (Static vs. Dynamic)
Other

How does memory allocation work in a program (static and dynamic memory allocation)?

Q8
OOPS Concepts (Abstraction)
Other

Deep dive into OOPS concepts, particularly the abstraction part.

Q9
Java String Declaration Differences
Other

Explain the difference in Java String declaration: String str = "abc"; and String str = new String("abc");.

Q10
Tell Me About Yourself
Behavioral

Standard introductory question: 'Tell me about yourself'.

Q11
Array vs. Linked List Differences
Other

Difference between Array and Linked List.

Q12
DBMS - ACID Properties
Other

DBMS – ACID properties and give real-life examples.

Q13
OS Concepts
Other

OS – Deadlock Condition, the difference between thread and process, semaphores, Mutex.

Q14
Networking Concepts
Other

Networking – HTTP requests, DNS, how TCP works, and how various processes operate in a network, among other related questions.

Q15
Library System with O(1) Operations (LRU Cache)
Data Structures & AlgorithmsHard

Make a library system where it can store 50 songs at most. The requirements are:

  1. If the library size is less than 50, simply add the song.
  2. If the song already exists in the library, it should be removed from its current position and moved to the top (most recently played/added).
All insertion and deletion operations were required to be performed in O(1) time complexity. You can use one or more data structures.

Have a Cloudera Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Cloudera.