Courses are good but not enough. Definately read cracking the coding interview as you wrote and the most important is to solve hundreds of problems on hackerrank, topcoder and similar sites. I think it takes maybe half year to get there, still be prepared to survive for at least a year (optionally move to a country with cheap cost of living). I don't know any tutors as I always prepared alone (and employed by one of these companies)