Senior software developer Interview Questions in United States | Glassdoor

# Senior software developer Interview Questions in United States

11,594

senior software developer interview questions shared by candidates

## Top Interview Questions

Sort: RelevancePopular Date

Jul 18, 2010
 Write some pseudo code to raise a number to a power.11 Answerspretty trivial...int raise(num, power){ if(power==0) return 1; if(power==1) return num; return(raise(num, power-1)*num); }double Power(int x, int y) { double ret = 1; double power = x; while (y > 0) { if (y & 1) { ret *= power; } power *= power; y >>= 1; } return ret; }Show More ResponsesIn Ruby: def power(base, power) product = 1 power.times do product *= base end product end puts "2^10 = 1024 = #{power(2,10)}" puts "2^0 = 1 = #{power(2,0)}" puts "2^1 = 2 = #{power(2,1)}"If I were an interviewer, I would ask the Aug 29, 2010 poster why he used bitwise operators, and whether he would deploy that code in a production environment, or if he merely wanted to demonstrate, for purposes of the interview, that he understands bitwise operations.Because it uses dynamic programming and is lots more efficient than your algorithm.If the power is not integer, use ln and Taylor seriesIf I'm the interviewer, none of above answers is acceptable. What if y < 0? what if y < 0 and x == 0? I'm seeing an endless recursion that will eventually overflow the stack, and the none-recursive one just simply returns 1.There is a way to do this in a logN way rather than N. function power(x, n) { if n == 1 return x; // Even numbers else if (n%2 == 0) return square( power (x, n/2)); // Odd numbers else return power(x, n-1); } This is from Programming pearls.. interesting way.small mistake function power(x, n) { if n == 1 return x; // Even numbers else if (n%2 == 0) return square( power (x, n/2)); // Odd numbers else return power(x, n-1) * x; }# Solution for x ^ n with negative values of n as well. def square(x): return x * x def power(x, n): if x in (0, 1): return x if n == 0: return 1 if n < 0: x = 1.0 / x n = abs(n) # Even number if n % 2 == 0: return square(power(x, n/2)) # Odd number else: return x * power(x, n - 1) print ("0 ^ 0 = " + str(power(0, 0))) print ("0 ^ 1 = " + str(power(0, 1))) print ("10 ^ 0 = " + str(power(10, 0))) print ("2 ^ 2 = " + str(power(2, 2))) print ("2 ^ 3 = " + str(power(2, 3))) print ("3 ^ 3 = " + str(power(3, 3))) print ("2 ^ 8 = " + str(power(2, 8))) print ("2 ^ -1 = " + str(power(2, -1))) print ("2 ^ -2 = " + str(power(2, -2))) print ("2 ^ -8 = " + str(power(2, -8)))

Sep 6, 2010

Mar 19, 2009
 What sort would you use if you required tight max time bounds and wanted highly regular performance.6 AnswersVector sort.Guaranteed to be O(n log n) performance. No better, no worse.That is so say, a "Balanced Tree Sort" is guaranteed to be O(n log n) always.Show More ResponsesMerge sort and heapsort are always guaranteed to be n*log(n). Quicksort is usually faster on the average but can be as bad as O(n^2), although with very low probability. Heapsort also does it sorting in-place, without needing an extra buffer, like mergesort. Lastly, heapsort is much easier to implement and understand than balancing trees mentioned by earlier posts.for something like this you generally want bubble sort or insertion sort. It's not about being fast it's about being consistent. Make it do exactly the same thing every time.Use a sorting network. There's some precomputation time, but runtime will be very consistent (the only variability is branch prediction performance)

### Senior Java Developer at Contextweb was asked...

Nov 17, 2010
 How would you scale access to a system like Twitter3 AnswersThere's probably no real correct answer, though the solutions go from common to esoteric in a pretty normal progression: caching, shared-cache like memcache, optimize usage, prefetch, then get creative. This is more about testing reasoning and how far you'll go to solve a problem.I was thinking geographically distributed servers.Cf

Apr 22, 2016
 For the years 1901 to 2000, count the total number of Sundays that fell on the first of a month.3 AnswersTwo lines of code in matlab: Answer is 171 sundays fall on the first day of the month from 1 Jan 1901 to 31 Dec 2000 dt = datenum(1901,1,1):datenum(2001,1,1)-1; sum(day(dt(weekday(dt) == 1)) == 1)import datetime c = 0 for y in range(1901,2001): for m in range(1,13): d = datetime.datetime(y,m,1) if d.weekday() == 6: c += 1 print('Number of Sundays: ',c)import datetime count=0 for i in range(1901,2001): for j in range(1, 13): if datetime.date(i,j,1).weekday() == 6: count+=1 print(count)

Apr 22, 2016
 Write a function to return the nth fibonacci number. The first two can be assumed to be 1 and 1. The third and fourth are then calculated to be 2 and 3.3 AnswersThe matlab example sets N = 12 (the 12th fab. number) which happens to be 144. N = 12; f = ones(N,1); for i = 3:N; f(i) = f(i-1) + f(i-2); end; f(end)fib = {1:1, 2:1} def calc_fib(n): if n in fib.keys(): return fib[n] else: fib[n]=calc_fib(n-1)+calc_fib(n-2) return fib[n] print(calc_fib(9))remember how to approximate as N is large

### Senior Web Developer at UnitedHealth Group was asked...

Feb 5, 2012
 How would you troubleshoot slow loading web pages and poorly performing stored procedures?2 AnswersThis is a very good question to ask anyone who is interested in web development. it gets them thinking and start working on problem solving.Obviously, it is an easy answer though. First you want to check the network connection. If that seems to be working fine with other websites, check the code of the website. If the code is too cluttered then it will have problems loading. Make sure to organize the HTML so you can easily find clutter or useless text. Next, use a website validator - http://validator.w3.org/ . This website helps you find any errors on your page that may be causing a slow down. Hope this helps any, I use this for any problem I have.

### Senior Full Stack Developer at Trulia was asked...

Aug 4, 2014
 How would you build a BART train system.2 AnswersVarious infrastructure, logic, and fail safe issues. Caching, redundancy, customer experience handling in case of failures.I would identify and address all of the various infrastructure, logic, and fail safe issues as well as design systems to handle caching, redundancy, and customer experience handling in case of failures.