↳
Automation starts when UAT becomes stable. Say for instance if on each release more than 50% test are failing you don't automate the application. During this time you can run smoke or black box tests to check if major functionalities are working properly. Once it becomes more stable for instance if 20% tests are failing you can start the automation process. Depending upon the application one can start with developing the frameworks. if it needed to be a data driven framework or a key word dirven framework. The best practice will be to incorporate Hybril Framwork which is combination of both keyword and data driven frameworks. On every release you run your regression tests to check new functionalities and anything broken from the previous releases. Once the application comes closer to complition you can develop a happy path or end to end test to check the functionalities of the application. Less
↳
Did well on the first Java coding test. Solution using Hashset. Not so well on the SQL query. Able to give a query, but a few errors in it I am sure. Also there was a second questions regarding the SQL query, which we didn't have time to get to. So that was another bad thing. I am pretty sure I did not pass. But good learning experience. Less
↳
import java.util.*; public class test { public static void main(String[] args) { String str = "abdc"; char[] arr = str.toCharArray(); HashSet set = new HashSet(); for (char i : arr ) { set.add(i); } if((set.size()) == (arr.length)) System.out.println("unique character"); else System.out.println("repetition"); } } Less
↳
No
↳
What you said is correct but they are more interested in you showing that you understand how those work togeather - ie how the currents are fllowing and what actually effects efficency. For the switchers they use in there design they are using syncrounous switchers in polyphase designs. These are concerned with getting every last bit of efficency out of a design at the minimum space usage and lowest cost. Your efficency will be dictacted by your choise of mosfets (rds vs gate charge), switching frequency, inductor loss and copper loss. The most important thing is to demonstrate that your understanding all of this like it is second nature. Less
↳
Number of different questions regarding power supplies such as: Describe how buck regulator works? What effects efficiency? Describe effect on output when step response on load occurs. Less
↳
Buck regulator is easy to design. A switch, a diode and an inductor with bypass/decoupling capacitors at input and output Efficiency = load power/ total power Effect of step on output will be overshoot, ripples, before it settle down to actual voltage level. What were your answers? Was there any other questions asked regarding digital design? Less
↳
let string:String = "AAAAABBBVVVCVCAA" let characters = Array(string) var counter:Int = 1 var newArray:[String] = [String]() let lastCount = characters.count - 1 for count in 0...(characters.count - 2) { if characters[count] == characters[count + 1] { counter = counter + 1; }else { newArray.append("\(counter)\(characters[count])") counter = 1 } if lastCount == count + 1 { newArray.append("\(counter)\(characters[count])") } } print(newArray) Less
↳
public static void main(String[] args) { String s = "AAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBCC"; Set set = new HashSet(); char b = 0; int count = 1; String newString = ""; for (int i = 0; i 0) { b = s.charAt(i - 1); } char c = s.charAt(i); if (!set.add(c)) { count++; } else { if (b != 0) { newString = newString + b + count; count = 1; } } } newString = newString + b + count; System.out.println(newString); } Less
↳
public static void main(String[] args) { String s = "AAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBCC"; Set set = new HashSet(); char b = 0; int count = 1; String newString = ""; for (int i = 0; i 0) { b = s.charAt(i - 1); } char c = s.charAt(i); if (!set.add(c)) { count++; } else { if (b != 0) { newString = newString + b + count; count = 1; } } } newString = newString + b + count; System.out.println(newString); } Less
↳
Both previous answers are theoretically correct, yet buggy. 'A' could potentially overflow due to (A+B) or (A*B). Therefore, the best method is to use the 'xor' operator. A ^= B; B ^= A; A ^= B; Less
↳
first you do A= A*B, next you divide B=A/B and finally A= A/B.
↳
A = A+B B = A-B A = A-B
↳
There were two followup questions to this. a) What if there are lot of zeros after the sum is 10. E.g. 505000000 - what would it return? b) what if we allow negative numbers. For example 5,5,-6,6,0,0 We also discussed its time complexity. Less
↳
The following should work. cheers! public int[] calculateSumSet(int[] inputArray, int desiredSum) { for (int stratingIndex = 0; stratingIndex < inputArray.length; stratingIndex++) { int sumOfSubArray = -1; int endingIndex = stratingIndex; do { sumOfSubArray = getSum(inputArray, stratingIndex, endingIndex); if (desiredSum == sumOfSubArray) { return subArray(inputArray, stratingIndex, endingIndex); } endingIndex++; } while (endingIndex < inputArray.length);//&& sumOfSubArray < desiredSum } return null; } private int getSum(int[] inputArray, int stratingIndex, int endingIndex) { int retValue = 0; for (int i = stratingIndex; i <= endingIndex; i++) { retValue += inputArray[i]; } return retValue; } private int[] subArray(int[] inputArray, int stratingIndex, int endingIndex) { int[] retValue = new int[endingIndex - stratingIndex + 1]; int j = 0; for (int i = stratingIndex; i <= endingIndex; i++) { retValue[j] = inputArray[i]; j++; } return retValue; } Less
↳
Hi, What made you say that "Talking about TDD in a company where tests virtually do not exist is a big no-no"? Did you talk about it in general or did you make your presentation on/about TDD? What do you recommend for future candidates? --prospective candidate Less
↳
Me: So to implement workflow, you need to actually map out the "work flow" ... NO. NO. NO. How do you implement it? Me: Well, you do realize that you have to map out the workflow, right? Have you used the WorkFlow Designer? It leverages Microsoft Visio to map out the "work flow" as a diagram.... Yes, I know that but how do you make it work? Me: Well, once you map the "work flow" then you save it and you have to code C# fragments that you attach to each node in the diagram that performs a specific action. So the actual diagram is key to the workflow implementation, because the rest is just C# fragments.... Ok. ok. ok. Next question. It turns out that he is a Java guy, like 75% of Silicon Valley and as soon as you say C# they "tune out" and do not want to hear more. Less
↳
The point was to highlight the lack of diversity and how unwelcome I felt after being asked to come in for an interview, but if you must know. I include India when I say asian, but maybe some prefer differentiating asian, south asian, etc. Just gets silly. Anyway, interviewer #1 was probably Chinese female from the name. Interviewer #2 was Indian male. Interviewer #2 was definitely Chinese male. As for the people I saw in the cubicles, they were all Indian males from the people I saw conferencing together in cubicles, and the other 2 people interviewing were Indian females. Explicit enough detail for you? I really enjoy walking around the Google campus. VMware is also another GREAT campus. So much diversity in terms of age, race, etc although I know those campuses have a TON of students interning and working temporarily there, so they might not be permanent staff. Less
↳
Are you including Indians as Asian? Were there a lot of Indians? Or mix?