Practicing is _very_ helpful. pramp.com is good for getting over the nerves and practicing the (approximate) format. For the actual problems, there's a lot of resources out there. Cracking the Coding Interview is not a bad place to start. If you really want to get good, do competitive programming. Read Laaksonen's Competitive Programming book, practice on cses.fi/problemset , codeforces.com , hackerrank.com , codechef.com , etc. If you have the time, study CLRS Introduction to Algorithms.<p>(not affiliated with any, just resources I enjoyed and found useful)