When we first made our concrete roof, we covered it with a fabric mesh and waterproofing paint that is supposed to protect the concrete for 5 years. That was 8 years ago. So, we figured it was high time we put another couple of coats on the roof, and that's what I've been doing while Abe was digging hundreds of holes for trees.
Instead of using the mesh again, we used a waterproofing paint with added fiber, applied with a big broom-like brush. I did two coats, each painted on in a different direction from the other (the first coat had brushstrokes going up and down, the second with the brushstrokes at a 45 degree angle from the first). The trick (aside from being on a bright, white roof in the blazing sun!) was in the shingling. You start each coat at the bottom of the roof and work your way up to the top. That means that the top part is painted on top of the layer below, just like shingles. Now, this wouldn't be a problem with a normal roof, but ours is a little complex. There are several levels of roof that all flow down to the same gutter downspouts. It meant I had to position strategic ladders before starting to be able to get down from places other than the main access point.