I have a custom timer job that I create an instance of by activating a web application scoped feature in Central Admin. In the farm, the Central Admin box is an application server. What I'm finding is that the timer job is only scheduled to run on the application server, and not on the WFE. I used the "Job History" page in Central Admin to determine this.
Note that I am already setting the LockType to "SPJobLockType.None" in the constructor for my timer job.
var job = new CopyConfigJob(webApp);
The constructor for my custom timer job looks like:
public CopyConfigJob(SPWebApplication webApp) :
base(JobNamePrefix + Guid.NewGuid().ToString(), webApp, null, SPJobLockType.None)
{
Title = JobTitle;
}