First of all, I think shit is so common that people don't really think it's extremely vulgar anymore. (For example, the cable TV I subscribe to always censors the F-word, but never shit.) However, it can be offensive. I wouldn't expect to hear shit from a child, nor in a typical business meeting. But of course, there are lots of exceptions. All in all, it would depend on what you mean, when and how you say it, and to whom. The context is important, the way you say it is important, and your audience is very important.
I personally don't let it come out unless I'm sure I'm with people who say it to me first. Typically, I use many of its stand-ins instead. In my opinion, we can do just fine without having to say it at all.
If you feel uncomfortable to say shit, but you want to say something anyway, you can try these:
shoot, crap, damn, dang, drat, rats, damn it, dammit, blast, or hell.
Even just simply saying "What?!" could do the job.
If an exclamation in words still makes you feel uncomfortable, you can try other interjections instead. For example,
Argh! - to express your annoyance, anger, or frustration
Grr - to express anger
Humph - to express dislike, disbelief, or annoyance
Eww - to express disgust
Sheesh - to express exasperation or annoyance.
In addition to being used as an exclamation (to express disgust, anger, or annoyance) alone by itself, shit actually has very wide usages. It's used in so many ways. For example,
as a vague noun (Get your shit together!),
a surprise or an anger (When he sees it, he's gonna shit himself.),
to mean trouble (He's in a deep shit.),
to express displeasure or an indifference attitude (Well, I don't give a shit!),
to express negative attitude (What a piece of shit!),
to express positive attitude (The Oregon Trail is the shit.),
to mean bullshit (Are you shitting me?), or
as an emphasis (Sure as shit I survived them all.).
Good news is you don't have to use it if you don't want to. Most of its uses are considered vulgar. I'm sure as hell you can rephrases its phrases to something else more polite yourself. In other words, you don't have to give it a damn. Oh, shoot! I think talking about it too much has some effects on me. Oh, crap! What the heck I'm talking about. Jeez! Argh!