That was very fascinating! Thank you!

It seems to me that 士 adds a more masculine tone to the word you are trying to say, while 師 adds a more. . .peaceful meaning to the word.

What I found to be especially interesting was that when I tried to run both terms through google translate it had a very hard time taking the characters that I told it were Japanese and turning them into English. In fact, it couldn't do it. All it gave me was romanji, which was wrong. (At least compared to what you said the romanji was up above). BUT when I translated the kanji from Chinese to English, I got the following:

星占術士: Astrology Warlock
星占術師: Astrology Teacher

I can see how a job could be called two different things depending on how people view a profession (police vs cops). Also, I am aware that Japanese kanji has its roots in Chinese hanji, which would explain why Google had an easier time going from Chinese to English.