Question: Tell me about a time you were not satisfied with an approach or decision, what did you do to change it?
Answer: I was working on integrating Apache Flink. One team was focusing on the run-time; another one was focusing on the state, and finally, a third team was working on the SQL. I looked through other teams’ code reviews. I’d speak up if something wasn’t done well enough.
Q: Can you give a specific example?
A: The state team chose a state data structure that was not the best – prefix tree vs double-link prefix tree, which would be much more efficient. I conducted performance tests and discussed them with the team. And then I made the pull request. There were some code changes.
Q: What were the code changes?
A: Yes. Inaudible…
Q: What was the outcome?
A: The benchmark tests showed a maximum of 40% improvement and a minimum of 10% improvement.
Q: Did any of the benchmarks perform worse?
A: No, all better.
Competency asserted: Insist on Highest Standards
Job title: Software Development Engineer II (SDE II)
Interviewer role: Software Development Engineer III (SDE III)
It looks like a double-linked prefix tree or (trie) proved more efficient than a single-linked prefix tree for the type of data accesses performed. The candidate talked with the team, wrote performance tests, provided benchmarks and code review. This is a raise-the-bar example of this leadership principle.
On leadership principles, with respect to Insist on Highest Standards, the candidate raised the bar. He identified a more efficient data structure, shows 10 – 40% performance improvement across the board, and all this for another team.
The candidate demonstrated his ability to Insist on the highest standards, but he also influenced another team. As a software engineer, influencing is hard. You are not ranked high in the hierarchy and can’t use your title to leverage your influence. He influenced by asking questions, questioning the status quo, and bringing real data (performance tests) to the table.
Also, notice that the first example the candidate gave was not detailed enough. It was too vague. The interviewer probed with, “Can you give a specific example?”. Save time, directly start with a specific instance that answers the question.