I applied online. The process took 4 weeks.
The interview process consists of four steps:
From my personal point of view, the first two stages were pretty standard conversations. The only minor red flag was "one of our recent projects took double time compared to what's planned". The take home question is absolutely great, as it allows for a very wide range of solutions of varying scope, edge cases, error handling, networking and existing framework discussions, etc. If needed, that is.
The review was.... brow-raising. There were two engineers from the team. After some intro and small talk, the juicy part started with a remark "I don't consider myself a great programmer, I wrote 10 lines in Python and they worked, so I'm surprised to see that much code and so long readme" and a follow-up "It looks like Java style, which is not surprising with your background".
With poor expectations set this way, I briefly went over the code - which was the simple implementation of MapReduce approach and an illustration of how the file processing can be split into parts. No questions asked.
Next phase was "how would you deploy this to Kubernetes" (after some back and forth and guesses from my side it appears that the correct answer was "with a stateful set, so you have an endpoint to call") and "what is the difference between workflow and activity in Temporal?".
After that, the conversation peaked at "would you use Temporal.io for this kind of processing?" followed by a sharp "no, it has technical limitations which makes it ineffective for large data processing pipelines".
The remaining 5 or 10 minutes were filled with the interviewer trying to explain to me the benefits of durable execution and activity orchestration, and me trying to explain to the interviewer the Temporal limits on the execution history event number, amount of data returned from the activity (mind you, we have actual data processing on Temporal.io and actually faced these limits in production), trying to mention the actual data processing frameworks and services such as Apache Beam and DataFlow and the difference between data pipelines and workflow orchestration.
Overall, it ended with both sides dissatisfied and obvious negative feedback. My impression was the engineers I've met are pretty much in "I have a hammer and everything is a nail" mode and blissfully unaware of real world limitations, edge cases and existing alternatives. This may be happening either due to the simplicity of the work they're doing or sub-par level of engineers. In either case, I wouldn't recommend this specific team for anything other than basic entry level jobs.
A text file contains lines with URL and metric separated by whitespace. Get top X results using this metric. Consider very large files. You're allowed to use language standard library only. (no specific evaluation criteria provided)
The following metrics were computed from 3 interview experiences for the ClickHouse Senior Software Engineer role.
ClickHouse's interview process for their Senior Software Engineer roles is extremely selective, failing the vast majority of engineers.
Candidates reported having very negative feelings for ClickHouse's Senior Software Engineer interview process.