Greedy algorithm correctness

I’m trying to solve the following problem:

CEO is checking on it’s employees at a constant times every day (for an example the number of minutes after a shift started> {5, 35, 120..}). Calculate when should employees work, so that every time the CEO checks on them they are working. Their work takes 3 minutes to complete and it increases by another 3 minutes every time they start working again (First time it takes 3 minutes, second time it takes 6 minutes, third time it takes 9 minutes..).

This is my algorithm:

int time = 2 for: every CEOcheckTime in 0 to CEOcheckTime.length     add (CEOcheckTimes-time) to results     time = time + 2 

Ignoring the edge case, where the CEO checks on employees sooner that they can finish the work, is my algorithm correct? Thanks!