Amazon Interview Question for Software Engineer / Developers






Comment hidden because of low score. Click to expand.
1
of 1 vote

If they say design is good, half of the battle is done. Now the problem might be with
1. The algorithm(S)implemented
2. The DB queries (May not have been tuned)
3. Huge DB. When the testing is done initially with little data, the performance problem might not have been found--
4. The HW/Network
5. General DB problems
6. And finally as a QA person never believe what the dev says.
So the design may be faulty :-)

- Krish April 14, 2007 | Flag Reply
Comment hidden because of low score. Click to expand.
1
of 1 vote

You might also want to mention about using a profiler to find out where the bottlenecks are.

- Anonymous March 17, 2008 | Flag Reply
Comment hidden because of low score. Click to expand.
1
of 1 vote

Adding a few things to what krish said:

1). With databases see if there is high swapping activity. Ideally there should be now swapping activity. Check the state of indexes, temporary table space activity etc .

2). A system typically executes 20% of the code 80% of the time ( some say the ratio is 10/90) Then you need to profile the execution of your process and optimize the most used sections of the code.

3) Check logs including information messages to get hints for a possible delays in certain parts of programs.

If you don't understand these don't say it or the interviewer will know you have superficial knowledge.

- punjabi September 21, 2008 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

I was asked a similar question recently in another interview. I had not worked on performance improvements before, So I talked about memory usage/shortage, database connections etc. The interviewers did not even bother to comment or lead me to anything better. I would appreciate some pointers.

- G August 01, 2006 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

0.5hr sounds about right. This question is actually a realistic question...

In addition to mem usage/shortage, find memory leaks. Count the running time of an algorithm and compare it to what you'd expect.

- Jack August 01, 2006 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

Yes, it is possible that the 'infrastructure' makes the performance suffer. But there are usually ways to optimize in this case.

Yes, it makes sense to 'count the running time of an algorithm and compare it to what you'd expect'. Then it is possible that something not expected in the design happens.

Usually, we will also try to see where is the bottleneck of the system when the performance is not good. But it is really not an easy task to isolate the bottleneck.

- ultraviolet February 06, 2007 | Flag Reply


Add a Comment
Name:

Writing Code? Surround your code with {{{ and }}} to preserve whitespace.

Books

is a comprehensive book on getting a job at a top tech company, while focuses on dev interviews and does this for PMs.

Learn More

Videos

CareerCup's interview videos give you a real-life look at technical interviews. In these unscripted videos, watch how other candidates handle tough questions and how the interviewer thinks about their performance.

Learn More

Resume Review

Most engineers make critical mistakes on their resumes -- we can fix your resume with our custom resume review service. And, we use fellow engineers as our resume reviewers, so you can be sure that we "get" what you're saying.

Learn More

Mock Interviews

Our Mock Interviews will be conducted "in character" just like a real interview, and can focus on whatever topics you want. All our interviewers have worked for Microsoft, Google or Amazon, you know you'll get a true-to-life experience.

Learn More