Cook and chef have slightly different connotations. 'Chef' generally speaking has a professional or elevated tone to it, often implying being the head of a team of culinary professionals, and often refers to someone who cooks has their job or someone who is a very dedicated and skilled hobbyist. 'Cook' is anybody who cooks.
Short: No, and neither does Spanish. Despite what some Spanish for English speakers courses claim, it's optional in principle. However, in the worst case putting the definite article might be conceived as rude.
In most European languages (my native German, Spanish, Italian, French, ...) the rules about indefinite articles before occupations aren't as strict as in English, where it is always required. Typically one variant is more common than the other, but not by an order of magnitude. It is possible to convey a slight difference of meaning by using or not using the indefinite article, but this will probably be lost even on most native speakers. In German you are a bit more likely to drop the indefinite article for a menial job or occupation (dock worker, cleaner) and a bit more likely to use it for a profession that really defines the person (doctor, artist, politician). By not following this rule you can give a hint that while you are currently working as a politician, you don't want to be defined by the fact. I expect that it's similar in most other languages, though sometimes the meanings are exactly reversed. Someone specifically claimed something like this for Spanish in this discussion.
Of course there are also situations where the indefinite article is required, e.g. when the sentence contains a further specification. ("Tu sei un cuoco incapace!")
Note: I definitely know that their is false information floating around among teachers of German as a foreign language. I once researched this in connection with Kennedy's "Ich bin ein Berliner"