The only way to store/work with timestamps is as epoch milliseconds. Recently dealt with a problem where another dev created a db but timestamps are without timezones.
Consistently using epoch milliseconds seems to be a no-brainer to me. After all, it's just data and can be converted to local times easier this way, calculations are trivial, no format differences to worry about. Now when the data is presented to a user, it can easily be represented in whatever format is needed.
I wrote an SDK for our customers to use our product and took this approach. Our customers are all over the world in several timezones, and this was the easiest way to ensure that timestamps are unambiguous.
What does everyone think?