Please note that the expected salary is an estimation. Negotiation of salary will be after the final round of interviews.
XiaoFeng is very well versed in C++ syntax and produce both working and high quality code quickly.
XiaoFeng finishes the main question error free quickly. He ran through a test case to uncover a bug in the code which is great. He also analyzes the runtime complexity of the algorithm correctly.
For the follow-up question, XiaoFeng not only was able to think of the brute force solution right away, (Although the time complexity analysis was done incorrectly at first) but was also able to optimize the brute force solution and use a trie to reduce the time complexity in certain conditions. XiaoFeng then proceed to implement the more efficient Trie solution flawlessly.
For the runtime analysis, there was a small mishap but XiaoFeng was able to quickly correct it and come to the right conclusion. I am very impressed by XiaoFeng’s performance today.
Tech Lead, Full Stack
Coding Interview Summary:
Solid communication skill, solid understanding of algorithm and data structures but a bit lacking in efficacy and coding ability for complex problem
Fei quickly went through the first problem. He was able to quickly identify edge cases in the input and argue the time complexity correctly. Fei then spent around 10 minutes coding through the first problem. He was able to identify the error in his code on his own twice and ended up presenting a bug-free and mostly clean (there are some weird uses of global variables and inconsistency between types in the code) solution.
For the follow up question, Fei was able to think of a brute force solution right away. Fei then spend the next 5 minutes or so thinking about what the time complexity is. After a small hint, Fei was able to correctly settle the time complexity of the algorithm. Although Fei was able to quickly identify the problem require backtracking algorithm, Fei was unable to implement a working solution in the given time frame.
Yurenji was able to solve the first question mostly error-free. There was one bug which was not able to find himself. But after my hint, he was able to find the correct solution. The time complexity analysis for the first question was also correct. For the follow-up question, Yurenji was able to convey the brute force solution. Yurenji was able to successfully find the right time complexity for the brute force solution but did not have enough time to code it.
Yurenji desmonstrated good communication skills during the interview. He not only coded the question but also talked about each step and make sure I understood his point of view.
Yurenji’s code is quite clean and Yurenji is fairly familiar with Java syntax.
Web3 Engineer
English is above average.
Showed good leadership e.g. how to resolve conflicts and how to assign tasks of a project to team members.
Plus I asked him how to find resources they get stuck with a project and his solutions make sense to me.
For system design, he did just OK. The design question is about a chat app like WeChat. But I think he doesn't have enough background in that domain and thus didn't perform well. Although he showed some good understanding of different tech stacks like ELK or messages queue, overall his design capability is not that impressive as a senior SDE.
So I think he might be more suitable for a manager role instead.