i
Tessolve Semiconductor
Filter interviews by
Clear (1)
Impedance matching is the process of designing a system to ensure maximum power transfer between components.
Impedance matching is important in electronics to prevent signal reflections and ensure efficient power transfer.
It involves adjusting the impedance of components to match the source and load impedance.
Examples include matching the impedance of antennas to transmission lines in RF systems.
Impedance matching is co...
Top trending discussions
posted on 29 Apr 2015
C++ is an extension of C with object-oriented programming features.
C++ supports object-oriented programming while C does not.
C++ has classes and templates while C does not.
C++ has better support for exception handling than C.
C++ has a standard library while C does not.
C++ allows function overloading while C does not.
Arrays are contiguous blocks of memory while linked lists are made up of nodes that point to the next node.
Arrays have fixed size while linked lists can grow dynamically.
Insertion and deletion are faster in linked lists than in arrays.
Arrays have better cache locality while linked lists have better memory utilization.
Arrays are accessed using indices while linked lists are accessed using pointers.
Examples of arrays inc...
Data abstraction is the process of hiding implementation details and showing only necessary information.
Abstraction is achieved through abstract classes and interfaces.
It helps in reducing complexity and increasing efficiency.
Example: abstract class Shape with abstract method draw() implemented by its subclasses like Circle and Rectangle.
TCP/IP is a protocol used for communication between devices on the internet. OSI model is a conceptual framework for network communication.
TCP/IP is a suite of protocols that governs communication between devices on the internet.
OSI model is a conceptual framework that divides network communication into seven layers.
TCP/IP is based on a four-layer model, which includes the application, transport, internet, and network ...
Program counter is a register that stores the memory address of the next instruction to be executed by the processor.
Program counter is also known as instruction pointer.
It is a part of the processor's control unit.
The value of program counter is incremented after each instruction is executed.
If a program counter is corrupted, the processor may execute incorrect instructions.
Example: If the program counter is pointing ...
A program to reverse a given string.
Create an empty string to store the reversed string.
Iterate through the original string from end to start.
Append each character to the empty string.
Return the reversed string.
Recursion is a technique where a function calls itself to solve a problem. WAP for recursion is to write a program using recursion.
Recursion is used to solve problems that can be broken down into smaller sub-problems.
The base case is the condition where the function stops calling itself.
The recursive case is where the function calls itself with a smaller input.
Example: Factorial of a number can be calculated using recu...
A microprocessor is a computer processor that incorporates the functions of a central processing unit on a single integrated circuit.
Microprocessors are used in various electronic devices such as computers, smartphones, and gaming consoles.
Register names include program counter (PC), accumulator (ACC), general-purpose registers (GPR), and memory address register (MAR).
Registers are used to store data and instructions t...
SQL commands are used to interact with databases and manipulate data.
SELECT: retrieve data from a database
INSERT: add new data to a database
UPDATE: modify existing data in a database
DELETE: remove data from a database
CREATE: create a new database or table
ALTER: modify the structure of a database or table
DROP: delete a database or table
JOIN: combine data from multiple tables
GROUP BY: group data based on a specific colum
SQL query to join two tables
Use JOIN keyword to combine two tables based on a common column
Specify the columns to be selected using SELECT keyword
Use ON keyword to specify the common column between two tables
Pointers are variables that store memory addresses. Heap is a region of memory used for dynamic memory allocation.
Pointers are used to access memory directly
Heap is used for dynamic memory allocation
Pointers can be used to create data structures like linked lists
Heap memory must be manually managed to avoid memory leaks
The process of converting Example.c file to Example.exe involves several steps.
Preprocessing: includes header file inclusion, macro expansion, and conditional compilation
Compilation: converts source code to object code
Linking: combines object code with libraries to create executable file
Debugging: identifying and fixing errors in code
Optimization: improving performance of executable file
I have implemented various software applications on Linux OS.
Developed a web application using Python Flask framework on Linux server
Created a custom Linux kernel module for a hardware device driver
Implemented a distributed system using Apache Kafka on Linux machines
Optimized performance of a database server running on Linux by tuning kernel parameters
I am a software engineer with 5 years of experience in developing web applications using Java and JavaScript.
5 years of experience in software development
Expertise in Java and JavaScript
Proficient in developing web applications
Strong problem-solving and analytical skills
posted on 22 May 2015
Helped a friend with a last-minute project submission
Stayed up all night to help my friend complete a project
Provided guidance and support throughout the project
Helped my friend with the presentation and final submission
Ensured my friend's success despite my own busy schedule
During a software development project, I collaborated with team members to resolve a critical bug and ensure timely delivery.
Worked closely with team members to identify the root cause of the bug
Collaborated with the QA team to develop a testing plan
Implemented a fix and tested it thoroughly before deployment
Communicated progress and updates to the project manager and stakeholders
Ensured timely delivery of the project
posted on 21 Mar 2022
I was interviewed before Mar 2021.
Round duration - 45 minutes
Round difficulty - Easy
Technical round with questions on Programming and core Java concepts.
Determine if a given singly linked list of integers forms a cycle.
A cycle in a linked list occurs when a node's next reference points back to a previous node in...
Detect if a singly linked list forms a cycle by checking if a node's next reference points back to a previous node.
Use two pointers, one moving at double the speed of the other, to detect a cycle in the linked list.
If the fast pointer catches up to the slow pointer, there is a cycle.
Keep track of visited nodes to detect a cycle efficiently.
Given a singly linked list with integer data and an integer K
, write a function to remove the Kth node from the end of the linked list.
The lin...
Remove the Kth node from the end of a singly linked list.
Use two pointers to find the Kth node from the end
Adjust pointers to remove the Kth node
Handle edge cases like deleting the head node or if K is out of bounds
There are four types of access modifiers in Java: public, private, protected, and default.
Public: accessible from any other class.
Private: accessible only within the same class.
Protected: accessible within the same package and subclasses.
Default: accessible only within the same package.
Java objects are stored in memory as references to memory locations where the actual object data is stored.
Java objects are stored in the heap memory.
Each object is allocated memory on the heap using the 'new' keyword.
Object references are stored on the stack.
Objects can be garbage collected when no longer referenced.
Round duration - 45 minutes
Round difficulty - Easy
Technical round with questions on DSA mainly.
Time complexities for sorting algorithms vary from O(n^2) to O(n log n).
Bubble Sort - O(n^2)
Selection Sort - O(n^2)
Insertion Sort - O(n^2)
Merge Sort - O(n log n)
Quick Sort - O(n log n)
Heap Sort - O(n log n)
You are provided with an array of integers. The task is to sort the array in ascending order using the quick sort algorithm.
Quick sort is a divide-and-conquer algorithm. It ...
To achieve NlogN complexity in the worst case, we can implement the randomized quick sort algorithm.
Randomly select the pivot element to reduce the chances of worst-case scenarios.
Implement a hybrid approach like Introsort which switches to heap sort when the recursion depth exceeds a certain limit.
Use median-of-three partitioning to select a good pivot element.
Optimize the algorithm by choosing the right partitioning ...
You are given a sequence of numbers, ARR
. Your task is to return a sorted sequence of ARR
in non-descending order using the Merge Sort algorithm.
The Merge Sort...
Implement Merge Sort algorithm to sort a sequence of numbers in non-descending order.
Understand the Merge Sort algorithm which involves dividing the array into two halves, sorting each half, and then merging them back together.
Recursively apply the Merge Sort algorithm until the base case of having single elements in the array is reached.
Merge the sorted halves to produce the final sorted array in non-descending order.
...
Serial port transmits data one bit at a time, while parallel port transmits multiple bits simultaneously.
Serial port sends data sequentially, while parallel port sends data in parallel
Serial port uses fewer wires compared to parallel port
Examples of serial ports include RS-232, USB, and Ethernet ports, while examples of parallel ports include printer ports
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 21 Mar 2022
I was interviewed before Mar 2021.
Round duration - 60 minutes
Round difficulty - Easy
Technical Interview round with questions on DSA, OS.
You are given a Singly Linked List of integers. Your task is to reverse the Linked List by changing the links between nodes.
The first line of input contai...
Reverse a given singly linked list by changing the links between nodes.
Iterate through the linked list and reverse the links between nodes.
Keep track of the previous, current, and next nodes while reversing the links.
Update the head of the linked list to point to the last node after reversal.
Develop a program to compute the factorial of a given integer 'n'.
The factorial of a non-negative integer 'n', denoted as n!
, is the product of all positive integ...
Program to compute factorial of a given integer 'n', with error handling for negative values.
Create a function to calculate factorial using a loop or recursion
Check if input is negative and return 'Error'
Handle edge cases like 0 and 1 separately
Use long data type to handle large factorials
Example: For input 5, output should be 120
A page is a fixed-size block of memory managed by the operating system, while a frame is a fixed-size block of memory managed by the hardware.
Pages are managed by the operating system, while frames are managed by the hardware.
Pages are virtual memory blocks used by the operating system to manage memory, while frames are physical memory blocks used by the hardware.
Pages are typically smaller in size compared to frames, ...
Round duration - 45 minutes
Round difficulty - Easy
Technical Interview round with questions on OOPS, OS.
Given a binary tree of integers, return its level order traversal.
The first line contains an integer 'T' which represents the number of test cases. For each ...
Perform level order traversal on a binary tree and return the nodes in the order they are visited.
Use a queue to keep track of nodes at each level while traversing the tree.
Start with the root node, enqueue it, then dequeue and print its value, enqueue its children, and continue until the queue is empty.
Repeat the process for each level of the tree until all nodes are visited.
Example: For the input 1 2 3 4 -1 5 6 -1 7 ...
Mutex is used for exclusive access to a resource, while semaphore is used for controlling access to a resource by multiple threads.
Mutex is binary and allows only one thread to access the resource at a time.
Semaphore can have a count greater than one, allowing multiple threads to access the resource simultaneously.
Mutex is used for protecting critical sections of code, while semaphore is used for synchronization betwee...
The sizeof operator in C/C++ is used to determine the size of a data type or variable in bytes.
sizeof operator returns the size of a data type or variable in bytes.
It can be used with any data type, including primitive types, user-defined types, and arrays.
Example: sizeof(int) returns the size of an integer in bytes.
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 21 Mar 2022
I was interviewed before Mar 2021.
Round duration - 60 minutes
Round difficulty - Easy
This was a technical round with questions on DSA, OS , OOPS and DBMS. He first asked me to introduce myself. He asked me are you comfortable with networks, I said no. So he moved on to DBMS. He said have you used any tables in DBMS. I mentioned him about my project so he asked me which tables I used there and what all attributes were there. He was asking questions from my project. He asked me that any other project I have done, besides websites.
Declaration refers to introducing a variable or function to the compiler, while definition provides the actual implementation.
Declaration tells the compiler about the type and name of a variable or function, without allocating memory or defining its implementation.
Definition allocates memory for a variable or function, and provides the actual implementation.
Example: int x; // Declaration, int x = 5; // Definition
Given an integer array ARR
of size 'N' containing only the values 0, 1, and 2, the task is to sort this array.
The goal is to achieve the sorting in a...
Sort an array of 0's, 1's, and 2's in a single pass.
Use three pointers to keep track of 0's, 1's, and 2's positions while iterating through the array.
Swap elements based on the current element's value and the pointers.
Achieve sorting in a single pass by moving the pointers accordingly.
Given a singly linked list of integers, determine whether it contains a cycle. A cycle exists if any node in the list can be traversed more than once, forming a loop.
Detect cycle in a singly linked list by using Floyd's Tortoise and Hare algorithm.
Use two pointers, slow and fast, to traverse the linked list.
If there is a cycle, the fast pointer will eventually meet the slow pointer.
Time complexity: O(N), Space complexity: O(1).
Non-deterministic automata are theoretical models of computation where the next state is not uniquely determined by the current state and input.
Examples include non-deterministic finite automata (NFA) and non-deterministic pushdown automata (NPDA).
NFA can have multiple possible transitions for a given input symbol and state.
NPDA can have multiple possible transitions based on the current state, input symbol, and stack
Round duration - 30 minutes
Round difficulty - Easy
HR round with typical behavioral problems.
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 21 Mar 2022
I was interviewed before Mar 2021.
Round duration - 60 minutes
Round difficulty - Easy
Technical Interview round with questions on Programming and OOPS.
Given a string STR
, the goal is to remove all spaces from the string and convert it to Pascal case. In Pascal case, there are no spaces between words, and each word begins...
Convert a string to Pascal case by removing spaces and capitalizing each word.
Remove spaces from the input string
Capitalize the first letter of each word
Combine the words to form the Pascal case string
Given a string str
and a character 'X', write a function to remove all occurrences of 'X' from the given string.
If the character 'X' doesn't exist in ...
Create a function to remove all occurrences of a given character from a string.
Iterate through the string character by character and build a new string excluding the specified character.
Use a StringBuilder or similar data structure for efficient string manipulation.
Handle the case where the specified character does not exist in the input string.
Return the updated string after removing all occurrences of the specified c
Types of polymorphism in OOP include compile-time polymorphism (method overloading) and runtime polymorphism (method overriding).
Compile-time polymorphism is achieved through method overloading, where multiple methods have the same name but different parameters.
Runtime polymorphism is achieved through method overriding, where a subclass provides a specific implementation of a method that is already defined in its super...
A virtual function is a function in a base class that is declared using the keyword 'virtual' and can be overridden by a function in a derived class.
Virtual functions allow for dynamic polymorphism in C++
They are used in inheritance to achieve runtime polymorphism
Example: virtual void display() = 0; // pure virtual function
Data abstraction is the process of hiding the implementation details of data and only showing the necessary information to the user.
It allows users to interact with data without needing to know the underlying complexities.
Helps in reducing complexity and improving code readability.
Examples include classes in object-oriented programming where private data members are hidden from outside access.
Round duration - 60 minutes
Round difficulty - Easy
Technical Interview round with questions on OS, Networking and OOPS.
Paging in operating systems is a memory management scheme that allows the operating system to store and retrieve data from secondary storage when the physical memory (RAM) is full.
Paging divides the physical memory into fixed-size blocks called pages.
When a process is loaded into memory, it is divided into equal-sized blocks called pages as well.
The operating system keeps track of the pages in memory using a page table...
Mutual exclusion is a concept in computer science where only one process can access a resource at a time.
Prevents multiple processes from accessing a shared resource simultaneously
Achieved through the use of locks, semaphores, or other synchronization mechanisms
Ensures data consistency and prevents race conditions
Example: Using a mutex to protect a critical section of code in a multi-threaded application
The OSI (Open Systems Interconnection) model is a conceptual framework that standardizes the functions of a telecommunication or computing system into seven distinct layers.
Physical Layer: Deals with physical connections and transmission of raw data. Example: Ethernet cables.
Data Link Layer: Manages data transfer between devices on the same network. Example: MAC addresses.
Network Layer: Handles routing and forwarding o...
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.
I applied via Referral and was interviewed before Jan 2023. There was 1 interview round.
Abstract methods are methods that are declared in a class but do not have an implementation.
Abstract methods are used to define a common interface for a group of subclasses.
They are declared using the 'abstract' keyword and do not have a body.
Subclasses must provide an implementation for all abstract methods.
Abstract classes can have both abstract and non-abstract methods.
Abstract methods cannot be instantiated and can
based on 1 interview
Interview experience
Post Silicon Validation Engineer
177
salaries
| ₹0 L/yr - ₹0 L/yr |
Design Engineer
132
salaries
| ₹0 L/yr - ₹0 L/yr |
Test Engineer
104
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Engineer
92
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Design Engineer
89
salaries
| ₹0 L/yr - ₹0 L/yr |
Sankalp Semiconductor
Einfochips
Mistral Solutions
KPIT Technologies