This is the question I don't know myself how to answer.
I wouldn't put john@company.com, at least in complex forms. On the one hand you provide sample data, but on the other hand... for example you'll need to provide a fake phone number, some fake data that is not personal.
I tend to leave inputs empty (while having labels above them!) and only if they have some kind of masks I show the placeholder.
Any hints about how to fill the form I place BELOW the input, so that when user starts typing, they don't disappear.
So looks like I just keep them empty most of the time.
Or, if it's a super simple form (e.g. only email on landing page), I put "Enter your email here". Since it's kind of call to action, like "do this!".
I like to use the details of the company, so if the placeholder is for a a phone number, I'd put the company phone number in as the placeholder.
Same for email etc. It's useful to see how you want the user to style the input, but with 'real' data not a '0000 0000-0000' kind of thing
Example: Email -> "john@company.com" or "enter your email here" or else?