I just had a short interview the other day with 2 folks. Screensharing, we went through the first 'problem'. They gave me some SQL tables with dummy data, and asked for some data/queries.
"How would you get X?" "How would you get all X who are not retired?" etc
After 3 questions, the guy stopped and said "no one has ever gotten this far this quickly before - I don't have any other prepared questions right now. Let's try one more..."
That one took another 10 minutes - I sort of 'knew' it but... doing 'live' pairing being on display adds a bit of nerves, and... I just need to hammer through multiple trials. Felt awkward, but got there after a bit of time.
Then... person 2. "Leetcode" exercise... I reviewed it again a bit later, and one of the things that tripped me up is that the description and the expected 'sample in/out' answers were in conflict. At best, the description was ambiguous, but to my reading was in contradiction to one of the expected answers.
I struggled 20 minutes in front of them... and we were out of time. The question was (to my reading) relatively abstract and doesn't map to any of the sorts of problems I've tackled over the past 20 years in development.
They thanked me and closed the interview. I wrestled with the leetcode for another 30 min or so later that evening and 'got it', but... annoying.
I reply with this partially to say "you may never get better at the leetcode stuff" but don't let that get you too down. :)
Not sure if this is how the toptal screening works, but a lot of hiring interviews will contain somewhat vague questions on purpose because they want to see how (or if!) candidates will ask questions to hone in on the real problem.
Last I interacted with toptal, the 'leetcode-style' UI was 'work on your own' as a filtering mechanism. I hit similar problems before, where the problem itself was - to my reading - ambiguous and confusing. And you just had a 30 minute timer ticking away - no way to ask a question of anyone at all.
In the example above, I was, indeed, talking out loud to someone and we had some clarification and discussion, but it was still more contrived (imo). Working with the first person with real SQL and a set of real life tasks (write a query for a report to give number of active employees in each area, etc) was far more straightforward vs "find non-repeating chars in a string". I can do the second one, but I wouldn't work by starting off fresh pairing with someone. I would start off a problem on my own, document/test/trial things, then if/when I needed to pair, I'd be able to walk through things in a more measured process. Give me 10-15 min on my own to digest the problem first before I talk to someone.
Even writing this, I can hear people say "but that's how the real world works! You have to jump in to unknown problems immediately pairing with someone, and just ... ask away for clarification..." But even then... it's not how I work well in contrived online tests. In a business setting, the team is likely all 'new' to at least some of the problem. In the 'exam' setting, I'm still 'pairing' with someone who knows it all, and the 'hrm...' and 'do you need help?' interjections every few keystrokes is just not conducive to real work (for me), nor is it how I would ever work in real life.
I did one interview with them with flying colours, 3 puzzles with 100% score, I had one employee contact me before I was done with the whole process to tell me they had a client that needed my exact set of skills, so interviewed with them as well, and passed.
But during the last technical call I couldn't finish one out of two puzzles in time because I initially went for a sub-optimal strategy, so I got told to practice leetcode and apply later.
With 16 years of professional experience, I shall do better with my time than getting good at solving timed Fizzbuzz-type puzzles.
You can set your hourly rate as part of your profile. That's what you get paid, they add something to cover their costs when your profile is sent to the client.
To change your rates, you have to go to their support group and ask for the change. I'm not sure how hard it is to change I haven't needed to change it yet.
"How would you get X?" "How would you get all X who are not retired?" etc
After 3 questions, the guy stopped and said "no one has ever gotten this far this quickly before - I don't have any other prepared questions right now. Let's try one more..."
That one took another 10 minutes - I sort of 'knew' it but... doing 'live' pairing being on display adds a bit of nerves, and... I just need to hammer through multiple trials. Felt awkward, but got there after a bit of time.
Then... person 2. "Leetcode" exercise... I reviewed it again a bit later, and one of the things that tripped me up is that the description and the expected 'sample in/out' answers were in conflict. At best, the description was ambiguous, but to my reading was in contradiction to one of the expected answers.
I struggled 20 minutes in front of them... and we were out of time. The question was (to my reading) relatively abstract and doesn't map to any of the sorts of problems I've tackled over the past 20 years in development.
They thanked me and closed the interview. I wrestled with the leetcode for another 30 min or so later that evening and 'got it', but... annoying.
I reply with this partially to say "you may never get better at the leetcode stuff" but don't let that get you too down. :)