i
Porter
Filter interviews by
Clear (1)
MVVM focuses on separation of concerns between UI, business logic, and data layers, while MVC separates application into model, view, and controller.
MVVM stands for Model-View-ViewModel, where ViewModel acts as a mediator between View and Model.
MVVM is commonly used in WPF and Xamarin applications.
MVC stands for Model-View-Controller, where Controller handles user input, Model manages data, and View displays informatio...
I applied via Instahyre and was interviewed in Dec 2023. There were 5 interview rounds.
Given an array, find a subset that sums to a given sum K and print all triplets that sum to K.
Use a recursive approach to find subsets that sum to K
Use a nested loop to find triplets that sum to K
Avoid using duplicate elements in triplets
I applied via LinkedIn and was interviewed in Dec 2022. There were 2 interview rounds.
Reverse a linked list by group of given size
Divide the linked list into groups of given size
Reverse each group individually
Connect the reversed groups to form the final linked list
Porter interview questions for designations
posted on 24 Nov 2021
I applied via Instahyre and was interviewed in Oct 2021. There were 3 interview rounds.
Count occurrences of given element in a sorted array.
Use binary search to find the first and last occurrence of the element.
Subtract the indices to get the count of occurrences.
Handle edge cases like element not present in array.
Given a binary tree, find the path with the largest sum of node values.
Use depth-first search to traverse the tree and keep track of the current path sum.
At each node, compare the current path sum with the maximum path sum seen so far.
Return the path with the maximum sum.
If the tree is empty, return an empty path.
Top trending discussions
I was interviewed before Sep 2020.
Round duration - 90 minutes
Round difficulty - Easy
This was MCQ+Coding round.
Check if two strings are anagrams by comparing the sorted versions of the strings.
Sort both strings and compare if they are equal.
Use a hashmap to store the frequency of characters in each string and compare the maps.
Ignore spaces and punctuation when comparing the strings.
Round duration - 90 minutes
Round difficulty - Easy
This was face to face interview round.
Round duration - 90 minutes
Round difficulty - Easy
This was face to face interview round.
Tip 1 : Participate in live contests on websites like Codechef, Codeforces etc as much as possible.
Tip 2 : Practice previous interview questions from LeetCode, GeeksForGeeks.
Tip 3 : Revise Computer Science subjects like DBMS, OOPS thoroughly.
Add projects and Internships if you have done any and add only those things which you really know.
Final outcome of the interviewSelectedI was interviewed before Sep 2020.
Round duration - 90 Minutes
Round difficulty - Medium
Interview started at 11:00 am. It was an online round. During the coding round I submitted optimized solution and got full acceptance of the solutions.
You are provided with a directed graph composed of 'N' nodes. You have a matrix called 'EDGES' with dimensions M x 2, which specifies the 'M' edges in the graph. Each edge...
Detect cycle in a directed graph using depth-first search (DFS) algorithm.
Use DFS to traverse the graph and detect back edges indicating a cycle.
Maintain a visited array to keep track of visited nodes during traversal.
If a node is visited again during traversal and it is not the parent node, then a cycle exists.
Return true if a cycle is detected, false otherwise.
Round duration - 80 Minutes
Round difficulty - Medium
Interview started at 10:00 am. Interview went well, I was able to connect with the interviewer and enjoyed the whole interview
Find the next smallest palindrome strictly greater than a given number 'N' represented as a string 'S'.
You are given a number in string format, a...
Find the next smallest palindrome greater than a given number represented as a string.
Convert the string to an integer, find the next greater palindrome, and convert it back to a string.
Handle cases where the number is a palindrome or has all digits as '9'.
Consider both odd and even length numbers when finding the next palindrome.
Round duration - 80 Minutes
Round difficulty - Medium
Interview started at 11:00 am. Interview went well.
Given a binary tree of integers, your task is to return the boundary nodes of the tree in Anti-Clockwise direction starting from the root node.
The first line ...
Return the boundary nodes of a binary tree in Anti-Clockwise direction starting from the root node.
Traverse the left boundary nodes in a top-down manner
Traverse the leaf nodes from left to right
Traverse the right boundary nodes in a bottom-up manner
Handle cases where duplicates occur in the boundary nodes
Implement the function without printing as printing is already managed
Tip 1 : For Data Structures number of questions doesn't matter. Try to understand the logic behind them and try to apply them in creating multiple scenario's. Learn them by heart.
Tip 2 : For Web.Development Try to learn full stack development. See which part interests you more, Increase your knowledge horizon, Always try to build a system a system considering It will be served to millions of customers. By doing this 1-2 projects will increase and cover all the major things which one should learn in their career/college.
Tip 1 : Always try to make it a single page
Tip 2 : Always make resume company specific. eg. Data Structures part more if you are applying for MNC's eg. Amazon, Google, DE Shaw, browserstack.
I was interviewed in Oct 2020.
Round duration - 120 minutes
Round difficulty - Medium
Evening test around 5
Platform :- SHL
Environment was amazing
Given two binary trees, T and S, determine whether S is a subtree of T. The tree S should have the same structure and node values as a subtree of T.
Given two binary trees T and S, determine if S is a subtree of T with the same structure and node values.
Check if the second tree is a subtree of the first tree by comparing their structures and node values.
Use a recursive approach to traverse both trees and check for equality.
Handle cases where one tree is null or the values do not match.
Return true if S is a subtree of T, false otherwise.
You are given an N * N matrix of integers where each row and each column is sorted in increasing order. Your task is to find the positi...
Given a sorted N*N matrix, find the position of a target integer X.
Iterate over each row and column to find the target integer X
Utilize the sorted nature of the matrix to optimize the search process
Return the position of X if found, else return -1 -1
Round duration - 60 minutes
Round difficulty - Medium
1 Hour
Afternoon
You are provided with two singly linked lists containing integers, where both lists converge at some node belonging to a third linked list.
Your task is to determine t...
Find the node where two linked lists merge, return -1 if no merging occurs.
Traverse both lists to find their lengths and the difference in lengths
Move the pointer of the longer list by the difference in lengths
Traverse both lists simultaneously until they meet at the merging point
Given a Binary Search Tree (BST) and an integer 'S', your task is to find all pairs of nodes within the BST that total to 'S' and return these pairs. If no such p...
Find pairs of nodes in a BST that sum up to a given value 'S'.
Traverse the BST in-order to get a sorted list of nodes.
Use two pointers approach to find pairs with sum 'S'.
Keep track of visited nodes to avoid using the same node twice in a pair.
Round duration - 60 minutes
Round difficulty - Medium
Online Round held on Chime
You are given a binary tree of integers. Your task is to determine if it is a binary heap tree or not.
The first line of input contains an integer ‘T’ denoti...
Determine if a given binary tree is a binary heap tree or not based on certain properties.
Check if the binary tree is a complete binary tree where every level, except the last level, is completely filled and the last level is as far left as possible.
Ensure that every parent node is greater than all its children nodes, forming a max-heap.
If any node does not have a left or right child, it should be represented as -1 in
Given two strings S
and T
with lengths N
and M
respectively, your task is to find the "Edit Distance" between these strings.
The Edit Distance is defined as the minimum nu...
The task is to find the minimum number of operations required to convert one string into another using delete, replace, and insert operations.
Use dynamic programming to solve the problem efficiently.
Create a 2D array to store the edit distances between substrings of the two input strings.
Fill up the array based on the minimum of three possible operations: insert, delete, or replace.
The final answer will be the value at...
Tip 1 : 1 Programming Language
Tip 2 : Practice Data Structures with atleast 300 ques.
Tip 3 : CS Fundamental
Tip 1 : 1 Pager
Tip 2 : Add top 3 projects in Resume.
I was interviewed before Sep 2020.
Round duration - 180 minutes
Round difficulty - Medium
The online test consisted of 2 coding questions, 30 aptitude MCQs, 30 behavioral MCQs and 10 code snippets to debug. The coding questions were of medium level, aptitude MCQs were easy and the code snippets to debug was also of easy level. Each section had a time constraint.
You are provided with two sorted linked lists. Your task is to merge them into a single sorted linked list and return the head of the combined linked list.
...Merge two sorted linked lists into a single sorted linked list without using additional space beyond constant space complexity.
Create a dummy node to start the merged list
Iterate through both linked lists and compare nodes to merge them in sorted order
Update the next pointers accordingly
Handle cases where one list is empty or both lists are empty
Return the head of the merged linked list
Consider a 2-dimensional grid 'GRID' with 'N' rows and 'M' columns in Ninjaland. Each cell in the grid has an associated cost. The goal is to determine the minimum path ...
The Minimum Path Sum Problem involves finding the minimum sum of costs along a path from the top-left to the bottom-right of a grid.
Use dynamic programming to calculate the minimum path sum by considering the costs of moving down or right at each cell.
Initialize a 2D array to store the minimum path sum values for each cell in the grid.
Iterate through the grid to calculate the minimum path sum for each cell based on the...
Round duration - 60 minutes
Round difficulty - Medium
My interview was at 9:00 am. The interview was conducted on Amazon Chime and my webcam was on. The interviewer also asked me to write the code on a document which can be edited by both me and the interviewer. The difficulty of the questions was of medium level. I was asked 3 coding questions along with 2 questions related to OOPS at the end. The interview ended with the discussion of one of my projects. The interviewer was good and also gave me hints wherever required.
You are given a string S
. Your task is to partition S
such that every substring of the partition is a palindrome. Your objective is to return all possible palindr...
Given a string, partition it into palindromes and return all possible configurations.
Use backtracking to generate all possible palindrome partitions
Check if each substring is a palindrome before adding it to the partition
Return all valid partitions as an array of strings
Given an array of integers with 'N' elements, determine the length of the longest subsequence where each element is greater than the previous element. This...
Find the length of the longest strictly increasing subsequence in an array of integers.
Use dynamic programming to solve this problem efficiently.
Initialize an array to store the length of the longest increasing subsequence ending at each index.
Iterate through the array and update the length of the longest increasing subsequence for each element.
Return the maximum value in the array as the result.
You have a sequence of consecutive nonnegative integers. By appending all integers end-to-end, you formed a string S
without any separators. During this pro...
Find the missing number in a string of consecutive nonnegative integers.
Iterate through the string and check for missing numbers by comparing adjacent integers
If a missing number is found, return it as the output
Handle cases where there are multiple missing numbers or the string is invalid by returning -1
ACID properties in DBMS ensure data integrity and consistency.
Atomicity: All operations in a transaction are treated as a single unit of work, either all succeed or all fail.
Consistency: Database remains in a consistent state before and after the transaction.
Isolation: Transactions are isolated from each other until they are completed.
Durability: Once a transaction is committed, the changes made by it are permanent and...
Tip 1 : You must have a grip over Data Structures and algorithms. Your concepts must be crystal clear. Pick one coding platform and try to practice at least 7-10 coding questions everyday. I completed around 200+ questions on Leetcode, 200+ questions on Geek For Geeks and around 30-40 questions on InterviewBit.
Tip 2 : After attempting any coding problem, analyze its time and space complexity. See, if you can further optimize your solution. You can always check the editorials and compare your solution with it.
Tip 3 : Apart from coding questions keep studying concepts of Operating Systems, databases and object oriented programming. You can always refer to Geeks For Geeks articles for it. Also, Coding Ninja's Data Structures and algorithms course in C++ helped me a lot in improving my OOPS concepts specifically.
Tip 1 : You do not need to have a long list of projects on your resume. One good project with proper knowledge of it will do good. Similarly, do not list down several number of skills. Few skills but roper knowledge of them are enough.
Tip 2 : Do not fake anything on your resume. The interviewer gets to know about it by asking questions. If you aren't able to answer, it leaves a negative impact.
I was interviewed before Sep 2020.
Round duration - 90 minutes
Round difficulty - Easy
This is a written round on paper for everyone. Three coding questions were given. Two out of three must be correct covering every single edge case to qualify for the next round. Only the most optimal solution was to be considered.
Given an array arr
of length N
consisting of integers, find the sum of the subarray (including empty subarray) with the maximum sum among all subarrays.
Find the sum of the subarray with the maximum sum among all subarrays in an array of integers.
Iterate through the array and keep track of the maximum sum subarray encountered so far.
Use Kadane's algorithm to efficiently find the maximum subarray sum.
Consider the sum of an empty subarray as 0.
Example: For input arr = [-2, 1, -3, 4, -1], the maximum subarray sum is 4.
You are given 'N' ropes, each of varying lengths. The task is to connect all ropes into one single rope. The cost of connecting two ropes is the sum of their lengths. Yo...
Connect ropes with minimum cost by merging two smallest ropes at a time.
Sort the array of rope lengths in ascending order.
Merge the two smallest ropes at a time and update the cost.
Repeat the process until all ropes are merged.
Return the total cost as the minimum cost to connect all ropes.
Given a binary tree, your task is to print the left view of the tree.
The input will be in level order form, with node values separated by a...
Print the left view of a binary tree given in level order form.
Traverse the tree level by level and print the first node encountered at each level
Use a queue to perform level order traversal
Keep track of the level while traversing the tree
Round duration - 50 minutes
Round difficulty - Easy
This was face to face interview round.
You are given a Binary Tree of integers and an integer 'X'. Your task is to find all the triplets in the tree whose sum is strictly greater than 'X'. Th...
Find all triplets in a binary tree whose sum is greater than a given integer X, with a grandparent-parent-child relationship.
Traverse the binary tree to find all possible triplets with the required relationship.
Keep track of the sum of each triplet and compare it with the given integer X.
Return the triplets that satisfy the condition in any order.
Ensure each triplet follows the format (grand-parent, parent, child).
A thief is planning to steal from several houses along a street. Each house has a certain amount of money stashed. However, the thief cannot loot two adjacent houses. Determi...
Determine the maximum amount of money a thief can steal from houses without looting two consecutive houses.
Use dynamic programming to keep track of the maximum amount of money that can be stolen up to each house.
At each house, the thief can either choose to steal from the current house or skip it and steal from the previous house.
The maximum amount of money that can be stolen at the current house is the maximum of the ...
Round duration - 60 minutes
Round difficulty - Easy
This was face to face interview round.
Tip 1 : Participate in live contests on websites like Codechef, Codeforces, etc as much as possible.
Tip 2 : Practice previous interview questions from LeetCode, GeeksForGeeks.
Tip 3 : Revise Computer Science subjects like DBMS, OOPS thoroughly.
Only write those things in the resume which you are confident of and keep practicing.
Final outcome of the interviewRejectedSome of the top questions asked at the Porter Software Development Engineer II interview -
based on 4 interviews
Interview experience
Business Associate
260
salaries
| ₹0 L/yr - ₹0 L/yr |
Business Executive
223
salaries
| ₹0 L/yr - ₹0 L/yr |
Assistant Manager
96
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Business Associate
78
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Manager
73
salaries
| ₹0 L/yr - ₹0 L/yr |
Dunzo
Flipkart
Amazon
Snapdeal