114
How do I pass a coding test?
(lemmy.world)
A loosely moderated place to ask open-ended questions
Search asklemmy ๐
If your post meets the following criteria, it's welcome here!
Looking for support?
Looking for a community?
~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~
What worked best for me was taking notes on some common algorithms and patterns. Dynamic programming is a really common domain of algorithms that you'll find in coding questions, but you'll need to know a bit of everything. Major graphing algorithms like Kruskals and Dijkstra's, BFS/DFS and maybe the Bellman-Ford algorithm etc etc etc.
But most importantly as you take notes on what each of these concepts or algorithms are - write in your own words how to choose them from the list of possible solutions.
Here's a sample of notes I wrote on backtracking algorithms:
The point of all of this is to get it into your head how to choose which algorithm, then you work on the speed with leetcode practice. So my regimen when I was searching for a job was to take an hour a day to study an old concept or learn a new one and then run some leetcode questions. This worked much better than unguided random grinding.
The other issue with coding questions is defining the parameters and other communications skills. That's a bit trickier - but ultimately Programming is a collaborative field. The stereotype of the aloof genius programmer who doesn't talk to anyone is noxious: those kinds of people destroy programming teams. The best programmers are collaborative and have good communication skills. They know when to ask questions and when to interpret ambiguity on their own.
That's the harder part to get if you don't have it (it took me more than a decade) but it makes a massive difference in the results.
Good luck and God speed.
Thanks! Good tips!