YTread Logo
YTread Logo

What it's like working for Microsoft as a software engineer

Mar 30, 2024
Hi guys, my name is John Steen. I'm a

software

engineer

at Microsoft and today I want to answer a question I've been asked quite often on LinkedIn:

what

's it like to work as a Microsoft generic

software

? So I'm in this video. I'll explain things like

what

the culture is, what a typical day in the life of a software

engineer

is, what my favorite parts of

working

at Microsoft are, what some potential downsides might be, so if you stay tuned until the end, this It should give you a much better idea of ​​what it would be like to work at Microsoft if you're interested in applying, so let's get started.
what it s like working for microsoft as a software engineer
The first thing we need to mention is that Microsoft is obviously huge and there are so many different teams and organizations, and your experience is going to largely depend on things like who your manager is, what your management style is, what team you're on, what is

working

, so keep this in mind as you listen to this video, that this is one data point among many and your experience. It can be very different depending on what team you're on, so to give you some context where I'm coming from, I worked as a software development engineer within our cloud and ai organization specifically within the Azure SQL teams and my main job was to develop database engine functions for our core SQL server engine.
what it s like working for microsoft as a software engineer

More Interesting Facts About,

what it s like working for microsoft as a software engineer...

Now I started as a level 59 and I'm leaving as a level 61 which is sde2 and I'll be starting a new job in a couple of weeks so what's a day in? What is my life like as a software engineer at Microsoft. I'll tell you a little bit about what my average day at Azure was like, and obviously you may be working on different things depending on where you land within Microsoft, but let's walk through a typical day. I'll start work between 8:30 and 9 and start doing some administrative tasks like checking my emails from the night before. The next part is the stand-up, so usually that happens between nine and 10 a.m. m. for my team. up is the process where our entire team logs into Microsoft Teams and it's a very simple process of about 30 minutes where you go over what you worked on yesterday, what you're working on today, and if you're stuck on anything you're working on. need help after the stand up depending on what the day is like there may be some kind of meeting I will attend it could be a technical design discussion like an overview of a new feature a technical sync a brown bag just some kind of meeting in where everyone gets together and goes over a technical problem or it could be some kind of presentation just to learn, like there are a lot of educational sessions like here's a session on debugging or here's a session on memory, so there's random sporadic meetings like that are educational.
what it s like working for microsoft as a software engineer
So after that, let's say it ends around 11am. M. Or something like that between 11 and 1. I'll be working on feature development or whatever I'm doing right now. Yes maybe I'm designing new tests. If I'm working on a new feature. I'll be doing some technical and coding work during that time, so after I've worked for about four hours, roughly speaking, I'll stop around 1 p.m. m., I will take a break for lunch and return maybe around 1:30 or 2 i. I'll start the next part of my day, sometimes it's another meeting, sometimes for example we have weekly team meetings that only happen once a week, sometimes there's like a weekly sync on a project that you're collaborating on with others teams or other engineers, etc.
what it s like working for microsoft as a software engineer
There may be one more meeting that afternoon that you'll be attending, so let's say it happens around two and lasts about 30 minutes, so from 2:30 to six is ​​when I continue coding or working on a feature or whatever. to be. technical work that I have to do now sometimes this is different sometimes I have a lot less meetings in a day and on a lucky day I will have maybe six or seven hours of actual coding which is amazing but a lot of times you will have meetings throughout the week that you will have to deal with and it's just part of the job.
Now I will mention that there are definitely days where there are parts of the day that are just dedicated to learning, let's say you are tasked with developing a new feature, you haven't worked within that component before reading the design docs, you might be listening to recorded internal discussions, you might be researching the code to understand it better, so there's definitely a lot of time where you could spend a couple of hours learning about something or there might even be a new research paper that's come up that you can start doing. read to learn about future features you can develop, so I would say that most of my day is usually spent coding. and development, the second most important part of my day is meetings, the rest just depends, it could be like learning, it could be administrative things, all classified as miscellaneous, by the way, if you are new here and haven't done it yet, I would love to.
If you subscribe to the channel, that way you can keep up to date with all my new videos and stay in touch. I would also really appreciate it if you hit the like button. It really helps the channel grow and also lets me know what kind of topics resonate with people and if this content is valuable enough to continue making videos about work-life balance, obviously this is important for many of us and it is obviously important not to feel burnt out in your job and make sure you can still do it. I enjoy life outside of work, so I'm going to describe my work-life balance within Azure, and again, this might depend on your team at your organization, but I'm going to describe my experience, so that I had a great work-life balance at Microsoft.
Even within Azure, which is a fast-growing part of Microsoft, on average I was only expected to work about 40 hours a week. Now there were weeks, especially in the beginning, where I just wanted to work more because I wanted to catch up more quickly. I really wanted to start off strong and make sure I had a good foundation to know I was making good progress on my project, but that was completely optional, no one expected me to do it, I just did it on my own and so, on average, I got into it. I got into the swing of things at Microsoft and developed a routine.
I didn't work more than 40 or 45 hours a week and I did my job and I did it well, so I had a full life outside of Microsoft. I never felt pressured. or something like that to work on the weekends, so I really had a great work-life balance. Now I was near the end of my time at Microsoft when I was starting to do on-call for our SQL data warehouse product, but you know, sometimes I heard horse stories about on-call, but I didn't really care at all about my experience, no. It's like I'm on call for 24 hours.
I was able to finish my shift at night and hand it to the next engineer and he was gone. I don't like getting a call at 3 a.m. m. or something like that. It was actually like a totally good role model and it didn't interfere with my work-life balance at all, so even if you're on call, even if you're in a fast-growing business. part of Microsoft, my experience with work-life balance personally was great, but I know this might depend on your team, so keep that in mind, so I want to go over some of my favorite parts of working at Microsoft.
These are things that excite me. Talk because if you join Microsoft you want to be excited about the job, you want to know that you will enjoy it, so I'll tell you what I like most about it, the first thing and maybe what I liked. The best thing was the amount of learning I gained at Microsoft, especially as a new engineer. I feel like I was getting a top-notch computer science degree and getting paid to do it. It was an amazing first experience as a new engineer trying to learn better. practicals and also seeing some of the fundamentals of computing that were actually implemented and used in production, so it was great to learn c as well as learning things like memory management, different optimizations, getting exposed to distributed systems through our offerings in the cloud, such as the Azure SQL database and our Synapse data warehouse. offers to learn how code is deployed and maintained for a multi-billion dollar company and also be exposed to the scale at which we operate, so at Microsoft some of the features I developed are used in millions of databases, so it's really interesting to know. that the features I developed had impact and are being used at scale the work itself was very interesting and challenging I felt like I was always learning something I was always upping my game as an engineer learning best practices learning how to improve my code quality and maintainability and also just learning how to learn, like learning how to incorporate new components or architecture that you hadn't been exposed to before, so I felt like the features I developed always challenged me.
I had to learn and understand a lot of the fundamentals. of database engines, from parsing to algebraization, query optimization and execution, and lastly, I know it's corny to say, but I really enjoy the people I worked with, everyone was so smart, kind, and thoughtful. , I felt like it was an open door if I ever needed help, I could reach out to anyone who needed it. It felt like a very positive and energizing environment, so I really liked working like that and I learned a lot from so many people I worked with, so it was very positive growth. environment to be in, so what about the dark side of Microsoft?
What are the disadvantages? Well, I'm sorry to say that I'm not actually going to badmouth Microsoft. I really had a great experience there, but I'll mention a few things that might depend on your personal preferences if Microsoft would be a good fit for you. One of them that's pretty obvious is that Microsoft is a big company and so if you compare it to something like a small startup that's moving very fast. It may not be a good fit for you to deal with more processes and move at a slightly slower pace than you would in a startup at Microsoft.
The code we develop can affect millions of people, millions of dollars and can be very The stakes are high if something goes wrong and that's why there are so many mechanisms and processes that we have to follow in order not to make a drastic mistake and that's actually a feature, not a bug, of many large companies because the cost of making something really horribly bad is very high if you want to work in an environment where you move so fast that you are releasing features and maybe writing tests later and if the things break, it's okay because you can just merge some new changes to fix it. do it on the same day, that's not what it is at Microsoft and it's a little slower than that, a little more careful, you have to write a lot of tests, you have to make sure your code is solid and will be fine in production can move a little slower than you want if you want that really fast-paced small startup culture.
Another thing you can hear. I'm also kind of blind, so I know what a lot of people say about Microsoft. compared to fang companies and that's the trade off so this is something you should consider when joining Microsoft. When you receive the offer, the compensation is competitive for you. I recommend you go to sites like levels.fyi to see what other companies offer. the market is offering and comparing their offering from Microsoft to which I have seen a lot of variability in terms of compensation from Microsoft. Please note that I am working in Austin, Texas and was paid by Microsoft even when I started before my compensation increased through My promotions and rewards were still very competitive in the market.
I don't know the percentile, but I guess it's probably around the 90th percentile, but if you compare it to some of the fang companies at the time I joined, it was less than some of those companies, I think, based on some of the data available publicly about the levels. FYI that's not always the case, it seems like a lot of the new offers for experienced tires or new grads are actually very competitive with fang and sometimes they will be. match or beat it, so I wouldn't say this is a general drawback across the board, but I would just make sure the offer you get is competitive and I would also take into account things like updates every year, historically it seems like Microsoft has given out fewer updates Like some of the other fang companies each year, now the upgrades are just additional stock grants that are awarded after you start, as opposed to the initial stock grant you get upon joining, and those upgrades can accumulate over time, which which actually increases your compensation over time.
Then howpart of your calls with the recruiter and during your negotiation process, I would take all that into account if you have to choose between Microsoft and Fang now, if you are comparing Microsoft to most other technology companies, I think it pays competitively, so make sure you do your research and keep that in mind, so I know a lot of people are curious about onboarding, so what's it like to join as a new engineer at Microsoft? How long it takes? There's a lot? There's no pressure to just know everything right away, so I'll describe my experience.
I really liked my onboarding experience. Keep in mind that I was getting into a new programming language, so I was learning c plus for the first time at work and I was also having to incorporate a lot of material because learning database engines is very complex, very difficult. , there's a lot of material to learn, so my boss was really great about giving me material to study and learn and also realistic practical projects that I could work on as kind of directed learning exercises, I started by getting some books, actually a couple of textbooks on computer architecture and database engines, as well as a book on c plus plus, so those were sort of some of the study and learning materials there were also a lot of internal materials that I was using to incorporate, like series of internal videos, architecture documents and design documents, technical briefs and I also had many one-on-one meetings with my manager where I was able to collect my questions and ask him about them, but a lot of the learning came from these initial projects where I was given a role to do and a lot of the questions came up while I was working on that feature step by step, so I'm really enjoying it. combination of types of study resources and learning for their own sake and I actually like to code and do real work as a directed learning exercise.
I never felt rushed to join. I never felt like it was too much, you know, obviously it feels like the cliché of drinking from a fire hose, but it's completely doable. I spent a lot of time and effort getting up to speed as quickly as possible, but I never felt like I didn't have enough time and if you're someone who likes to take on a challenge, it's actually kind of fun because you feel like you're learning a lot at once. , so let's talk about growth opportunities at Microsoft. What's it like to be promoted for rewards? When I started at Microsoft I got my first promotion in 10 months, which is a little quick, but it was from level 59 to level 60 and then I got my next promotion in about a year, from level 60 to level 61, which is a 2 sde .Now I felt that my personal experience was that my work was rewarded and recognized. and this was without asking for a promotion, my work was simply recognized, my manager each time promoted of his own free will and I felt like my work was recognized there, so I really appreciated that aspect, so I'm going to go over some of the key aspects of Microsoft culture as I have observed it.
One of the most important things I've appreciated about Microsoft's culture is the independence that engineers have, at least on my team. I never felt micromanaged now like sde. or an sd2, you may be assigned tasks or roles, but you have a lot of independence in how you approach them, develop a plan for that role, develop a design, and offer your own perspective and opinions on what that role can and should be. I developed another aspect that I really appreciated was the mutual respect in our meetings, people were respectful in listening to each other's opinions and even if there were disagreements, they were done in a very professional and respectful tone and at the end of the day, most people at Microsoft just want to do the right thing and find the best technical solution to the problem.
Another thing I really appreciated is that the management and leadership of my team and my organization were very receptive to feedback, so there was a lot of all hands and q's. And when difficult questions came up and leadership and management almost always took those questions very seriously and answered them directly when perhaps they could have redirected the question or even not given it a way to ask it, but instead Instead, they encouraged her. people's questions and even complaints and addressing them very thoughtfully in these open internal forums, like all-hands meetings, now some other aspects of the culture that were interesting and that I really liked was that there is a high technical level in all the scopes, so I always felt that when I was developing a feature and it was being reviewed that I would actually level up a lot as a software engineer because the bar for technical quality was very high, forcing me to improve my code to improve my design and think better as a software engineer. and along with this, there are so many opportunities to learn at Microsoft.
This is what I really loved within Azure. It's just that almost every day there was a technical synchronization or a brown bag or some kind of technical presentation. People were sharing documentation about features they were working on, you're very exposed to so many different things that the learning is endless, so it's a high place for growth for an engineer. I'm sure the pace of speed at which teams like to move may differ at Microsoft. Within Azure, I found that Azure is a higher growth area within Microsoft relatively speaking, so there is a bit of excitement and urgency to develop quality products and do it as quickly as possible, but I also didn't feel rushed in the sense of that would do it. compromise the quality of my code, so overall I would give the culture an A at Microsoft.
I thought it was excellent. Well, that's my experience working at Microsoft. I really enjoy my time here and would encourage anyone considering a role at Microsoft to pursue it, I really think it's a great opportunity to level up and learn how to have an impact at scale and be surrounded by really interesting and smart people who They will improve your skills as an engineer and make it a really positive environment along the way. That way, I would recommend working at Microsoft absolutely any day and I don't know how the rest of my career will turn out, but I would always keep Microsoft as an option to work for if I decided I was looking for a new opportunity.
I highly recommend, obviously, do your research, make sure you really like your manager when you're going through the interview process, make sure you find a team that you're really happy to work with on something you find interesting, and negotiate a package of compensation that is competitive and that you are satisfied with. Other than that, I wish you the best of luck and if you are interested in working at Microsoft, I hope you get the job, thank you.

If you have any copyright issue, please Contact