I used to be … just OK at competitions, never particularly good. I was VERY good at interview-style questions, both puzzle and just “implement this mildly-difficult thing”. I’m less good now, and probably couldn’t finish most competition-style problems.
My personality is fairly focused, and pretty low neuroticism, so I rarely get flustered in the moment (I can be very nervous before and after), so I don’t have any advice on that dimension. In terms of speed, the motto of many precision speed tasks is “slow is smooth, smooth is fast”. When practicing, use a timer and focus on fluidity before perfection. Take your time (but measure) when first practicing a new thing, and only add time limits/goals once the approach is baked into your mind. How quickly can you identify the correct data structures and algorithms you’ll use, without a single line of real code (often a few lines of pseudocode)? How long to implement common algorithms (Heapify, Dijkstra’s, various graph and searching, etc.)? Given a plan and an algorithm you’ve done before, how long to get correct code?
After two weeks of intense practicing of relatively easy coding problems under harsh time constraints, I did get noticeably better. I was given a chance to retake the coding test for the company I was applying to, and got a much better score.
I used to be … just OK at competitions, never particularly good. I was VERY good at interview-style questions, both puzzle and just “implement this mildly-difficult thing”. I’m less good now, and probably couldn’t finish most competition-style problems.
My personality is fairly focused, and pretty low neuroticism, so I rarely get flustered in the moment (I can be very nervous before and after), so I don’t have any advice on that dimension. In terms of speed, the motto of many precision speed tasks is “slow is smooth, smooth is fast”. When practicing, use a timer and focus on fluidity before perfection. Take your time (but measure) when first practicing a new thing, and only add time limits/goals once the approach is baked into your mind. How quickly can you identify the correct data structures and algorithms you’ll use, without a single line of real code (often a few lines of pseudocode)? How long to implement common algorithms (Heapify, Dijkstra’s, various graph and searching, etc.)? Given a plan and an algorithm you’ve done before, how long to get correct code?
After two weeks of intense practicing of relatively easy coding problems under harsh time constraints, I did get noticeably better. I was given a chance to retake the coding test for the company I was applying to, and got a much better score.
Thanks for the encouragement.