It's all about 'requests'. Each application handles requests and each request should get its own scope. If your console application just handles one request (it processes command line arguments, executes some business logic and dies) a singleton scope is fine. If your application lives for a long time and handles many requests (as the use of jobs might be suggesting) it's propably best to see each job (or optionally a group of jobs) as one request.
Within web applications the the request is usually a web request and the scope is usually around one HTTP request. For WCF services the request is one WCF operation and the scope is around that operation. For Windows services there is no such thing as HTTP or WCF operation, and you usually use something called a 'lifetime scope' (a lifetime that you explicitly begin and end).
I don't know what the exact terminology is for Ninject, but you probably need something like a lifetime scope.