> The job current uses schedule(interval) - doesn't that mean that the job is finished and a new one is executed after interval seconds?

AFAIR, that means the *same* Job is re-scheduled.

> We can also use beginRule/endRule in ProjectIndexJob to be specific about when we release the lock on the resources 

Oh, I never used that. I'll check the doc, but looks like a good idea to me!