Microsoft Leap Apprenticeship: SWE Application and Interview Process

Resume, essays, and example interview questions included!

rita
6 min readFeb 13, 2021
Photo by Bram Van Oost on Unsplash

I recently got accepted to the Software Engineer Apprenticeship Program with Microsoft Leap (Redmond, WA location). It’s a 16-week program for people from non-traditional backgrounds breaking into tech. Lots of bootcamp graduates apply, but self-taught programmers, and professionals with a 2+ year career break are also welcome. You just have to know basic code and have previous work experience in any field.

  1. Application — my resume and essays
  2. Interview — about the interviews, example questions and tips
  3. Timeline — for those of you trying to estimate when you’ll hear back 😏

1. Application

For the application you must (1) submit your resume, formatted in Markdown via a GitHub Gist, and (2) answer two essay questions.

1.1 Resume

I’m a self-taught programmer with no professional software development experience. I think two things made my application stand out: (1) Master’s in Analytics, and (2) programming projects.

Of course, you don’t need a degree to apply to Leap! I’m only being transparent: it probably gave me an advantage and helped my application get noticed.

If you don’t have a fancy degree or impressive work experience, focus on building projects. These will help showcase the following:

  • Passion 🔥 — you can’t say you love programming in an interview and not have something to show for it
  • Skill 🧠 — anyone can list a dozen languages and tools but it’s more effective to give examples of when you used said technologies

Below is the resume I submitted to Leap.

Microsoft Leap resume that got me an interview for the Software Engineer Apprentice position

1.2 Essays

I’m self-conscious about sharing these 😬. They’re a bit cringe, but when I was applying I wished someone showed me their essays for reference, so I hope you guys appreciate this.

Microsoft Leap essay question and answer: Why are you interested in this pathway?
Microsoft Leap essay question and answer: Describe a project that you completed.

For the second question, chose a project that shows you’re a problem solver. I didn't use a programming example here, because I’ve managed all my programming-related challenges by googling, watching YouTube tutorials, and asking questions on Stack Overflow. (That doesn’t show I’m a problem solver, it shows I know how to use the internet.)

That’s why I described a project from my previous job instead. It’s nothing fancy but shows initiative, teamwork, communication and other soft skills.

2. Interview

If selected, you’ll have two interviews, 45 minutes each. Because of the pandemic, the interviews will be conducted via Microsoft Teams.

The Microsoft Teams invites will have your interviewers’ names. I suggest looking them up on LinkedIn to learn more about them.

2.1 Interview #1

My first interviewer was a Senior Software Engineer. She started the meeting on time. It went something like this:

👤: Interviewer introduces herself, briefly describes her role at Microsoft. “Now tell me about yourself.”

😅: I talk about myself for 1-2 minutes. (It’s a common interview question, so I had a personal pitch prepared.)

👤: “Ok, now I’m going to ask three behavioral questions.” One was a “describe a challenge and how you solved it” type of question. Another was about my experience with remote work. I forget the third.

😄: I had no trouble answering these. Since behavioral interviews are generally alike, I googled “common behavioral interview questions” prior to the interview and prepared my answers.

👤: “Great, now let’s start the coding portion of the interview. I'm going to send you a Codility link.” (Codility is a webapp that allows the interviewer to see you code in real-time. It also has a virtual whiteboard where you can draw.)

👤: Proceeds to ask a string parsing question.

It was an easy problem that I was able to solve using a hashmap and sorting. Here are similar LeetCode questions:

If you can solve the above questions, then you can solve the question I was asked.

I got a working solution with a few minutes left on the clock. My interviewer asked if I had any questions for her. I asked two. We went three minutes overtime.

I felt I did good but not spectacular. I solved the problem with guidance. My code was readable but not beautiful.

2.2 Interview #2

My second interviewer was a Principal Software Development Engineer. He apologized for being four minutes late and said it was ok if we had to go overtime.

We exchanged pleasantries and jumped into the code (no behavioral interview questions).

Before presenting the coding challenge, he asked if I’m familiar with graph algorithms. I answered yes. He explained that not all candidates are comfortable working with graphs, so that’s why he asked. I thought that was so nice! He had an array/string question prepared in case I didn’t know graphs.

He proceeded to ask a medium graph traversal question. I solved the problem using DFS. Then he asked me to come up with an iterative solution, which I was also able to do. Solving the following LeetCode problems will help you prepare for a similar question:

After I solved the problem, the interviewer said he enjoyed our session and ended the interview (there was no time for me to ask him questions).

I felt extremely good about this interview, because I had time to optimize my solution by solving it iteratively (I didn’t have time to optimize during interview #1). Also, my code was super clean 😍.

2.3 Other things to expect

Because the interview is conducted via Codility, you will have the chance to run your code. Debugging skills come in handy here.

Understand the time and space complexity of your algorithms.

After coming up with a working solution, if there’s time left, be prepared to optimize your solution and answer additional questions such as “how could you break your code?”

The interviewer is there to help you — listen to their hints! Both of my interviewers were super nice and helpful. As long as you think out loud, the interview will feel like a collaboration.

3. Timeline

  • December 13: Applied to Leap (deadline was December 14). I got a confirmation email stating I’d receive a decision by January 15.
  • January 7: Contacted by recruiter to complete online pre-screening questions (yes/no questions such as “have you worked at Microsoft before?” and “are you authorized to work in the US?”). The questionnaire had to be completed by January 10.
  • January 15: Was supposed to receive a decision but no email came 😕.
  • January 19: Leap apologized for the delay and said the invitations to interview would be sent out by January 21.
  • January 21: I got invited to interview for the program! Check your email often, because the deadline to schedule interviews was the following day on January 22.
  • January 26–27: Interview dates 🙂.
  • February 1: I got my acceptance letter 🎉!

Good luck! I hope this article helps you.

--

--