Professional interviews

The easiest way of getting a Meet link is to click a “Host a quick Meet” button on the meet.rs page, and in seconds you will be hosting your Meet.

The “Quick meet” is created in the started state with all the default add-ons with the default settings. There is no security, so anyone with the link can access it. 

Sometimes this is not enough, and a Meet needs to be configured to meet the specific meeting needs. In companies where more than a handful of meetings are being conducted, there is a need to overview the interview process interview stage. Some companies are hiring for multiple positions simultaneously and would like to organize interviews for those positions.

For all of those cases, using a “Professional Meet App” (aka “PRO app”) is probably a better choice than ad hoc click on the Host a quick meet button.

The “Quick meet” is created with all the default add-ons with the default settings. There is no security, so anyone with the link can access it. The meet is created in a started state, so there is no Meet scheduling.

Sometimes this is not enough, and a Meet needs to be configured to meet the specific meeting needs. In companies where more then

PRO app

To create a professional Meet, the user has to open a Professional Meet app (aka “PRO app”) by clicking on the Sign-in button on the home page or navigating to https://meet.rs/pro.

At the moment PRO app consists of 3 tools represented in the app sidebar:

  • Meet Dashboard
  • Usage overview
  • Feedback insights

This post will focus on the Dashboard, and Usage and Feedbacks will be described in future posts.

Meet Dashboard

The main parts of the dashboard are:

  1. Buttons for creation of new Quick and Pro Meets
  2. A position selector and a button to create a new Position.
  3. Search box for finding the Meet based on title, description, participant, etc
  4. Toggle for showing and hiding archived Meets, switching between card and grid view
  5. List of matching Meets grouped by state (scheduling, ready, feedback, etc.)

How to create a Quick Meet?

Clicking the Quick Meet button (1), you get the following dialog.

You can customize the duration, title, and description and what configuration of addons should be used for the Quick Meet. All the previously mentioned limitations are valid here too.

How to create a Professional Meet?

A much more powerful way of creating a Meet without too much additional complexity is to create a Professional Meet.

Pro Meet is a Quick Meet with additional info about scheduling and participants.
To create Pro Meet, click on the dashboard the “Create New Meet” button, and you will see the three-step dialog.

In step #1, we define the duration of the meeting, the title and description are shown to participants, and what configuration is to be used for the meeting.
In step #2, we define scheduling and even use Meet auto-scheduling as described here https://building.meet.rs/2021/01/09/the-biggest-recruiters-problem-with-remote-interviews/
In step #3, we define who is the candidate and who are interviewers (1 or more) participating in the interview. The candidate will receive a passcode to use while interviewers will have an SSO login using their work email – no passwords to remember!

How to group interviews under different positions?

By default, when you get a PRO Meet account, you get a default position also created, and all the Meets you create will go to that position.

By default, when you get a PRO Meet account, you get a default position also created, and all the Meets you make will go to that position.

To create a position, define a title (to be used on the Dashboard) and optionally describe and reference information for the ATS system you use.

To create a Meet under a specific position, select that Position in a dashboard dropdown and create a Meet.

Last (but not least)

Usage of the PRO app is free – you can create as many Meets you want – all at no additional cost. Only the Meets where at least 2 participants meet simultaneously for at least 20 minutes are the ones to be charged.

PRO app uses only public API (https://github.com/vivani-doo/meet-api-help), so you can achieve anything you can do in PRO app UI you can achieve using the REST API.

Meet Snapshots

Snapshot is a Meet feature that solves common problem interviewers and students have with taking segmented and contextual notes. 

During a coding interview, while the candidate is solving the given task, there are moments when a candidate does something good or something not so good. When the interviewer writes feedback after the interview, that feedback should list all of these critical moments with code samples.

During a computer science class, the teacher also writes a lot of code that contains key moments. Having just a final state of the lesson code makes things harder for a student to review the code lesson later.

That’s why we create a feature called snapshot, solving these problems in a frictionless and cool way.

How does it work?

As with everything else in Meet, Snapshot is a feature deliberately designed to be as frictionless as possible and not to break your flow.

At any time during the interview, the participant should press the F9 key, and a snapshot of the current state of the coding editor, whiteboard, and call at that exact moment will be stored. (Naturally, you can click the icon and button to achieve the same)

Taking a snapshot during the interview

The moment after the snapshot is taken, you can do some of the next optional things:

  • as the snapshot description field is focused so you can write a short note about a snapshot.
  • If you press a + key, you will quickly tag the snapshot as positive
  • If you press a – key, you will tag it as negative.

At any time, if you press the Esc key, the snapshot dialog will be gone from your Meet surface if that is what you want.

Annotating snapshots on the fly (optional)

Snapshot visibility

By default, every snapshot is a private snapshot and can be seen only by the person who created it.

The snapshot author can decide to change the visibility to either team or public snapshot.

Changing the snapshot visibility

Team snapshots are accessible to any interviewer or recruiter of the same company to provide additional feedback or review the candidate’s performance.

Public snapshots are accessible to anyone – including the candidate – so everyone can see them, descriptions, and ratings. This type of snapshot is usually used for scenarios where the interviewer wants to provide detailed feedback to candidates on the interview performance – typically in mentoring scenarios.

Snapshot review

Once a Meet is finished, the Meet app will automatically make a final snapshot of the meet state as it was at the end of the Meet.

From that moment, a participant can just click on a given snapshot, and the code editor, whiteboard, and other addons will show their state at the exact moment when the snapshot was taken.

After the Meet is done, just click on Snapshot to see the interview state at that moment.

Educational snapshots in Microsoft Teams

Our addon “Code by Vivani” is used in thousands of classrooms across the globe for conducting remote computer science classes. The teacher is using the editor and code using the live editor for an hour, which at the end of the class makes it harder to have notes on the stages of the coding or different things being taught.

Meet snapshots in Microsoft Teams

To solve that problem, a student can take a snapshot and annotate it with a short description and have his own private live notes available at any time in the future. 

Another solution is that the teachers take snapshots on their own, marking stages of the lecture and then making them public, which will result in the whole class having access to the stages.

So there you are- happy snapping!

Interview as a feature

You can use Meet.rs directly as a product and have a frictionless remote interview, similar to how you use Zoom, Teams, Skype, WebEx, etc. 

But what if you are a company that builds a product around interviewing/meeting experiences, and for you, that interviewing experience is more of a feature and not a product? Can you plug in interviewing service in the same way you plug in AWS services and focus on your product built around it?

One way you can do that is to build that experience on top of many existing SDKs, which encapsulate a lot of lower-level details.

Some of the SDKs available on the market are offered by TwilioZoomAgoraMicrosoftAmazon, and many more. 

This approach’s upside is that you have full control over the UX of your app’s calling experience. The obvious downside is that you have to invest time and money to build the experience and operate the required integrations. 

Suppose you are not keen on investing in things that are not tied to your product’s primary value proposition. In that case, you may be more interested in “buying” interview service than “building an interview product.”

Co-branding

A lot of product offers “co-branding” features where you can customize a bit the 3rd party product’s appearance by showing your logo or customizing the color scheme. Unfortunately, most of them require buying a more expensive subscription package to be able to do that.

In Meet.rs, anyone can co-brand their Meets at no additional cost by just uploading their logo in company settings.

Here you can see an example of a co-branded lobby page for a company Skilled, a virtual Career Center whose experts interview, educate, and certify job seekers to help them get hired.

The same SVG logo is shown to the candidate during the interview.

Whitelisting

Sometimes co-branding is not enough, and you would want to have your interviews running out of your domain to protect your branding, etc.

Meet.rs is supporting that, too, so you can run your co-branded interviews under your domain.

Here is an example of Meet.rs running from azurewebsites.net domain

Embedding

If you want to embed the Meet experience inside your app, you can put an iframe with a source pointing to your Meet, and voila, you got a full interviewing/calling experience in your app just by doing that. 

Whitelisting is just a special example of embedding where the iframe is stretched to take the whole web page.

In summary

As you could see in this post, there are many ways how you can co-brand Meet interviews based on your own needs, run your Meets on your domain or even embed them in your own product – all with a single line of code.

We have additional ideas on how to improve co-branding where you could custom tailor the Meet experience to your brand needs.

Also, having an API is a must-have for running interviews as a feature, and we will share some insights on how to use Meet API in the next post.

Until then, happy Meeting!

The right way to do coding interviews in Microsoft Teams

In a previous post, we have spoken about The biggest problem recruiters have with remote interviews. In this one, we will talk about a problem many interviewers have when conducting coding interviews in Microsoft Teams.

Microsoft Teams is an excellent platform for having a video call available even for free and which you can use even with people not having Microsoft Teams application.

That’s why when I was interviewing people using Teams for remote interviews, I expected to hear predominantly positive experiences. Still, to my surprise, there was also a significant problem emerging from the interviews: context switching and friction.

All of these interviewers were using, in addition to Microsoft Teams, a few additional apps where each one of them had its links, environments, and setup.

The interviewer had had to spend interview time and their focus explaining to the candidate how to use the tool. Some of the tools required the candidate to share their screen, so the interviewer will see what the candidate does. Even when the tool supports collaboration, it will take the screen space, and the interviewer will not see the candidate while coding. Most of the tools were scheduling and link generation and preventing interviewers from adding additional people to the call when needed.

At the end of the interview, in many tools, the interviewer did not have access to code written by the candidate, so it was hard for them to write detailed feedback.

“Sometimes, I feel like I am a juggler on interviews, and it is very tiresome.”

Solving customer problems (the bigger, the better) is the road to product-market fit, so I’ve decided to create a solution with a Microsoft Teams addon Code by Vivani.

Code by Vivani

My solution for the problems mentioned above is a fairly straightforward one: create a frictionless Teams addon that will add code editor to Microsoft teams so interviewers can stop juggling with many different tools and focus on the candidate.

To achieve that goal, I had to make an addon supporting frictionless onboarding, organizing, and interviewing.

Frictionless onboarding

To start using the addon, go to the Teams addon store, search for “Code,” and install it or visit this link.

There is no need to create an account on meet.rs, verify emails, or anything like that – you install the addon, and you are good to go!

Code by Vivani addon can be installed as a personal, team, or chat addon

You can also choose to install it in a few different ways matching the way your company uses Microsoft Teams for interviewing:

  • personal addon – if you want to use addon only by yourself
  • team addon – you can install addon in your team, and everyone in the team will be able to organize and join interviews.
  • channel addon – if you have a dedicated channel, install it there, and everyone in the channel will be able 
  • group chat addon – if you have a dedicated group chat, install it there, and everyone in the group channel will be able 

You can install addon in any number of channels, group chats, etc., and each one of them will have a separate dashboard with separate interviews and their access rights.

Frictionless organizing

To create a Meet, you don’t need to go out of Microsoft Teams as Code addon has a straightforward dashboard for organizing interviews.

Code by Vivani – Meet dashboard

Here on the dashboard, you can:

  • look at the code done by some candidate in previously finished Meets
  • join some of the ongoing Meets without any logins, passcodes, etc.
  • copy Meet link to send to the candidate
  • create and configure new Meet
Configuration screen of a new Meet being created

On the configuration screen, you can:

  • Enter Meet title and description
  • Enter an optional passcode which candidate will have to enter
  • Define which one of the interview tools you would need: code editor and whiteboard are available now, but we will add more tools soon.
  • Just a click more on the “Create Meet” button, and bam – you have created a new Meet in 10 seconds.

Frictionless interviewing

After joining the Meet, the interviewer can do the next things without leaving the Code addon and Microsoft Teams:

  • Invite a candidate who doesn’t need to have a Meet.rs account to collaborate
  • Have a real-time code collaboration with other participants
  • Select any of the 16 supported languages like Php, Typescript, C#, Python, Go, Rust, Swift, etc.
  • Run the code and see the results
  • Have a real-time collaborative whiteboard.
  • Take code editor and whiteboard snapshots during the interview, which can be used for writing feedback.
Collaborative code editor

Once an interview is done, the interviewer clicks the “End Meet” button to put Meet into a read-only state so the candidate couldn’t modify the code after the Meet ended.

Et voila! Frictionless coding interviews in Microsoft Teams so you can focus on candidates and not on tools.

If you have any ideas on how we can further improve interviewer experience on Microsoft Teams please do not hesitate to contact us over email office@meet.rs, Twitter @meetrshq or post a comment down 🙂

The biggest problem recruiters have with remote interviews

Before we started working on Skype Interviews, we decided that we need to get out of the building and talk with a few recruiters from both Microsoft and from a number of external companies (some of them as famous as Microsoft).

As we know that in B2B “pain sells,” we started every interview with recruiters by asking them a simple question: “Tell us about an activity they hate the most or which is taking the most time and energy on your day to day work?”

We had a list of hypothesis what we expected to hear, but we were cautious not to taint recruiter feedback so we could not share any of that with them.

To our big surprise, almost every single recruiter gave us the same unexpected answer:

Scheduling interviews

“It takes too much of my time and I hate doing it. ”

We even heard that a few companies hire full-time contractors (“admins”) whose only job is to communicate with interviewers and candidates to agree on acceptable dates. One of the companies shared with us that they hire on average one admin on seven recruiters, and they have A LOT of recruiters. That’s a lot of money also spent just on scheduling interviews.

Why can’t we use some of the existing solutions?

This answer was not on our list at all, so once we saw this is the consistently top reason for most of the recruiters we have talked with, we had to reconsider and ask more about it.

“Why not using just Outlook/GCal? Why is Calendly not solving this problem? What is so special about your scheduling that is so hard to be solved?”

What we learned is that scheduling an interview is significantly different, then scheduling regular meetings in a few significant ways:

  • The recruiter is scheduling the interview without even participating in it.
  • The candidate and interviewer do not know each other.
  • The candidate has no access to the interviewer calendar.
  • Not every free slot in the interviewer calendar is acceptable by the interviewer for conducting an interview.
  • With candidates for more junior positions, the interviewer is the one driving the scheduling dates. When candidates are more senior and harder to hire, in some cases, they are the ones selecting the dates, and the interviewer adapts to that.

Based on that experience, we have decided to have a “specialized Meet scheduling,” which will be focused on doing precisely and only that so it can stay as simple as possible.

Automatic interview scheduling in Meet.rs

Like many other advanced features, automatic scheduling is located in the pro application (https://meet.rs/pro). To access it, click on the “Create New Meet” button and go to the second creation step – “Scheduling.”

As you can see, there are four options on how a recruiter can schedule a Meet:

  • No scheduling (Meet can start at any date and time)
  • Manual scheduling (The date and time of a meet is already agreed)
  • Automatic scheduling – the interviewer is the first to propose a few dates for Meet, and the candidate will pick some of them. 
  • Automated scheduling – the candidate is the first to suggest a few Meet dates, and the interviewer will select some of them. 

Proposing timeslots

In the case of automatic scheduling, Meet will send an email to the interviewer or candidate with a Meet scheduling app link.

Upon clicking on the email link, the user is sent to a scheduling app that offers two ways of proposing timeslots – quick and calendar.

In the Calendar propose mode, the timeslot proposer can import your Google or Microsoft calendar data, overlay them on the calendar and use that visually identify suitable timeslots.

Quick propose is supporting the use case where the proposer wants to enter a few predetermined timeslots in the simplest possible way.

Here you can see a simple UI where the proposer enters three dates and times. To assist a proposer in picking the times suitable for both participants, Meet shows on the bottom information about the other participant’s time zone. Also, for every entered proposal, Meet will show the proposed time in the other participants’ timezone.

Once a “Finish proposing times” button is clicked, Meet will send an email to the next participant with proposed timeslots.

Selecting from the proposed timeslots

Like proposing, the participant can select to see proposals quickly or overlayed over the calendar.

In a quick-select mode, all of the proposals are just shown in the form of a list where the participant has to select one of the proposed timeslots.

If none of the proposed timeslots is acceptable, the participant will pick “None of the above” options, and then the same participant will be asked to submit three new timeslots, which will be sent to other participants. 

The process repeats until all of the participants agree on one timeslot at which moment all the participants get a confirmation email with a join link and .ics calendar file attached

All this is done automatically without any involvement of the recruiter – problem solved.

We are early in the development of the scheduler, and it will improve a lot in 2021, but even now, you can get the gist of how we approach solving real problems of recruiters in doing Meet by taking the most frictionless and direct solution of the exact problem recruiters have.

Nice to Meet you!

I want to welcome you to a blog where I will share my thoughts on modern-day recruiting tools and practices, share interesting things I learn while working on Meet, and provide behind-the-curtain insights on the development process.

I plan to focus most of January on content creation so if you are interested in remote interviewing, follow us on Twitter @meetrshq where we will post updates.

For this first post, I wanted to answer a few fair questions which I heard many times already, so they are an excellent way to start.

Why does anyone need Meet.rs?

There are A LOT of fantastic tools today available – some of them made by the biggest companies in the world investing millions of dollars in them, so why would you make another one?

Here are just some of them:

  • Video calls: Zoom/Teams/Skype/Google Meet/…
  • Coding editors: CodeSandbox, CoderPad, CodePen, VS Code Live, etc.
  • Whiteboards: Excalidraw, Microsoft Whiteboard, CoderPad, Google Draw, etc.
  • Scheduling: calendly, x.ai, Microsoft Bookings, etc.
  • Existing interviewing solutions: codility, codesign, Haker Rank, etc.

As you can tell, just based on a few examples, it is a very saturated market where shabby upstarts like Meet seems to have zero chance to survive.

I’m afraid I have to disagree with that premise based on two fundamental hypotheses:

  • A single specialized tool that does a very good job in all needed areas is more desirable than a plethora of different tools perfectly doing each separate job.
  • A fresh upstart can focus on the simplicity and frictionless of that unified solution, where big enterprise solutions can’t afford due to the complexity convection they accumulate over time.

Both of these things are critically important due to the nature of interviewing, which is an ad-hoc activity between parties who don’t know each other. 

In some ways, interviewing software is like a Starbucks disposable cup.

You don’t care how it looks and what features it has as once you are done drinking, you toss it to the trash bin and forget about it. 

Why now?

A few years ago, a few of us on Skype decided to invest our own time and passion and created a “Skype Interviews” product even that was not our job at all. The product got a ton of attraction both inside of Microsoft and outside of Microsoft. It was also a very loved program – we asked participants to rate every interview with 1-5 stars and had insanely excellent ratings (~70% 5* ratings). We were getting emails where users were telling us, “I am totally enchanted with your app.”. 

Funny enough, there were a few anecdotes where Microsoft execs talking with a group of non-MS people, the moment after they will mention being from Microsoft were asked: “Why Microsoft can’t do more products as cool as Skype Interviews?”

And what about when the CEO of Microsoft seeing the Tech Crunch article and sending an email to “who is who in Microsoft” saying that he really likes the idea and project?
Satya sending an email about something a few of us “renegades” did pretty much on our own? Can’t be much better than that in Microsoft 🙂

Still not convinced?

Rahul Vohra of Superhuman fame defined a way of measuring PMF by asking users what they will do if the superhuman app will be gone. The higher percentage of users who will be angry/disappointed, the bigger PMF.

In the case of Skype Interviews, it was not even a hypothetical question as we announced that we are shutting it down.

The number of emails we were getting for months from both Microsoft users and external users was staggering, with users being pissed, angry, expressing disbelief, asking if they pay for the service, that will help, etc.

I have never seen a product that users love more and which had a bigger PMF in my professional career, so when a final decision was made to be shut down, it broke little my heart and haunted me for years.

That’s why as soon as Outreach allowed me graciously to invest my free time in this area, I got involved, and voila – meet.rs is there with hopefully preserved spirit of Skype Interviews. 

This took years, so I am aware that it is a bit (too) late but better late than never. 🙂

Why you?

As I described above, meet.rs is not a “just business” type of thing for me, and because of that, I am delighted to invest every single free moment I have in it. If you know me personally, you know that I am like a pitbull catching the bone when I am into something – never letting it go.

I’ve been working in front-end teams for the last seven years, so building React apps is something I am not afraid of. Part of that past experience is working on webrtc, extensibility, addons, platforms, remote code execution, etc. All of them are unique skills that can be obtained only by banging your head to the wall long enough, and boy, did I do that banging in the past 🙂

Luckily for Meet, before I become a front-end developer, I spent 12 years working as a backend developer and architect, and besides doing react apps, I know how to do cloud-scale cost-efficient Azure backends. 

On top of that, I have a unique mixture of domain knowledge needed for this: 

  • 7 years in Monster.com Recruiter division learning about Recruiter business
  • 7 years in Skype working on various Skype clients and Skype Interviews

I was in some parts of my career developer, solutions architect, manager, customer support, sales guy, startup owner, etc.

If not me, who else? 🙂

That’s it for the first post – need to go back now to Firefox weird microphone security model

Any other questions you want to be answered about Meet?