I worked at Amazon for a while. And the only thing I can tell you is that unless someone replies that specifically works in the group you are talking to any specific advice or questions they give you would be mildly useful. Every group has different hiring bars and questions (some groups use the same script for every applicant so they can be ranked next to each other. My group never did this).<p>advice on questions? Coding, algorithmic complexity, and design. You will probably have to write code during the call. Depending on the screener, it could be e-mailed in a couple of hours after the screen.<p>A lot screeners tend to combine coding and algorithmic complexity in one question. They'll give you a question with an obvious quadratic solution and a less obvious linear or logarithmic solution (or even more rare a constant solution).<p>When you are refining your algorithm - talk. Talk about the variables and what'd you name them. Talk about why the nested for loop isn't good. Talk about everything you are thinking of. The whole point of the screen is to get an idea about how you solve problems.<p>If there is a way to solve the problem using a standard library, mention it. You'll be told you can't do it that way, but it is good for a screener to hear that you know how to use a standard library to solve the problem. I used to give points for this even if they missed implementing the algorithm themselves.<p>Language tends not to be a big deal. I would let applicants use Java, C++, C#, JavaScript, etc. Whatever they were most familiar with was OK with me. I'll be honest, my group used to give preference to C++. C++ is a harder language to master than Java. so someone that gives a good C++ answer, usually got the edge over the Java guy. Again this was my group where 90% of the code was already in C++.<p>If you say you know C or C++ and can't see how pointers could be used to solve the coding problem you are given (especially if a string manipulation question), that would be a huge red flag for us.<p>Design questions can run the gamut. I used to ask "design a reservation system for restaurant", "design a parking lot", etc. Simple things that everyone knows. The design would include what objects you have, how they interact, data structures, etc. I'd look for whether you treated classes as data containers or you believed in data + behavior.<p>And finally, don't forget that Amazon is about getting stuff done. That means your solution may be a perl script slicing some data and piping the result through cut, sort, uniq, etc. Don't assume you've got to write a program from scratch to solve every problem.<p>Good luck!