RateGain interview experience Real time questions & tips from candidates to crack your interview

Product Management

RateGain
upvote
share-icon
4 rounds | 15 Coding problems

Interview preparation journey

expand-icon
Journey
My journey in the field of technology began with a genuine curiosity for learning and a passion for problem-solving. Initially, I immersed myself in basic programming languages like Python and acquired the fundamentals of computer science through CODING NINJA. Throughout my learning process, I actively sought out practical projects and challenges to apply my knowledge. This hands-on experience not only solidified my understanding but also allowed me to build a portfolio showcasing my skills during the interview process. Recognizing the importance of networking and mentorship, I actively engaged with the tech community both online and offline. Attending meetups, participating in forums, and connecting with professionals provided me with valuable insights and guidance, which were vouched for during the interview rounds. As I progressed in my learning journey, I set my sights on specific areas of interest, such as web development or data science. I continued to deepen my knowledge through more advanced courses, certifications, and real-world projects. The job interview process became an opportunity for me to showcase not only my technical skills but also my problem-solving approach, teamwork, and communication abilities. I prepared for interviews by practicing coding challenges, refining my resume and portfolio, and simulating behavioral interview scenarios. Rejections and setbacks were part of the journey, but each served as a learning experience. I sought feedback, identified areas for improvement, and iteratively refined my approach. Finally, after persistent effort and continuous learning, I landed a job that aligned with my goals and allowed me to contribute to meaningful projects. The journey didn't end there; I continue to evolve my skills, stay updated on industry trends, and embrace new challenges. Remember, the key is to stay curious, be resilient in the face of challenges, seek guidance from mentors, and never underestimate the value of continuous learning. Your journey is unique, and every step contributes to your growth and success.
Application story
Certainly! The application journey for a job interview typically involves several key steps. Here's a brief overview of the typical stages: Job Search: Via on-campus placements or career fairs.
Preparation
Duration: 6 months
Topics: HTML/CSS, Python, Data Structures and Algorithms, DBMS, SQL, Data Science and Analytics, Django and Flask, System Design.
Tip
Tip

Tip 1: Resume building and conflict resolution skills. 

Tip 2: Database, data structures, and algorithms skillsets for programming roles. 

Tip 3: Communication and practical analytical skills.

Application process
Where: Campus
Eligibility: 7 CGPA and no back logs
Resume Tip
Resume tip

Tip 1: Include practical projects in both software, hardware, and database ecosystem. 

Tip 2: Enhance communication skillsets to effectively convey the content of the course of action.

Interview rounds

01
Round
Easy
Online Coding Interview
Duration60 minutes
Interview date1 Apr 2021
Coding problem4

1. First non repeating character

Easy
15m average time
80% success
0/40
Asked in companies
HCL TechnologiesWells FargoAmazon

How Do You Print the First Non-Repeated Character in a String?

Problem approach

Create an array of 256, the amount of valid ASCII characters, and initialize each value to -1.
Loop through each character in the input string.
Using the character as an index in the indices array, if the value is -1, you are seeing it for the first time. In that case, set it to the current loop index.
If the value isn’t -1, you have processed this character before, so mark this with -2.
Loop through the indices array and find the smallest value (this is the index in the string), this is your first non-repeating character.

 

program:
int[] indices = new int[256];

for (int i = 0; i < 256; i++)
  indices[i] = -1;

for(int i = 0; i < input.Length; i++)
{
  var c = input[i];
  if (indices[c] == -1)
      indices[c] = i;
  else
      indices[c] = -2;
}

int firstNonRepeatingIndex = Int32.MaxValue;
foreach (var index in indices)
  if (index >= 0)
      firstNonRepeatingIndex = Math.Min(firstNonRepeatingIndex, index);

Try solving now

2. Anagram Pairs

Moderate
30m average time
60% success
0/80
Asked in companies
NearbuyAppleAmerican Express

How Do You Determine Whether the Following Two Strings Are Anagrams of Each Other?

Problem approach

Re-order the strings alphabetically and then compare the two strings.

string a = "abcd";
string b = "bcda";

bool AreAnagrams(string inputA, string inputB)
{
  // We reorder the strings alphabetically
  var orderedA = String.Concat(inputA.ToLower().OrderBy(c => c));
  var orderedB = String.Concat(inputB.ToLower().OrderBy(c => c));
 
  // Now if they contain the same letters, they should be the exact same string
  return orderedA == orderedB;
}

Try solving now

3. Remove Duplicates from Array

Easy
15m average time
80% success
0/40
Asked in companies
AmazonCIS - Cyber InfrastructurePayPal

How Do You Remove Duplicates From an Array in Place?

Problem approach

“In Place” normally means without allocating any further memory. In this case, it is literally impossible to remove something “In Place,” as removing this would reduce the array size. Here’s how you can do this without a secondary array:

Sort the array by ascending value order. This will place duplicates next to each other.
Loop through the array from back to front. This is necessary to allow you to reduce it in size while iterating.
Track the current value until you find a different one while keeping track of the count of the same value up to this point.
If you find a new value or reach the start of the array, use the count to remove the duplicates using swap-back and resize. To do this, swap the unwanted value with the last value in the array and then resize the array down by 1.
All duplicates have been removed, but it is no longer a sorted array. 


int[] array = { 5, 2, 1, 5, 8, 5, 1, 7, 7, 0 };

// First sort the array
Array.Sort(array);

int current = array[^1];
int duplicateCount = -1;

for(var i = array.Length-1; i >= 0; i--)
{
  if (array[i] != current || i == 0)
  {
      // We found a new value or are at the end, so remove duplicates up to this point
      int startIndex = i + 1;
      for (int j = startIndex; j < startIndex+duplicateCount; j++)
      {
          array[j] ^= array[^1];
          array[^1] ^= array[j];
          array[j] ^= array[^1];
         
          Array.Resize(ref array, array.Length - 1);
      }
     
      // Reset count and current
      current = array[i];
      duplicateCount = 0;
      continue;
  }
 
  duplicateCount++;
}

foreach(var val in array)

Try solving now

4. Leaf Nodes in Binary Trees

What are leaf nodes and why are they important in a binary tree?

Problem approach

Answer: Nodes in a binary tree that have children are referred to as interior nodes. When a node has no children (and therefore is a dead end), it’s called a leaf node. A leaf node signifies the end of a branch and lets the computer know that it doesn’t need to be processed any further.

02
Round
Easy
Face to Face
Duration30 minutes
Interview date4 Apr 2021
Coding problem5

1. Object-Oriented Programming (OOP)

Is Object-Oriented Programming (OOP) a good coding method?

Problem approach

Answer: Object-oriented programming (OOP) has been the dominant paradigm for decades, though it is debated whether this was due to merit or chance. In more recent years, data-oriented programming (DOP) has also gained popularity and can be used to great effect in many areas. However, rather than saying one paradigm is better than the other, it is more accurate to say that there are pros and cons to both.

2. Searching and Sorting

Problem approach

Answer: Searching is the act of checking for and retrieving a specific data element, whereas sorting rearranges multiple data elements in an array or list into some kind of order.

3. Favorite Programming Language

What Is Your Favorite Programming Language?

Problem approach

Answer: My dominant programming language is my favourite as since I've spent so much time with it. I've a passion for the language I’ll be working with. You can, however, also give an honorable mention to another language. What Is the Most Difficult Project You’ve Encountered on Your Learning Journey?Not everyone finds the same things difficult, and there is no right or wrong when it comes to your own personal strengths and weaknesses. With this in mind, it’s perfectly acceptable to be honest here, and it’s much more likely to produce an interesting answer than a template answer. My answer: In accordance, to me I feel neural networks just the crucks of it, just the algorithm gave me chills down my throat. Whereby, the most challenging one throughout my university days was obviously the variations of the machine learning and algortihms.

4. Creating a Countdown Timer

Make a countdown timer?(Link)

 

Problem approach

This question was a blend of algorithms, coding and aptitude too.

My answer: A countdown timer tracks the years, months, days, hours, and seconds until an event occurs. This use cases shall tests to create a date field, optional time, and a start button as a helper.

5. Cycle Detection in a Singly Linked List

Moderate
15m average time
80% success
0/80
Asked in companies
GrabThalesSterlite Technologies Limited

How Do You Determine Whether There Is a Loop in a Singly Linked List?

Problem approach

A loop (or cycle) in a linked list is when a node’s next value points back to an earlier node in the list.

Create a hash set of nodes. You will use this to track whether or not you have already processed a node.
Iterate the linked list, adding each node to the hash set.
If the node is already present in the hash set, then the linked list contains a loop (or cycle).
bool ContainsLoop(LinkedList linkedList)
{
  HashSet nodeVisitSet = new HashSet();

  var node = linkedList.head;
  while (node != null)
  {
      // If it's there, we already visited so this is a loop
      if (nodeVisitSet.Contains(node))
          return true;

      nodeVisitSet.Add(node);

      node = node.next;
  }

  return false;
}

Try solving now
03
Round
Medium
Online Coding Interview
Duration30 minutes
Interview date6 Apr 2021
Coding problem4

1. Develope a Recipe App

Build a RECIPE APP?

Problem approach

The objective of the Recipe app is to help the user manage recipes in a way that will make them easy to follow.

use case:
For the initial version of this app, the recipe data may be encoded as a JSON file. After implementing the initial version of this app you may expand on this to maintain recipes in a file or database.


User Stories
User can see a list of recipe titles
User can click a recipe title to display a recipe card containing the recipe title, meal type (breakfast, lunch, supper, or snack), number of people it serves, its difficulty level (beginner, intermediate, advanced), the list of ingredients (including their amounts), and the preparation steps.
User click a new recipe title to replace the current card with a new recipe.


Bonus features
User can see a photo showing what the item looks like after it has been prepared.
User can search for a recipe not in the list of recipe titles by entering the meal name into a search box and clicking a ‘Search’ button. Any open source recipe API may be used as the source for recipes (see The MealDB below).
User can see a list of recipes matching the search terms
User can click the name of the recipe to display its recipe card.
User can see a warning message if no matching recipe was found.
User can click a ‘Save’ button on the cards for recipes located through the API to save a copy to this apps recipe file or database.

2. AI in product management

What is the role of AI in product management?
 

Problem approach

Answer: AI is quickly transforming the workforce, particularly for product teams.My opportunity for the adaptability to change and have confidence yet to integrate new technologies into my work. Highlight ways AI can make product managers faster, more efficient, and more creative (be careful not to sound overly reliant on it to do your work, though). If possible, cite specific instances when we use AI.

3. Basic HR Question

What’s more important – completing a product on time, or completing a product as planned?
 

Problem approach

Answer : It'll give me an opportunity to demonstrate my nuanced understanding of product teams’ competing priorities and demands. Whereby, with my key skills in sql, data structures and algorithms, machine learning and operating systems. Whereby, an opportunity to demonstrate my ability and influence your decision into this field of industry.

4. Basic HR Question

Why did you decide to apply to this role?
 

Problem approach

Answer: I have been following your company’s successes for some time now and I know you have a great software development team. I was thinking that this would be the best environment for me to apply the skills I acquired during my internship and Master’s degree. I thought it was finally time to try my hand. I have experience in web development and I’m really interested in the projects you’re mentioning in the job ad – in fact, one of them was the subject of my thesis. I really think I’m a good fit for the job and can grow even more in your workplace.

04
Round
Medium
HR Round
Duration20 minutes
Interview date8 Apr 2021
Coding problem2

1. Basic HR Question

What did you like most about the job description?
 

Problem approach

Answer: First, the job description itself was very well-written and gave me a good idea of what the role was about. Second, I really liked the fact that this development cum product  role involves collaboration with others. I love collaboration and working with data, but I don’t want to sit at my desk to look at numbers all day – I want to have the chance to work as part of a team where we can exchange opinions and knowledge of new data methods and organize the company development department in the best way possible.

2. Basic HR Question

What do you know about our company’s product/services?
 

Problem approach

Answer: I know that your company products and services in terms of business intelligence and hospitality organization. Actually, I used your brand demographics when I was working at a hotel chain a couple of years ago. I was really impressed with how high-quality and durable that UI interface was. I also saw your company has recently opened a new data branch, a good sign for your company’s success.

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

What is recursion?

Choose another skill to practice
Similar interview experiences
company logo
SDE - 1
3 rounds | 7 problems
Interviewed by OYO
4657 views
0 comments
0 upvotes
company logo
SDE - 1
2 rounds | 5 problems
Interviewed by Meesho
6450 views
0 comments
0 upvotes
Product Management
4 rounds | 11 problems
Interviewed by RateGain
382 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 9 problems
Interviewed by Salesforce
3451 views
0 comments
0 upvotes