It's like in English, where we would say "Get that for me," which has an implied (You) at the beginning [i.e. (You) Get that for me.]
In this case, there is an implied (Mensch) in the sentence. "Jeder (Mensch) ..." [meaning 'every person"] and Mensch is a masculine noun, thus it's Jeder.
Im learning myself so this may not be entirely accurate, but this is how I understand it to be.
man, i keep getting confused. Braucht sounds just like brought to me and i keep getting it backward. x_x
Depends on number, gender, and case. Jeder is for masculine nominative while jede is feminine/plural.
Of course, there is actually no reason why the singulars and plurals here should work the same way in German as they do in English . . . but they do happen to.
"Everyone" is singular. Yes, really! I know the word refers to a lot of people, but the singular verb ending is always used after "everyone." You say, "Everyone here owns a car." NOT "Everyone here own cars." I think the reason why is that "everyone" is a compound of "every" and "one," and "one" is singular.
"All" is plural. You could say, "All own cars."
"Jeder" is singular. (And aside from meaning "everyone," "jeder" can also mean "each" or "each one.")
"Alle" is plural. (And it can be translated both "everyone" and "all.")