Are you left handed? throw away your mouse! - you mentioned you sit at a computer all day? I used to have shoulder/ neck pain that sounds similar to yours. One of the best things I did was get rid of my mouse and switch to a graphics tablet (I'm a graphic designer so I don't do a lot of typing) -the tablet sits in my lap so I'm not holding my arm up and out all day.
It had gotten to the point where it was all of the time discomfort so I went to a PT - the best thing they did was have me do a stretch using a couple of tennis balls - put two of them in a sock and tie it shut. lie on the floor with the tennis balls under your back right along your spine starting at the small of your back - arms out to the side. Move the tennis balls up your back stretching several times until you've moved the tennis balls up to the base of your neck. If you can do it without it becoming painful you can slowly raise your arms over your head while stretching over the tennis balls too.