# 3K

Principal Engineer interview questions shared by candidates

## Top Interview Questions

Sort: Relevance|Popular|Date
Principal Software Engineer was asked...14 December 2011

### Given a large document and a short pattern consisting of a few words (eg. W1 W2 W3), find the shortest string that has all the words in any order (for eg. W2 foo bar dog W1 cat W3 -- is a valid pattern)

This is a classic minimal window problem described in detail here - http://www.leetcode.com/2010/11/finding-minimum-window-in-s-which.html. Less

import java.util.*; class Untitled { public static void main(String[] args) { String[] strs = {"a","b","d","e","x","b","z","s","x","c","e","c","d","b"}; String[] pattern = {"b","z","x"}; getMin(strs, pattern); } private static void getMin(String[] strs, String[] pattern){ //initialize the set HashSet set = new HashSet(); for(int i = 0; i map = new HashMap(); for(head = 0; head map, String[] strs, int position){ if (!map.containsKey(strs[position])) return true; if (map.get(strs[position]) &lt;= 1) return false; return true; } } Less

Could you please explain this??

### Common algorithm question

I solved this problem correctly and explained what I did , also during writing each line I was explaining why I am writing it. But still no next round . Very useless .... I suggest do not spend your energy for this dead old company. Less

Could you please share the leetcode difficulty of the problems asked during the interview? Less

The key in these questions is to cover the fundamentals, and be ready for the back-and-forth with the interviewer. Might be worth doing a mock interview with one of the Oracle or ex-Oracle Principal Software Engineer experts on Prepfully? They give real-world practice and guidance, which is pretty helpful. prepfully.com/practice-interviews Less

### Code for some rest services where a user can see & buy the applicable games.

If anyone needs the code which I wrote, then comment &amp; I will share the code. As this code will give you basic setup at least, so that you can concentrate to develop your innovative ideas. Less

Just don't believe on the positive Glassdoor reviews for a company which has recently started. Less

Don't believe on the positive reviews directly, these companies fake such positive feedback to trap the talent &amp; may be at low price. Less

### Design round: Design an api rate limiter Coding round: simple manipulation of arrays and maps Craft round: Design an ML Labelling system

There will be many documents in a document database. The labelling system must use machine learning to label into different categories. Eg help desk, system document, technical. There will a small train dataset available but not entirely reliable. Less

The correct answer would be to use a combination of weak learning methods and gradually incorporate feedback and make it stronger Less

APi rate limiter was really simple, just look at uber/ratelimit on git and thats it. Rest was farily easy Less

### Coding in each round, Firewall, networking questions

LC Medium or Hard.

LC Medium or Hard?

Through questions like this, interviewers are mostly trying to test your skillset (and its relevance to the role) as robustly as possible, so be prepared for multiple offshoots and followups. It could be a useful exercise to do mocks with friends or colleagues in Palo Alto Networks to get a real sense of what the interview is actually like. Alternatively Prepfully has a ton of Palo Alto Networks Principal Software Engineer experts who provide mock interviews for a pretty reasonable amount. prepfully.com/practice-interviews Less

### analytical- there are 50 floors in a building. You are given two balls which can break at a certain f trheight . Give a solution where you can determine the critical height at which a ball breaks. the solution should be optimised to give the least no. of tries for the worst case scenario(i.e where the ball breaks on the 50th floor only)

first ball --- throw it every floor from the iteration the second balls breaks second ball --- throw it every 3 or 4 or 5 floor ... When the second ball breaks, you know there are only 3 or 4 or 5 floors to check ... O (log n) complexity ... best case O(1) Less

i'll go with binary search procedure..since it stands a better chance

think over !!

### Java, Database and scripting questions

The key in these questions is to cover the fundamentals, and be ready for the back-and-forth with the interviewer. Might be worth doing a mock interview with one of the Dell or ex-Dell Principal Software Engineer experts on Prepfully? They give real-world practice and guidance, which is pretty helpful. prepfully.com/practice-interviews Less

How long did it take for you receive the offer after the final interview?

Did your technical interviews include coding on a white board?

### TTD with pair programming.

what was the data structure implementation, if you don't mind?

How soon were these interviews scheduled ?

Through questions like this, interviewers are mostly trying to test your skillset (and its relevance to the role) as robustly as possible, so be prepared for multiple offshoots and followups. It could be a useful exercise to do mocks with friends or colleagues in Dell to get a real sense of what the interview is actually like. Alternatively Prepfully has a ton of Dell Principal Software Engineer experts who provide mock interviews for a pretty reasonable amount. prepfully.com/practice-interviews Less

### Print unique strings in a array.

Used HashSet to keep track of string that were already seen.

1) Build a Trie and just then just walk and print it then... 2) Like above, use hash, however, this is challenging if you can have unbounded string... as definition of string.... char-sequence-until-null so potential input can one huge sequence.... if it is known that string can be resonably 256 char long at max and all english letter then you can make hash function. Less