My experience in software engineering (at least in Silicon Valley) is that a masters degree is usually treated as equivalent to 2-5 years of industry experience, and as such, it can be useful for breaking in to the field when things are tilted toward the employers' side. That's exactly the opposite of the current case (again, at least here in SV), in which there's massive competition for good engineers, and companies are much more willing to invest in career development of junior engineers and new college grads. In fact, the optimal route at the moment seems to be to do an internship or three while working on your undergraduate degree, and assuming you do well in those, you're like to have one or more job offers the moment you graduate.
Of course, internships + college take time, and the economy can shift over a period of two or three years (as happened going in to the Great Recession of 2008, as well as coming back out of it). But having relevant industry experience before you graduate is never a bad thing, and if it happens that the economy sours again before you graduate (which seems very unlikely at the moment), you always have the option to take the masters route and defer your job-hunt until after that.
PhDs are pretty rare in software engineering, and having one can be seen as a negative ("too specialized," "too theoretically focused") as often as a positive. (I have one, but it's not in engineering, and other than helping me get my first job in corporate research in the mid-1990s, I don't think it's had much effect on my engineering career.)
But software engineering is a bit different from other types of engineering, so be careful when extrapolating to other areas. A field like chemical engineering is likely to place much more emphasis on advanced degrees.
Greg recommends the following next steps:
- Investigate college internships in the engineering field(s) you find most interesting.