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.

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.

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:

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.

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.

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.

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

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.

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.

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.

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.

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.

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).
Matches
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.


Clients
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.

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!