I left Baltimore for Seattle, having left a position that included govt funded research, and with many friends in related positions. The ease of finding, stability, and pay of jobs all seem DRASTICALLY better in Seattle than Baltimore. This is a very subjective comparison, because I was a much more junior dev back then, but even when going for internships/starter jobs, I had far more opportunities in CA/WA/CO than on the east coast (excepting NY, of course). Now, don't take this to mean there isn't a tech job ecosystem, I was able to keep a gainful chain of good employers, but as said, they were by and large much smaller, less stable (not as a pejorative, but when compared to the BigCo's I've worked at since) and paid far less; while each time I switched jobs I felt like I had to _search_ to find the next, whereas in Seattle, I couldn't throw a stone without hitting a mid-to-large tech co. (I'd be lying if I said COL didn't hurt, but the amount one can put away with a good paycheck is _substantial_)
This ended up being a bit of a ramble, but it's one (perhaps relevant) transplant's perception.
they don't state how they do this ranking very explicitly, but it seems to be some combination of number of jobs, median pay, and local cost of living.
there aren't a ton of software jobs within the city, but there are many software companies paying DC salaries within a 30-60 minute commute to the southwest.
the cost of living in baltimore is also quite low, but many of the neighborhoods probably fall short of what your typical SWE would be willing to tolerate.
Being in Washington DC and knowing I can drive to half of those places in 30 mins, I wonder which metropolitan area definition the numbers in the article are using.
Does (NSA, SAIC, Ft Meade, NASA Goddard) really pay that much more than (Lockheed Martin, Raytheon, Northrup Grumman)?
Edit: Adjusted for cost of living, Baltimore > DC makes more sense.