So I decided to give the HackerRank test a go for Amazon... Yeah... Went as well as I thought it would... Didn't manage to get working code for either question and with 15mins to go just decided I'd had enough and closed the test
So I decided to give the HackerRank test a go for Amazon... Yeah... Went as well as I thought it would... Didn't manage to get working code for either question and with 15mins to go just decided I'd had enough and closed the test
@paddedskew If you haven't practiced HackerRank/Leetcode style problems, but want to pass those sorts of tests, I recommend practicing that style of problem - with a time constraint ideally. I hate "grind leetcode" as advice, but some of it is practicing identifying what a problem wants and coming up with an algorithm and implementing it quickly, which is definitely different from most actual dev work.
And the "grinding" comes up if you really struggle with the limited time problem solving and implementation, because then it's almost rote memorization of different common coding tasks and approaches.
Live coding tests are in a way worse because then you ALSO have to be able to explain your thinking process as you go, and still come up with a solution, but at least there sometimes working code isn't as important.
@BassJackal I've practiced sooooo many problems like it, but they always seem to pull up something that just stumps me and leaves me bewildered.
Even the 1st question today, I just didn't have a clue where to even begin with implementing a solution. Like I can understand what they want, but converting that to actual code just didn't happen. idk, maybe it's the way it was written, maybe it's knowing I'm against the clock... or maybe I'm just really not cutout to do programming
@paddedskew If you're understanding what they want, but translating that to code is the challenge, you might want to practice the skill of breaking a task into smaller sub-tasks. And then thinking in terms of 'what's the input to this subtask, what will the output be, and how will the next one use it'
From there, you can focus on implementing one subtask at a time - might be a shorter function, loop, or even just a few lines of code - and then "gluing" the subtasks together is just a matter of feeding one output to the next input.
Also better to get an 80% that doesn't cover every corner case than it is to have something totally unusable.
@BassJackal That is my normal process tbh. But today their first question, absolutely blind sided me, with even seeing where to begin.
The second question I actually got mostly working, but it failed the tests as my code was too inefficient!
I do have screenshots of the questions, but probably shouldn't post them on here!