Online platform that matches teachers with schools abroad

Create an online platform

About the project

teach.fm is an online platform that matches teachers with schools all over the world. teach.fm currently specializes on the ESL market (English as a Second Language).

For teachers, teach.fm provides personalized job search experience that is 100% free for them to use.

For schools and their HR managers, teach.fm provides tools that allow them to hire teachers cheaper and faster.

Landing page for teachers

I am co-founder and CTO with teach.fm, and I'm responsible for everything related to IT in this project - system administration, backend and frontend development, web design.

I've also developed machine learning and AI-based tools that automatically match teachers with schools and guarantee that candidates receive relevant offers only.

What teach.fm offers to teachers

The biggest struggle for ESL teachers is that they have to use job boards rife with scam offers. It's hard for a teacher to verify whether the employer is legit, especially since they're constantly receiving spam from shady recruiting agencies.

We solve these problems in a few ways:

  • Every school on teach.fm is verified, since we have zero tolerance for scammers
  • Teachers have full control over which schools can contact them

We also provide teachers with a convenient job search that lists all conditions upfront, thus guaranteeing unprecedented transparency on the ESL market.

Online jobs search

We noticed that many job boards in the ESL market have boring, text-only job descriptions, so we went down a different route - all our job snippets are displayed as vibrant and colorful cards which show only the most important info.

Of course, you can open any job post and learn more about it:

Job post on teach.fm

Our onboarding process is extremely smooth, and teachers keep complimenting us on how convenient and intuitive teach.fm is in comparison to other ESL-related websites. It all starts from a simple sign up form.

Sign up form

Then candidates are asked to enter their qualifications, experience and preferences. All questions are presented as a simple quiz, and the process is so easy to follow, more than 90% of teach.fm users finish it to the very end.

One of the steps from teacher's onboarding process

When teacher finishes onboarding, they can use their personal dashboard to track status of their job applications and respond to interview invites they receive from employers.

Application section in teacher's dashboard

Teacher can also edit their public profile, which schools can view while looking for new candidates. Note, though, that contact info will not be shared with the school unless candidate's application is accepted by employer OR teacher accepts employer's interview invite - more on that later.

Teacher's profile, as seen by its owner (hence why contact info is displayed)

And this is what employers will see at this point when viewing this teacher's profile:

Teacher's profile, as seen by a school that has no access to teacher's contact info

What teach.fm Offers to Schools

Many job boards on the ESL market don't bother making candidates easily searchable, and instead force schools to download candidates' CVs and process them manually.

Our approach is different. We let schools search candidates in our teacher directory based on multiple criteria, plus we take school's preferences into consideration and automatically prioritize candidates that fit their requirements.

Teacher directory allows schools to filter teachers by their qualifications and experience

Schools can use their dashboard to track all the current applications, and accept only fitting candidates.

Applications in schools's dashboard

Unlike ESL job boards, teach.fm doesn't ask schools to pay for job posts. After interviewing our clients, we realized that paid job posts generate too many unrelevant applications and it's highly ineffective.

That's why teach.fm aims to provide schools with applications that fit their requirements.

Since we guarantee that teacher profiles on teach.fm are up-to-date, schools can schedule interviews only with teachers that fit them. Likewise, when they receive applications from candidates, they can hide irrelevant ones and only accept those that match their vacancy.

This is achieved thanks to interview invites, which schools can use to invite teachers for interview or to accept their applications.

Interview invites

When schools subscribe to one of our paid plans, they get a certain number of interview invites every month, which they can use to invite teachers for interview or to accept applications. This allows employers to ignore teachers that don't fit their requirements and work only with relevant candidates.

Pricing plans for schools

There are two main ways schools and teachers can interact with each other before they've matched:

  • Teacher applies to school's vacancy
  • School invites teacher for an interview

When teacher applies for a job, the school can browse teacher's application in their dashboard and choose whether to accept or ignore it.

Pending application in schools's dashboard

If they ignore application, it will be hidden from employer's dashboard.
If they accept it, one interview invite will be deducted, and a match will be created, meaning that both parties will now be able to view each other's contact info and schedule an interview.

Accepted application also adds candidate to the list of resumes available to the school.

When school invites teacher for an interview, one interview invite is deducted immediately, and now the teacher decides whether to accept or ignore their invite.

Ignored invites will be hidden from teacher's dashboard, and the school won't get access to teacher's contact info.

If teacher accepts this invite, a match is created, allowing teacher and school to view contact details of each other.

When teacher accepts interview invite in their dashboard, school is automatically added to the list of available contacts

Thanks to that, no time is wasted on meaningless back-and-forth emails: teacher and employer can contact each other only if there's a mutual interest, and it only takes a single click to accept or ignore a request (i.e. invite or application).


When teacher accepts employer's invite or when employer accepts teacher's application, a match is created.

This means that teacher and employer can now view each other's contact info and start scheduling interviews.

Teacher's profile, as seen by school that matched with them
School's profile, as seen by teacher who matched with them


Our approach to recruiting has proved its effectiveness - thousands of teachers and hundreds of schools trust teach.fm and use it every day to connect with each other.

teach.fm clients

I am proud to be a part of teach.fm team, and I am glad that my contributions help revolutionize the ESL industry by making it more transparent.

If you like my portfolio and you would like to hire me for your project, feel free to contact me!