Do I have to buy the app for each device?
If you do not have iOS8, or you can't use Family Sharing then providing you use the same Apple ID on each device, you do not need to purchase BabyTime again.
If you need to use BabyTime with different Apple ID's and without Family Sharing, then you need to purchase BabyTime for the additional device.