Generally pleasant culture. Good commuting options. Above-average compensation.
MSFT is quite large, and my comments apply solely to the Windows Device Group (COSINE, or whatever it's called now).
Microsoft uses an internal build system that's atrocious. It's worse than msbuild, which they don't use. It breaks all the compelling features of Visual Studio (IntelliSense, etc.). Build times are incredibly long and really slow down your work. It's 2019. This isn't acceptable.
Git practices and VSTS leave a lot to be desired.
Fragmented telemetry systems. Different teams use different components. So many different dashboards need to be written. Unfortunately, the PMs can't write code, so you'll be doing that.
The meetings... so damn many. And nothing useful comes from them.
Modernize tools and processes. Seriously, they're death by a thousand cuts.
I was contacted by the hiring manager after seeing my resume, which was submitted for a different opening. I had a phone screen with a principal engineer on the same project. No coding questions were asked, but we had a great conversation about netwo
I applied online for a data scientist position. I was contacted about two weeks later for a senior software engineer position instead. The interviewer was quite pleasant and helpful, and gently corrected me when I made minor mistakes.
The coding interview was easy, but the system design interview was difficult and requires detailed knowledge of cloud and distributed systems. For the coding interview, they asked about cherry pickup in both directions and how to find the optimal nu
I was contacted by the hiring manager after seeing my resume, which was submitted for a different opening. I had a phone screen with a principal engineer on the same project. No coding questions were asked, but we had a great conversation about netwo
I applied online for a data scientist position. I was contacted about two weeks later for a senior software engineer position instead. The interviewer was quite pleasant and helpful, and gently corrected me when I made minor mistakes.
The coding interview was easy, but the system design interview was difficult and requires detailed knowledge of cloud and distributed systems. For the coding interview, they asked about cherry pickup in both directions and how to find the optimal nu