Category: Uncategorized

On Amazon cultures and practices

I joined AWS a while back, as an engineering manager. I had the wonderful opportunities to learn from Amazon unique cultures and wanted to write something about it. Here is my first attempt to share a bit of Amazon culture, came right out of my onboarding.

  1. Customer Obsession

Every company on earth will say that.

Everyone will say: customer is at the center of everything we do.

But Amazon stands out by being embedding this leadership principle into every day works: want to make a product proposal? Write an PRFAQ, like a press release, describe how customer would use and benefit from this product when it’s release.

On another aspect, I remembered this scenario during my manager onboarding :

“If an AWS customer accidentally incurred a $16,700 bill, how much the customer can claim back?

a) 50%
b) 65%
c) 80%
d) 100%”

This is a real-life example.  Ans: You got the right answer, didn’t you? It’s d) – 100% !

  1. Dive Deep

Amazonians circulate this serious joke: “In God we trust, everyone else bring data”. Not that we don’t trust each other, but we value the factual facts as much as believes.

One outstanding example is COE (Correct of Error) review: we listed detail timeline, action we took, impact we observed and ask ourselves 5-Whys, peeling layer of the onion until we can find root cause.  More often than not, the root cause and the best solution is not trivial, but the effort worth it.

Here is one example on the importance of asking 5-whys:

Problem: One of the monuments in Washington D.C. is deteriorating.

Why #1 – Why is the monument deteriorating?  

    • Because harsh chemicals are frequently used to clean the monument.

Why #2 – Why are harsh chemicals needed?

    • To clean off the large number of bird droppings on the monument.

Why #3 – Why are there a large number of bird droppings on the monument?

    • Because the large population of spiders in and around the monument are a food source to the local birds

Why #4 – Why is there a large population of spiders in and around the monument?

    • Because vast swarms of insects, on which the spiders feed, are drawn to the monument at dusk.

Why #5 – Why are swarms of insects drawn to the monument at dusk?

    • Because the lighting of the monument in the evening attracts the local insects.

So the best solution actually is:  Change how the monument is illuminated in the evening to prevent attraction of swarming insects.

3. Perculiarity 

Yes, you read it right. Amazon values perculiarity – doing thing in a different way, sometime, strange way. Amazonians are proud to be different and doing things in unique way.

Ever go to large meeting and nodding off? Amazonian fix that with a brilliant simple idea: use a spin wheel in meeting, randomly pick one of the audience to participate. Everyone suddenly stays engaged!

Going to a review and not sure what everyone is talking about? Well, Amazonians counter that by spent silent time in the beginning of a meeting, to read the materials.

These are indeed perculiar practices. And they works, beautifully !

That’s a wrap for now. I’ll love to share more cultural practices, as I learn more from my journey.



[1] LP = Leadership Principles. They appear in almost all everyday conversations.

[2] PRFAQ = Press Release FAQ – a document to write before building any product or service, describing how we would talk about it when it is released: how it will benefit customers, what customers will be interested in.

[3] COE = Correction of Errors – a detailed, nameless post-mortem with detailed documentation on history, timeline of the event, impacts, root cause, action items and proposal.

Interviewing tips for interviewers

As a manager, one of the most important tasks is to hire the right talent for the team.

Well, it might be the most important one.

Yet almost everyone dreads interviewing.

How can we avoid asking the type of “tell me about yourself” question out of habit? Or how we can get to the real point instead of asking “tell me about a time you struggle”?

Well, after having two coaches, being mentored by 4 industry veterans, 15 years in this industry, conducting over 110 interviews, I had a few tips for effective interviewing to share.

Technical screening round

The goal of the screening interview round is to ensure we have the right candidate when it comes to onsite interview rounds. The screening interviewer should filter out unqualified candidates as soon as possible. Your time is valuable, and so is everyone on your team.

With that, here are things you should do:

  • Do the homework:
    • Research candidate before the interview: use your 360-degree lens, dig in LinkedIn, scan the CV to find patterns: is she a fast learner? Is she pushing her out of her comfort zone? Was she a team player or a solo? See if she can show her potential to grow in this position. Don’t ask superficial questions such as “tell me about yourself”.
  • Go hard on the technical side with a nice tone:
    • Don’t settle on easy questions. It won’t help. Remember: “A player attracts A player, B player attracts B, C, and even F player”.
    • Push the candidate until she said, “I don’t know”. Great people know their limits, they don’t try to show that they know everything. You need to push to see what her boundaries are to set her up for success if you hire her.
    • Don’t stop at the first solution:  A solid candidate always tries to improve, even if she found a solution. She would find a working solution, lean on that, improve for certain dimensions. Need to trade memory for speed? Or readability over coding speed? Ask the candidate if the algorithm can be further optimized in terms of time & memory usage? Will that work with +100 million items, or with just 1MB of RAM?
    • Provide assistance and support when the candidate is stuck. Give reasonable hints, coachable talents pick up hints very fast.
  • Be open-minded and look for room for improvements
    • A phone interview is not easy for both sides, if the candidate has trouble understanding, offer help. The goal of the screening interview is to measure candidate problem-solving and communication skills.
  • Make it an open conversation: 
    • The interview doesn’t have to be one-way, and ideally, it should be like an intellectual conversation so give open suggestions, listen and give feedback appropriately.  Don’t impose your opinions and knowledge on the answer: if the candidate chooses Python even though we code in .NET / JavaScript, that’s fine. As long as she demonstrates solid data structure and algorithm expertise, the choice of language and style differences can be ignored.
  • How to start a Problem Solving challenge:
    • Start by asking what’s the general algorithm? Does it “sound” like a solution, is it working?
    • Start to draft an optimal algorithm then proceed to implement

Onsite interview round

Firstly, the onsite round is to ensure the candidate will be a good culture fit, with solid communication skills. Secondly, it is to have a broader assessment of the technical skills. It is also about presenting our team, our culture, our people. It is to find a colleague that we’d love to work with on a daily basis.

Onsite interviewing is a chance to leave good impressions on the candidate so that even if she won’t get the job, she will be an ambassador for us. Remember interviewing works both ways: candidates evaluate interviewers at the same time so find your way to create an uplifting experience.

  • Sync up beforehand:
    • Discuss with the hiring committee the type of questions and topics which each interviewer will cover.
    • Try not to have multiple interviewers interviewing on the same topic – unless it is critical for the job. Your hiring committee should be representative so that each person can probe the candidate on a dimension.
  • Ask open-ended questions: 
    • Ask a problem that has multiple solutions so that we can see how the candidate handles ambiguity and unknowns.
    • Aim for the problem that the candidate never solved before but can be solved with additional data and help.
  • Separate well-practiced answers from real ones:
    • 5-whys: keep asking why. A great answer is one that can go deep through multiple layers of that onion.  Sometimes, great people will throw their hands in the air and say “I don’t know why”, but by then you would have enough data to consider.
  • Share feedback as soon as possible: 
    • Ideally, once the hiring committee finishes interviewing, everyone should meet and provide feedback when the memory is still fresh. Every hour passing by, the quality of the feedback degrades.
    • The trick to avoiding herd mentality is to have everyone put down their vote before they meet: it’s either Yes or No – do not accept Maybe! If one needs to switch the vote, there must be really strong reasons.
  • Be professional, move quick
    • In case the hiring committee cannot meet soon, keep the candidate posted about when she can expect the output. If the team can meet and agree this is the right talent, make a case with your decision-makers.

Well, thank you for reading this far.

This post is by no means a complete list, it rather serves as a starting point and hopes it spark your interest in interviewing. And the Aha! feeling when you find that great talent? It’s totally worth it!

Have other opinions? I’d love to hear from you in the comment section.