Every week or so, we’ll talk to an engineer who thinks she’s interested in leaving Microsoft. (We heart Microsoft! They’re a great client! This is reality. Back to the show.)
Leaving usually means wanting to go to a startup or smaller company, and (even) in Seattle, the vast majority of those are based on open source technologies – they’re most often Java, Ruby, or Python shops. But many of those companies don’t have time to train up someone who’s spent her entire career on Microsoft technologies – they look at a resume with nothing but C# and ASP.NET for the last ten years and start to imagine how long it will take that person to be productive, and then they move on. (Companies with primarily Java stacks may be more willing to budge on this.)
So how do you get yourself technically ready to be an attractive candidate?
There are two paths: one obvious, one less so.
Obvious path: start building things. Go spend six months in your I-want-to-leave-so-I-made-some-free time actually building something “real” that runs on an open source stack, in a language that might be interesting (the ones above are good choices, especially Ruby or Python). Make sure the application does something that someone can see. It doesn’t have to be complicated, it doesn’t have to be great – the bar here isn’t “are you an amazing Ruby developer” but “did you take learning a non-Microsoft technology seriously.” That’s part of the secret: if you’re a good developer with solid CS fundamentals, and you’ve made a concerted effort, that makes you a viable candidate.
(This is the first post in a will-really-be-ongoing series called “So You Think You’re Ready to Leave Microsoft.”)