I’ve always had the impression that companies like Microsoft or Google are some magical places in the far-far-away-land (yep, America seems quite far away for a European kiddo ? ). People working there must be some kind of amazing scientists who write their code by setting the appropriate voltage directly on transistors. Or, at least, use assembler-like languages every day ?.
If you have a similar idea, you may like to read some facts I discovered after talking to one of Microsoft employees. My todays ‘guest’ is Ela Mościcka who’s been working at Microsoft for +3,5 years as a Talent Sourcer. And probably the most busy person I’ve met so far :D. We are talking about working at MS and how a programmer can become a MS employee.
[AGirlAmongGeeks]: Ela, you are a Talent Sourcer, but what does that mean? How does this job differ from a regular HR worker? To be honest I’ve never ever paid attention to what a person who calls/emails me with a job offer uses as a title .
[Ela Mościcka]: HR person, Talent Sourcer and Recruiter work as a team but their responsibilities are different. When there isn’t enough potential future workers to recruit from the standard ‘sources’ (like referrals from other Microsoft workers, existing Microsoft employees who want to change roles or department or people applying via our career page), it’s time for a Talent Sourcer to step in. So, we talk to business managers, collect requirements and go ‘to the market’. We start looking for the right people on StackOverflow, Github, LinkedIn, Twitter, personal blogs, open source projects etc. But that’s not all we do – talent sourcing is a craft that often requires advanced knowledge of many search engines and building boolean strings/commands to, for instance, generate lists of people attending a conference etc.
When I find somebody ‘interesting’ I try to get to know this person better, so I’m able to assess the chance of success with him/her. There is a lot of factors that have to be taken into account – not only programming skills, but also other core competencies as well as the particular person’s preferences (whether he/she is interested in a job change, considers relocation and so on).
To sum up – the biggest difference between me as a Talent Sourcer and the role of a Recruiter is that my task is to find and attract the best talent and assess their fit for Microsoft as well as if MS would be a good place for them.
[AGAG]: It’s good to know how it looks like from the other side. But I guess I would not be a good candidate – I haven’t pushed any commits to my pet repo for over 3 months.
[Ela]: It’s not like that! You don’t have to be a devoted geek spending his/her whole life on programing an open source project. It’s normal that sometimes you have more time for side projects and sometimes you don’t touch it for weeks. But if you want to apply for this company, it’s good to create some public repo. Something that will help Talent Sourcers find you and rate your skills correctly.
[AGAG]: MS is not your first employer. What makes this particular company so special, that you still want to work there?
[Ela]: You know, when I was about to start this job I was stressed out and full of doubts. It’s a huge corporation, so I was worrying about how it looks like, or if every minute of work is inspected and so on. But the funny thing is, my work here has been much less stressful than in any of my previous companies. I can work from home, have a break for gym during my work day etc. My department has weekly meetings where we focus on each other’s problems and, for example, help source candidates for tougher business areas or locations (we call it our “sourcing hour”!).
On the other hand, you have KPIs/goals to achieve, like in any other company. When something goes really wrong you can expect that somebody will talk to you about this. But it’s not like ‘a yellow card’ and you’re in trouble. In fact, I haven’t heard about such situations – if you have a problem, people work together to try and solve it.
[AGAG]: Ok, so tell me how the recruitment process looks like?
[Ela]: The majority of our assessment processes are quite similar – I call a candidate, introduce myself and talk a little bit about Microsoft. Then I try to get some information from him/her – like experience, expectations, preferences. If our expectations are similar, the candidate goes further – next step is technical interview where you’ll be asked more technical questions. There’ll be also coding task(s) waiting for you (you can choose the programming language in which you want to write the code?). As you’ll be speaking with your potential future colleague, use this opportunity to ask any technical/product/work related questions you may have.
If that stage goes ok, then there are onsite interviews, where you get a chance to see the city, office, meet with Engineers/Managers and have the final interviews. These stages are largely technical but may cover some additional competencies such as collaboration skills, customer focus, drive for results. You have to go to a Microsoft office in the city where the hiring team are located. There, you will usually be asked to write some code on a white board and do other programming tasks.
[AGAG]: How long does the process take?
[Ela]: It depends. For positions with open jobs actively being worked on it should be just 3 weeks, but sometimes it can take longer such as in situations where you apply for a position that already has no more vacancies. In this case, your application and interest in staying in touch is kept on the system so we can call you back when a job position frees up or another relevant role comes up.
[AGAG]: And does these situations really happen? We are all fed up of the phrase ‘we will call you’.
[Ela]: Of course, it happens. Quite often a candidate has to wait some time, sometimes many months or even a year for a vacancy, but part of my role is to stay in touch regularly and be a contact point for candidates.
[AGAG]: And what if the candidate’s rather weak? Do you call him/her back to tell this person that the recruitment process is over or just let him/her wait forever?
[Ela]: We always give detailed and constructive feedback after the recruitment process, no matter the result. Because of that, you can master the lacking skills and try again in some time.
[AGAG]: Try again?
[Ela]: Of course! There’re many programmers who have been hired at Microsoft after a second or a third try! If you understand what you have to learn, you can focus on these skills and try again. Look, what harm could it do? In worst case scenario you will not get hired, listen to what you need to improve on and then try again!
[AGAG]: Seems logical. What certificates in advanced languages are required at Microsoft?
[Ela]: We don’t expect you to have any certificates. But the fact is that communicative English is a must. You don’t have to be super fluent or get rid of foreign accent. If you understand others well and everybody in your team understands you well – that is already a good start!
[AGAG]: How many programmers work at the Polish branch of MS?
[Ela]: We don’t have a Software Engineering department in Poland so the relocation unfortunately is a must if you want to work as a Microsoft programmer. But still, you don’t have to relocate far – we have development centers in UK, Czech Republic, Germany and many more European locations.
[AGAG]: Ok, so you have some European teams but what are their responsibilities?
[Ela]: It depends on the country/city – in Prague we develop Microsoft Dynamics, Skype, Microsoft Teams (a platform that combines workplace chat, meetings, notes, and attachments with meeting and calling functionality). If you’ve heard about Skype Interviews, you may be interested to know that it was created as a hackathon project.
[AGAG]: Wow, quite impressive! Are there other side-projects in Microsoft?
[Ela]: There is something called Microsoft Garage, you can read more about it on https://www.microsoft.com/en-us/garage/. You may be surprised what MS programmers do.
But coming back to the European teams – in Norway we focus on Microsoft Office 365 – People Experiences, Office Graph and Tenant Wide Search. We have teams in 3 cities there. In UK we also have a few teams working on SwiftKey (a tool that makes your typing easier and faster thanks to Machine Learning), Paint 3D, HoloLens related projects and Bing.
[AGAG]: Ok, so let’s assume I want to try myself and apply for a job at Microsoft. Is relocation really a necessity? Many people work from home nowadays, what’s the problem?
[Ela]: Yes. Unfortunately, working remotely from another country is not an option in most cases for developers, as most teams are co-located in the same office, but we do typically support you with relocation.
[AGAG]: And what about technologies? What if somebody feels like a ‘strong’ programmer, knows Java perfectly but has never used C# before? Does this person have any chance for a job at Microsoft?
[Ela]: Of course, yes! You don’t have to have experience in MS technologies to work here. We have a lot of teams working with non-MS stack. Somebody has to write applications for Android or IOS, right? So, believe me, to work at MS all you need is good programming skills and passion for technology. If you are willing to learn, the technology usually doesn’t matter.
[AGAG]: Apps for Android? I haven’t thought about it! And what if a Microsoft programmer gets bored? Working on the same project can be frustrating after some time…
[Ela]: If you want to change your team (project) there is no problem. It mainly depends on how you steer your career, where you want to live, what technologies you want to learn etc.
[AGAG]: Ok and what about flexible working hours?
[Ela]: This is possible, but not at the very beginning. At the start, a ‘fresh’ programmer spends a lot of time on learning and preparing for the position. Any of us gets a so-called ‘buddy’ who helps with a good start.
[AGAG]: What if a candidate needs a visa to work in Microsoft team’s country?
[Ela]: No worries, we help with the application process.
[AGAG]: Seems nice ?. Assuming some of my readers want to apply for a job, can they contact you directly or the MS career site is the necessary step?
[Ela]: I will be happy to talk to a potential candidate! They can contact me via Twitter (@ElaMoscicka), LinkedIn or email (elmoscic@microsoft.com).
[AGAG]: Great. Thanks for the interview!
[Update 21.02.2021] If you are interested in starting developer’s career at Microsoft, you should definitely visit Ela’s blog with excellent articles and lots of advices!