33 and new job at Microsoft as Software Engineer

Hello everyone,
I’ve used this site off and on again. I majored in physics and have spent quite some time as a hardware test engineer. I’m back to look at courses on Node.js and Express.js :slight_smile:

I’m more of a “theory” guy (coming from physics), and I’ve taken data structures, computer organization, and algorithms all at the university level. I appreciate that this website works on algorithm practice (you will probably get quizzed on those kind of problems if you are in any of the “tech hubs” like Seattle, San Francisco, or New York). I also used HackerRank and Leetcode quite a bit, and finished a Data Structures and Algorithms course on Coursera. As for projects, I wrote some stuff on a microcontroller, wrote a lot of VBA to automate all kinds of Excel stuff my old company worked on, then worked on this LabVIEW plugin in C++ which did all kinds of advanced math stuff and delved into all kinds of obscure memory management and efficiency questions. I thought here at Microsoft I’d be doing more C++ or C# stuff, but no I am building JavaScript!

I’ve been lurking here on the forums awhile, and I’ve kind of skipped a lot of the projects (though now I think I might revisit them!), but I plan on going back and finishing this whole curriculum eventually. I think it is awesome that people are creating wonderful tools, and I would love to contribute and teach myself as I have time and energy.

Anyway, thanks Quincy and this awesome community. I just love a community that is built on helping itself and others. Good luck to everyone, let me know if you have any specific questions or if you love to discuss algorithms :slight_smile: I love graph theory and C++!

16 Likes

Congratulations @wemiao on landing what many would consider a dream job! I hope as time goes on you will share your experiences and insights as a working professional developer.

Good luck, and Seasons Greetings…

Nice job! Congratulations!

Congrats! I just got a developer job from a Microsoft partner company, and I will be working with JavaScript as well! I’m from a non-CS background and trying to learn more about algorithms. Is the class you took on Coursera the Princeton one?

Congratulations on your new job at Microsoft!

It sounds like you used a wide range of resources. If you have a moment, perhaps you could write short reviews of the LeetCode and HackerRank sections you worked through? Also, which specific course did you take on Coursera for algorithms? Was it Stanford’s course?

Also, I’d be very interested in hearing a bit about the types of questions Microsoft asked. Was it a whiteboard interview, or did they do pairing / take-home assignment?

And if there are any resources you’d recommend for C++, I’m sure a lot of people here would be interested.

2 Likes

I apologize, been busy working and learning all kinds of new stuff! @qzhou1607 @QuincyLarson I recommend the Algorithmic Toolbox from Coursera (UCSD + Higher School of Economics in Russia), that one is language-agnostic so they don’t try to hoist Java or Python onto you (I preferred C++).

Microsoft had 4 interviews, all with SW engineers, ~45 minutes long. There was a 1-hour assessment I don’t want to go into too much detail as I signed an NDA, but it is the usual stuff you might see in a book like Cracking the Coding Interview. They asked several follow-up questions too in order to test your problem solving. I enjoyed it a lot more than my Amazon interview.

I am interested in knowing about C++ courses as well. I am part of my local NWCPP meetup, where we are discussing new ways to reach out to the community. I wish I had a good answer to that. For myself, I translated thousands of lines of MATLAB into C++ for a plugin into LabVIEW, then made sure to be good about my resource deletion. To be honest, it’s sort of a pain in the ass to program in C++ (though I love it to death). I was trying to write some FFT the other day and I found Python + matplotlib did a lot more for me than C++ could ever do.

I’d say learn Javascript or Python unless you really want to do graphics or embedded or other high-performance applications. It’s a powerful language, but for a majority of applications it’s probably overkill.

4 Likes

Great job man! Cool insight :slight_smile: