Filter interviews by
The latest version of TypeScript used in my project has several new features.
Optional Chaining and Nullish Coalescing
Improved performance with faster compilation times
Support for private fields and methods
Higher order type inference from generic constructors
Support for ECMAScript private fields
Improved support for tuples
Smaller bundle sizes with tree shaking
Observable is for handling multiple values over time, while Promise is for handling a single value.
Observable can emit multiple values over time, while Promise can only emit a single value.
Observable can be cancelled, while Promise cannot be cancelled.
Observable provides operators for transforming and combining data, while Promise does not have such operators.
Observable is lazy, meaning it won't start emitting val...
Routing is the process of navigating between different components or pages in an Angular application.
Routing is used to create single-page applications (SPAs) where the content is dynamically loaded without refreshing the entire page.
In Angular, routing is achieved using the RouterModule and the RouterLink directives.
The RouterModule is imported from the @angular/router package and added to the imports array of th...
Lazy loading is a technique in Angular that loads modules or components on-demand, improving performance.
Lazy loading helps reduce initial load time by loading modules or components only when needed
It improves performance by splitting the application into smaller chunks
Syntax: import() function is used to dynamically load modules or components
Angular has four types of data bindings: Interpolation, Property binding, Event binding, and Two-way binding.
Interpolation: {{ expression }}
Property binding: [property]="expression"
Event binding: (event)="expression"
Two-way binding: [(ngModel)]="expression"
Life cycle hooks are methods that get called at specific stages of a component's life cycle.
ngOnInit() - called after the component is initialized
ngOnChanges() - called when the component's input properties change
ngOnDestroy() - called just before the component is destroyed
Used to perform specific actions at different stages of a component's life cycle
Yes, I have worked on them in my project
The @Input() and @Output() are decorators in Angular used for communication between parent and child components.
The @Input() decorator is used to pass data from a parent component to a child component.
The @Output() decorator is used to emit events from a child component to a parent component.
The @Input() property is bound to a value in the parent component template using property binding.
The @Output() property is ...
To call REST APIs in Angular, use the HttpClient module and its methods like get(), post(), put(), delete().
Import the HttpClientModule in your Angular module
Inject the HttpClient service in your component or service
Use the HttpClient methods to make HTTP requests to the REST APIs
Handle the response using observables and subscribe to them
Example: httpClient.get('https://api.example.com/data')
Example: httpClient.po...
Web workers are JavaScript scripts that run in the background, separate from the main browser thread.
Web workers allow for parallel execution of tasks, improving performance and responsiveness.
They can perform computationally intensive tasks without blocking the user interface.
Web workers communicate with the main thread using message passing.
Examples of tasks suitable for web workers include data processing, imag...
Passing data between parent and child components is component interaction in Angular.
Use @Input decorator to pass data from parent to child component
Use @Output decorator and EventEmitter to pass data from child to parent component
Use services to share data between components
Use ViewChild to access child component's properties and methods from parent component
I applied via Naukri.com and was interviewed in Sep 2020. There were 3 interview rounds.
Lazy loading is a technique in Angular that loads modules or components on-demand, improving performance.
Lazy loading helps reduce initial load time by loading modules or components only when needed
It improves performance by splitting the application into smaller chunks
Syntax: import() function is used to dynamically load modules or components
The @Input() and @Output() are decorators in Angular used for communication between parent and child components.
The @Input() decorator is used to pass data from a parent component to a child component.
The @Output() decorator is used to emit events from a child component to a parent component.
The @Input() property is bound to a value in the parent component template using property binding.
The @Output() property is bound...
Routing is the process of navigating between different components or pages in an Angular application.
Routing is used to create single-page applications (SPAs) where the content is dynamically loaded without refreshing the entire page.
In Angular, routing is achieved using the RouterModule and the RouterLink directives.
The RouterModule is imported from the @angular/router package and added to the imports array of the app...
Web workers are JavaScript scripts that run in the background, separate from the main browser thread.
Web workers allow for parallel execution of tasks, improving performance and responsiveness.
They can perform computationally intensive tasks without blocking the user interface.
Web workers communicate with the main thread using message passing.
Examples of tasks suitable for web workers include data processing, image man...
Observable is for handling multiple values over time, while Promise is for handling a single value.
Observable can emit multiple values over time, while Promise can only emit a single value.
Observable can be cancelled, while Promise cannot be cancelled.
Observable provides operators for transforming and combining data, while Promise does not have such operators.
Observable is lazy, meaning it won't start emitting values u...
The latest version of TypeScript used in my project has several new features.
Optional Chaining and Nullish Coalescing
Improved performance with faster compilation times
Support for private fields and methods
Higher order type inference from generic constructors
Support for ECMAScript private fields
Improved support for tuples
Smaller bundle sizes with tree shaking
To call REST APIs in Angular, use the HttpClient module and its methods like get(), post(), put(), delete().
Import the HttpClientModule in your Angular module
Inject the HttpClient service in your component or service
Use the HttpClient methods to make HTTP requests to the REST APIs
Handle the response using observables and subscribe to them
Example: httpClient.get('https://api.example.com/data')
Example: httpClient.post('h...
Top trending discussions
posted on 11 Mar 2022
I appeared for an interview before Mar 2021.
Round duration - 60 minutes
Round difficulty - Medium
21 students were shortlisted from the 1st MCQ round and in this round we were asked to write the codes (function only) of 3 questions in 1 hour time.
You are given a grid containing oranges where each cell of the grid can contain one of the three integer values:
Find the minimum time required to rot all fresh oranges in a grid.
Use Breadth First Search (BFS) to simulate the rotting process
Track the time taken to rot all oranges and return -1 if any fresh oranges remain
Handle edge cases like no fresh oranges or all oranges already rotten
Consider using a queue to efficiently process adjacent oranges
Given an array/list 'ARR' consisting of 'N' integers, your task is to find the majority element in the array. If there is no majority element present, return -1.
Find the majority element in an array, return -1 if no majority element exists.
Iterate through the array and keep track of the count of each element using a hashmap.
Check if any element's count is greater than floor(N/2) to determine the majority element.
Return the majority element or -1 if no majority element exists.
You are provided with a non-empty binary tree in which each node contains a non-negative integer value. Your task is to find and return the maximum ...
Find the maximum path sum between two leaf nodes in a binary tree.
Traverse the tree to find the maximum path sum between two leaf nodes.
Keep track of the maximum sum found so far.
Consider all possible paths between leaf nodes.
Handle cases where the tree has only a single leaf node.
Implement a recursive function to calculate the maximum path sum.
Round duration - 60 minutes
Round difficulty - Medium
This was a technical round with DSA based questions.
You are given a Singly Linked List of integers. The task is to find the N-th node from the end of the list.
If the given list is (1 -> -2 -&g...
Find the N-th node from the end of a Singly Linked List of integers.
Traverse the list to find the length L of the list.
Calculate the position of the N-th node from the beginning as L - N + 1.
Traverse the list again to reach the calculated position and return the node's value.
You are given a binary tree consisting of distinct integers and two nodes, X
and Y
. Your task is to find and return the Lowest Common Ancestor (LCA) of these two nodes...
Find the Lowest Common Ancestor (LCA) of two nodes in a binary tree.
Traverse the binary tree to find the paths from the root to nodes X and Y.
Compare the paths to find the last common node, which is the LCA.
Handle cases where one node is an ancestor of the other or when one node is the LCA itself.
You are given a string of length N
. Your task is to reverse the string word by word. The input may contain multiple spaces between words and may have leading o...
Reverse words in a string while handling leading/trailing spaces and multiple spaces between words.
Split the input string by spaces to get individual words
Reverse the list of words
Join the reversed words with a single space in between
Handle leading/trailing spaces by stripping them before and after reversing
Round duration - 60 minutes
Round difficulty - Easy
Technical Interview round with questions based on DSA
Given 'N' subjects, each containing a certain number of problems, and 'K' friends, assign subjects to friends such that each subject goes to exactly one friend, maintain...
Assign subjects to friends to minimize maximum workload, find minimum time for most loaded friend.
Sort subjects in descending order
Assign subjects to friends one by one until all subjects are assigned
The maximum workload will be the sum of problems assigned to the friend with the most problems
Return the maximum workload as the minimum time required
Grammar in compiler design defines the syntax and structure of a programming language.
Grammar specifies the rules for forming valid statements in a programming language.
It consists of a set of production rules that define how valid programs can be constructed.
There are different types of grammars such as context-free grammar, regular grammar, etc.
Example: In C programming language, the grammar specifies that a for loop...
A token in compiler design is a basic unit of syntax that the compiler can understand and process.
Tokens are the smallest units of a program that are meaningful to the compiler.
Examples of tokens include keywords, identifiers, operators, and punctuation symbols.
Tokens are generated by the lexical analysis phase of the compiler.
Tokens are used by the parser to build the abstract syntax tree of the program.
Round duration - 60 minutes
Round difficulty - Easy
Technical round with questions on DSA and Compiler Design mainly. He told me that you’ll be having your final HR round in some time. I knew that I was going well because he seemed to be quite satisfied with my answers.
You are given an arbitrary binary tree consisting of N nodes, each associated with an integer value from 1 to 9. Each root-to-leaf path can be considered a number formed by concat...
Find the total sum of all root to leaf paths in a binary tree formed by concatenating node values.
Traverse the binary tree from root to leaf nodes, keeping track of the current path sum
Add the current path sum to the total sum when reaching a leaf node
Use modulo (10^9 + 7) to handle large outputs
A regular language is a language that can be recognized by a finite automaton.
Regular languages can be described by regular expressions.
Regular languages are closed under union, concatenation, and Kleene star operations.
Examples of regular languages include the set of all strings over an alphabet that contain an even number of 'a's.
NP problems are decision problems that can be verified in polynomial time, while NP-Hard problems are at least as hard as the hardest problems in NP.
NP problems can be verified in polynomial time but not necessarily solved in polynomial time.
NP-Hard problems are at least as hard as the hardest problems in NP, but may not be in NP themselves.
Examples of NP problems include the subset sum problem and the traveling salesm...
Round duration - 30 minutes
Round difficulty - Easy
That was the round for which I’ve been waiting for hours
She was very friendly and nice to talk to. It didn’t seem that I was talking to the HR. It was more like talking to a friend. Finally we discussed about the pay-scale and work culture in Accolite.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
posted on 24 Jan 2022
I applied via Campus Placement and was interviewed before Jan 2021. There were 3 interview rounds.
Code to split an array of integers into two subarrays with equal sum.
Iterate through the array and calculate the total sum.
Divide the sum by 2 to get the target sum for each subarray.
Use dynamic programming to find a subset of the array that adds up to the target sum.
Return the two subarrays.
Example: [1, 2, 3, 4, 5, 6] -> [1, 2, 3, 6], [4, 5]
Example: [1, 2, 3, 4, 5] -> [1, 4, 5], [2, 3]
Implementing a binary search tree and its traversal methods.
Start by defining a Node class with left and right child pointers.
Implement insert() method to add nodes to the tree.
Implement inorder(), preorder(), and postorder() traversal methods.
Implement search() method to find a node in the tree.
Implement delete() method to remove a node from the tree.
Consider edge cases like empty tree, duplicate nodes, etc.
I applied via Campus Placement and was interviewed before Dec 2021. There were 4 interview rounds.
Thre are aptitude question with coding round
I appeared for an interview before Sep 2020.
Round duration - 90 minutes
Round difficulty - Medium
It was very good
Given a string ‘S’ composed of lowercase English letters, your task is to identify the longest palindromic substring within ‘S’.
If there are multiple longest palin...
Find the longest palindromic substring in a given string, returning the rightmost one if multiple exist.
Use dynamic programming to check if substrings are palindromes
Iterate through the string and expand around each character to find palindromic substrings
Keep track of the longest palindromic substring found
You are given a 2D matrix 'ARR' of size 'N x 3' with integers, where 'N' is the number of rows. Your task is to compute the smallest sum achievable by selecting one...
Find the smallest sum achievable by selecting one element from each row of a 2D matrix, following certain constraints.
Iterate through each row and calculate the minimum sum by selecting elements that do not violate the constraints.
Keep track of the minimum sum achieved so far.
Avoid selecting elements directly beneath previously selected elements.
Example: For input [[1, 2, 3], [4, 8, 6], [1, 5, 3]], the optimal selectio...
Round duration - 1 hour
Round difficulty - Medium
It was a good interview
Tip 1 : Daily practice programming
Tip 2 : Work with honesty
Tip 3 : Do with utmost dedication
Tip 1 : Write with honesty
Tip 2 : Mention about your achievements
I applied via Naukri.com and was interviewed in Jun 2021. There were 3 interview rounds.
posted on 27 Jul 2022
I applied via Campus Placement and was interviewed before Jul 2021. There were 5 interview rounds.
Round 1 was about 60 mins long. Basic Aptitude questions along with Programming MCQ
Round 2 had 2 coding questions with a time limit of 60mins. Intermediate level problem solving
knowledge is neccessary.
posted on 14 Sep 2021
I appeared for an interview in Apr 2021.
Round duration - 90 minutes
Round difficulty - Hard
Timing was 10 AM. Platform was very lagging. So overall it was not a good experience.
You are given a directed acyclic graph (DAG). Your task is to perform topological sorting of the graph and return any valid ordering.
A directed acyclic g...
Implement a function to perform topological sorting on a directed acyclic graph (DAG).
Create a graph data structure to represent the DAG.
Use depth-first search (DFS) to perform topological sorting.
Maintain a visited array to keep track of visited nodes.
Return the topological ordering of the graph as an array of integers.
Tip 1 : Practice data structure
Tip 2 : Do some projects
Tip 1 : Keep it short
Tip 2 : Try not to add false information
posted on 12 Jun 2021
I applied via Campus Placement and was interviewed in Dec 2020. There was 1 interview round.
Convert given no to corresponding excel no.
Excel no starts from 1 and goes up to 16384
Excel no is calculated using column and row numbers
For example, 1 corresponds to A, 27 corresponds to AA, 28 corresponds to AB, and so on
Find unique characters in a window of k size in a string.
Use a sliding window approach.
Maintain a hash table to keep track of character frequency.
Remove characters from hash table as the window slides.
Some of the top questions asked at the ONPASSIVE Angular Developer interview -
based on 3 reviews
Rating in categories
Software Engineer
143
salaries
| ₹3.8 L/yr - ₹13.3 L/yr |
Senior Software Engineer
69
salaries
| ₹6 L/yr - ₹18 L/yr |
Business Analyst
47
salaries
| ₹3 L/yr - ₹9.5 L/yr |
Java Developer
40
salaries
| ₹3 L/yr - ₹8 L/yr |
Technical Support Engineer
40
salaries
| ₹2.4 L/yr - ₹6 L/yr |
ITC Infotech
CMS IT Services
KocharTech
3i Infotech