There is no real rhyme or reason to it most of the time, at least not enough to have some global "pattern" of hiring timelines. Think about it: groups' need to hire can be driven by any number of things (retirement, illness, death, expansion of practice, change in "lifestyle needs", etc). Most of these things do not happen on any sort of repeatable or predictable schedule. Obviously, if there is an expected hiring need with enough notice, groups take into account how early they have to start recruiting to get "cream of the crop" residents. In my neck of the woods, that's usually about 12-18 months out (Jan-July of CA-2 year). Our group, for example, tends to interview people whenever we get interest from an applicant, regardless of whether we anticipate an actual need. Stuff happens, and it's always good to have a few good applicants in the can if you lose somebody suddenly or decide to take on a new clinical site. Occasionally we interview someone who is so good, that we hire them in the absence of actual need (though this is a pretty rare situation, especially for smaller groups because extra bodies on the payroll when you don't "need" them lowers everybody's bottom line).
My advice for job hunting is to start in early-to-mid CA-2 year, whether you plan on a fellowship or not. You may find a killer job that needs you right after you graduate and decide to forego fellowship. It's all about timing, and timing can be about dumb luck sometimes.