1. A computer-implemented job scheduling system, comprising: at least one computer executing a job tracking component associated with a shared electronic notebook for creating and maintaining tracking information for jobs processed against shared notebook information, the shared electronic notebook comprising a root directory containing a collection of files and directories, wherein notebook sections are mapped to the files, wherein notebook folders are mapped to the directories, wherein the tracking information is stored as a job file in the root directory of the shared electronic notebook, and wherein the tracking information comprises properties related to a change by a user made to at least a portion of a file in the shared electronic notebook; and at least one computer executing a scheduling component for synchronizing a plurality of job files stored in the root directory of the shared electronic notebook against the shared notebook information based on the tracking information, the scheduling component configured to retrieve a copy of any earlier job files, determine a time of a last run job file from the any earlier job files, wait for the time of the last run job file to exceed a predefined limit to ensure a time for an atomic lock on the last run job file has expired, attempt to take an atomic lock on a current job file in the root directory of the shared electronic notebook in response to determining that the time of the last run job file exceeds the predefined limit, and in response to taking the atomic lock, synchronize the current job file to the shared notebook information.