Engineering Interview Questions | Glassdoor

# Engineering Interview Questions

77,942

Engineering interview questions shared by candidates

## Top Interview Questions

Sort: RelevancePopular Date

### Software Development Engineer In Test (SDET) at Microsoft was asked...

Mar 6, 2012
 In a given sorted array of integers remove all the duplicates.6 AnswersIterate the array and add each number to a set, if number is already there, it won't be added again, thus removing any duplicates. Complexity is Big-O of NThe array is already sorted, no need for a set. example: 2,2,5,7,7,8,9 Just keep tracking the current and previous and the index of the last none repeated element when found a difference copy the element to the last none repeated index + one and update current and previous, no extra space and it will run in O(n)public RemoveDuplicates() { int[] ip = { 1, 2, 2, 4, 5, 5, 8, 9, 10, 11, 11, 12 }; int[] op = new int[ip.Length - 1]; int j = 0, i = 0; ; for (i = 1; i <= ip.Length - 1; i++) { if (ip[i - 1] != ip[i]) { op[j] = ip[i - 1]; j++; } } if (ip[ip.Length - 1] != ip[ip.Length - 2]) op[j] = ip[ip.Length - 1]; int xxx = 0; }Show More Responsesdef removeDuplicatesSecondApproach(inputArray): prev = 0 noRepeatIndex = 0 counter = 0 for curr in range(1,len(inputArray)): if (inputArray[curr] == inputArray[prev]): counter = counter + 1 prev = curr else: inputArray[noRepeatIndex+1] = inputArray[curr] noRepeatIndex = noRepeatIndex + 1 prev = curr inputArray = inputArray[:-counter] return inputArrayif(inpArr[i] == inpArr[i+1]) { int repeats = 1; opArr[opPos] = inpArr[i]; int j = i + 1; while(j+1 <= inpArr.length - 1 && inpArr[i] == inpArr[j+1]) { j++; repeats++; } opArr = Arrays.copyOf(opArr, opArr.length - repeats); i = i + repeats; } else { opArr[opPos] = inpArr[i]; } opPos++; } for(int i =0; i<=opArr.length-1;i++) { System.out.println(opArr[i] + ","); }Apologies for the previous incomplete answer int[] inpArr = {1,2,2,3,4,5,5,5,8,8,8,9,13,14,15,18,20,20}; int[] opArr = new int[inpArr.length]; int opPos = 0; for(int i= 0; i<=inpArr.length - 1; i++) { if(inpArr[i] == inpArr[i+1]) { int repeats = 1; opArr[opPos] = inpArr[i]; int j = i + 1; while(j+1 <= inpArr.length - 1 && inpArr[i] == inpArr[j+1]) { j++; repeats++; } opArr = Arrays.copyOf(opArr, opArr.length - repeats); i = i + repeats; } else { opArr[opPos] = inpArr[i]; } opPos++; } for(int i =0; i<=opArr.length-1;i++) { System.out.println(opArr[i] + ","); }

### Software Development Engineer In Test (SDET) at Microsoft was asked...

Apr 9, 2012
 how can a particular application be tested apart from testing its functionality3 AnswersReliability Test, Stability Test, UI Test, Platform Test,Also include, performance, stress & load testingAccessibility, user experience, globalization, localization, integration, compatibility

Mar 18, 2009
 Implement a binary tree and explain it's function4 AnswersBinary Search tree is a storage data structure that allows log(n) insertion time, log(n) search, given a balanced binary search tree. The following implementation assumes an integer bst. There's a million implementations. Just look on wikipedia for search and insert algorithms.Hi Xin Li, A binary tree is not the same as binary search tree.. A binary tree is a tree in which every node has atmost two children nodes. It is a k-ary tree in which k=2. A complete binary tree is a tree in which all nodes have the same depth.The fact is ttttttt t t. T to t. To. A a aaAs Sdsassss.Show More ResponsesHello, Thank you for sharing your interview experience. As a small team of ex-Google employees, we have recently launched a new website, interviewjoy.com, where you can earn money by sharing your interview experiences/insights with other job candidates. (It is a marketplace for sharing job interview insights). Posting an interview consultancy service is totally free & anonymous and we are giving 50 USD sign-up bonus for the first 500 users. You are kindly invited to interviewjoy.com to check it out. Users already started making money on the website! Best Regards.. (For more information: onboarding@interviewjoy.com)

### Systems Engineer at Symantec was asked...

Aug 8, 2009
 can you host multiple https sites with different domain names but same IP on the same server? how3 AnswersNO, server cant tell which site is which because traffic is encrypted.The way question posed, the answer is YES, since you could cover all those https sites with a single certificate. But now this should even work for individual certificates http://en.wikipedia.org/wiki/Server_Name_IndicationYes you can that's what virtual hosting is for. https://en.wikipedia.org/wiki/Virtual_hosting

### Senior Software Systems Engineer - Professional Services at Aspera was asked...

Jul 5, 2012
 How would you peform an SSH connection between these two PCs. I can't give you any information on these PCs, just do it.4 AnswersCouldn't do it. Not enough information to complete.ssh into localhost ;PSimply SSH in to localhostShow More Responsesssh username@localhost A ssh server must be installed on both systems. Any PCs running Windows will require an SSH client, such as PuTTy.

### RF Hardware Engineer at Qualcomm was asked...

Dec 1, 2011
 What are the effects of a mismatched circuit?3 Answersunwanted heat and intermodulation productsIIP2 & DC OffsetsMismatched circuits can produce excess heat, DC offsets, intermodulation products, and other unwanted complications.

Dec 1, 2011
 What is the difference between RAID 0 & RAID 5?2 AnswersIt should a simple question if you have worked with computers & HDDs. RAID 0 - Block striping (req. 2 HDDs) and no mirroring or parity RAID 5 - Block striping with 1 dedicated parity drive (req. 3 HDDs)To expand on the previous answer, RAID 0 improves HDD performance dramaticaly, but since there is no mirroring if one drive dies data is lost. RAID 0 should never be used on a system with critical data. In RAID 5, performance is slower, but it allows for the failure of a HDD with no loss of data. Consider instead, RAID 10. It requires a minimum of four HDD's, but provides an increase in performance with redundancy.

### Network Optimization Engineer at Qualcomm was asked...

Dec 27, 2011
 What's the difference between block code and convolution code?2 AnswersIn block codes, information bits are followed by parity bits. In convolution codes, information bits are spread along the sequence. Block codes are memoryless whereas Convolution codes have memory. Convolution codes use small codewords in comparison to block codes, both achieving the same quality.Block code code information in blocks while convolutional codes convolve information bit sequence