I saw 达人 on the title of the following Tawianese video https://www.youtube.com/watch?v=Eru3weFzRnI (very amuzing!) and some other places, and got confused since I already knew 专家 . On the title it refers to an "expert at throwing business cards" (you've got to see it to understand).
专家 is the formal word for 'expert'.
达人 (literally 'achieved person') is first borrowed by Taiwanese from Japanese in no more than 30 years ago and gradually become known to mainland China. Some say the Japanese usage was derived from ancient Chinese, but I don't know if there is a definitive etymology for that. Anyways, it is not a formal word in Chinese (yet) and mostly used in entertainment topics.
专家 is more of a scientifically explainable expert, while 达人 is a person often with natural born talent who takes things to a philosophical level. E.g. if it comes to an expert in things like chemistry I would use 专家; on the other hand, someone who is an expert in picking up girls, he is a 达人.