Software application engineer Interview Questions | Glassdoor

# Software application engineer Interview Questions

1,586

software application engineer interview questions shared by candidates

## Top Interview Questions

Sort: RelevancePopular Date

Jan 23, 2011
 What reporting tools have you used? Actuate, Brio, Crystal Reports? How much experience have you had in scheduling jobs on Unix? Can you write XML and implement it?1 AnswerThe interviewer was interested in breath of experience rather than specific technical skill. Unix work with scheduling and XML skills are necessary, but not heavy (the same procedures are done over and over again). Emphasis was on selling yourself through experience.

Feb 26, 2016

### Senior Applications Developer at Deutsche Bank was asked...

Feb 14, 2011
 We have a pond containing a single bacterium. The number of bacteria double every 5 minutes, and the pond is full of them in 24 hours. If we started with the same pond but two bacteria, how long will it take to fill the pond?4 AnswersI struggled with this a bit and got close. I believe answer is: 23:55This is a clear case of Geometric progression. Find the nth term Tn1 = a*r^(n-1). where n = (24 * 60)/5,a = 1 and r=2. when the initial value (a) = 2, the values become n = ?, a = 2 and r = 2. Since Tn1 = Tn2, Equate the RHS of both the equation. Since the base are equal, equate the powers, doing so will give the n value. When n is convert into minutes one get 23 hrs 55 minutes.this is easy, you don't need all the math. The pond was half full five minutes before, so it's 23:55Show More ResponsesThe first pond started with 1 bacterium and doubled to 2 in five minutes. Therefore, the second pond will take 5 minutes less than the first to be full. ie: 23:55

### Senior Applications Developer at Deutsche Bank was asked...

Feb 14, 2011
 There are 10 stacks of 10 coins each. 9 of the stacks contain coins that weigh 1g each. The other stack contains coins of 2g each. The coins look the same. We have a scale that we can get a measurement of grams from, not a balance. We can use the scale exactly once to weigh anything here from a single coin to all of them. How can we determine which stack is the 2g coins?4 AnswersWeigh these together: 10 coins from stack 1, 9 from stack 2, etc ending with 1 from stack 10. The weight of these will tell you which stack has the 2g coins. Ex: if it's 1st stack: 65g, 2nd: 64g, 10th: 54gExcellent question!A more eloquent answer would be: Weigh together 1 coin from stack 1, 2 coins from stack2, 3 coins from stack 3, etc. Subtract 55 from that total weight to get the number of the stack with the 2g coins.Show More ResponsesBinary sort 1. Use single coin (I'd drop my stacks *s*) from each stack. Mark them by stack. 2. Place 5 each on both scales; note lower scale. 3. Place 2 coins on each scale, keep one aside; note scale. 4. If scales are at same level the coin NOT on the scale indicates the stack with heavier coins. Done. 5. If one scale is lower place 1 coin on each scale, note lower, identify stack. Done.

Jul 31, 2012
 Given a single-line text string and a maximum width value, write the function 'string justify(string text, int maxWidth)' that formats the input text using full-justification, i.e., extra spaces on each line are equally distributed between the words; the first word on each line is flushed left and the last word on each line is flushed right.3 AnswersBe sure to handle case where the input text is shorter than a single line.public void justify(String input, int lineLength) { String inputNoSpace = input.replace(" ", ""); int actualLength = inputNoSpace.length(); StringTokenizer stk = new StringTokenizer(input); int tknCount = stk.countTokens(); int emptySpace = lineLength - actualLength; if (emptySpace > tknCount) { int space = emptySpace / (tknCount - 1); System.out.println(tknCount); while (stk.hasMoreElements()) { System.out.print(stk.nextElement()); if (emptySpace / (tknCount - 1) > 0) { for (int i = 0; i < space; i++) { System.out.print(" "); emptySpace--; } } if (emptySpace / (tknCount - 1) == 0) { int remainingSpace=emptySpace; for (int j = 0; j < remainingSpace; j++) { System.out.print(" "); emptySpace--; } } } } }import java.util.StringTokenizer; public class JustifyText { public static String justify(String s, int len) { if(s.length() == len) return s; if(s.length() > len) { System.out.println("length of string is greater than line-justify length"); return s; } int count = 0; StringTokenizer st = new StringTokenizer(s," "); count = st.countTokens() - 1; int totalSpacing = len - s.length() + count; int individualSpacing = totalSpacing/count; int padding = totalSpacing % count; StringBuilder sb = new StringBuilder(); while(st.hasMoreTokens()) { sb.append(st.nextToken()); if(st.hasMoreTokens()) { for(int i = 0; i 0) { sb.append(" "); --padding; } } return sb.toString(); } public static void main(String[] args) { // TODO Auto-generated method stub String test = "Hello this is a test string"; System.out.println(justify(test,40)); System.out.println(justify(test,32)); } }

### Associate Applications Developer at Union Pacific was asked...

Aug 14, 2015
 String manipulation in a language that was described by the test2 AnswersFollowed the layout of the language to perform the basic algorithmVery interested in learning or doing whatever it takes to be an intern with the railroad no matter what what I have always wanted a job there and I'm older now have lots of skills and I am really interested in working for the railroad for the rest of my life

### Senior Applications Developer at UPS was asked...

Nov 28, 2017
 Onsite - 1. You have a computer with seven core cpu, you have a file and you have to read each line of the file, check if it has the word UPS in it, if so , then write it to a file, if there is no word as UPS in it, write that line to a different file. 2. An amount will be given as input. The amount will have some cents in change. So, for example \$29.90. For the change, you have to start using the highest denomination and go to the lowest until the change value is completely met.2 AnswersAnswer for 2) 1 Quarter, 6 dimes, 1 nickelAnswer for 2) 1 Half-Dollar, 1 Quarter, 1 Dime, 1 Nickel

### Applications Developer at Interactive Brokers was asked...

Dec 31, 2017
 Know how hashing works2 Answersyou need to override the "public int hashcode()" function as well as equals.Yeah. It is called as contract of hascode() and equals() method. Do you remember you spoke about hashmap architecture as well?

### Applications Developer III at Sprint was asked...

Nov 22, 2013
 Given a singularly linked list how would you find the middle value in one iteration, regardless if there are an even or odd amount of items in the list? 2 AnswersI would iterate from beginning to the ending i.e, till the next of node is null. I'll maintain a counter simultaneously. As I keep iterating I'll store the values in a list. Once I get the count. I can get the middle element from the list.Or you can use two iterators. One that iterates 2 times and the current one iterates one at a time. If the first iterator reaches the end, the current iterator is pointing at the middle one.

### Internal Applications Software Engineer at Palantir Technologies was asked...

Mar 10, 2015
 We have strings of format A_ _ _ _ _ _ _, an A followed by 6 spaces that can be a number 0-9. We also have regular expressions with the operations "or" and "*" defined as follows:. The easiest way to illustrate this is to give an example. "A000001 or A000000" has size 2 because it matches two strings. "*" represents a wild card, so A00000* has size 10 because it matches 10 different strings, (A000000 - A000009). "A0* or A1*" has size 20,000 because it matches 20,000 different strings. The question was this: Write a function that takes in a number N and outputs a regular expression that matches exactly N strings of format A _ _ _ _ _ _.2 AnswersIf the length of the output string is not restricted, then the easiest solution will be aggregated all N string using 'OR'. For example, N = 1392, then output "A000000 OR A000001 OR A000002 .... OR A001391 OR A001392". Notice that we could have N upto 10^6, so the longest regexp constructed by this method will be in the order of 10^7, i.e. 10MB data. However there's one obvious but significant optimization, that is using '*' to take care of some order of 10. For example, N = 300 could be expressed as "A0000* OR A0001* OR A0002*". By adopting this logic, for any N, we could first break it into order of 10s, then write each of the order in OR form. For example, N = 4213, then we could have "A000* OR A001* OR A002* OR A003* OR A0040* OR A0041* OR A00420* OR A004210 OR A004211 OR A004212". The total terms in the final expression depends on the digit sum of N, for our example it's 4+2+1+3=10. Therefore, the largest regexp will have at most 9*6 = 54 terms, instead of 10^6 terms constructed by the first method.the above is excellent idea!
110 of 1,586 Interview Questions

More