Yes, there would be a SQL Agent job for it. You only need to generate a new snapshot if you need to reinitialise a subscription, e.g. because a new article has been added to a publication, or because of a replication error - they can be difficult to troubleshoot and so sometimes the 'sledgehammer' approach is to generate a new snapshot (via reinitialising a subscription). Of course, if your publication is huge, it's going to take a long time to generate the snapshot and push it to the distributor and the subscriber so you may want to be a little more surgical in that case.
There's no harm in scheduling a snapshot agent to run every day because it won't do anything other start up and shut down if it determines that no subscriptions need to be reinitialised.
It might be worth your while grabbing a book on SQL Server replication or at least look it up in BOL or find resources on the web.
EDIT: spelling mistakes