There should be a process which, yes, can lead to a teacher being fired.
Having worked in schools, I can tell you that there are many excellent teachers who are performing poorly because of the environment. Sometimes it is because the school is poorly managed. More often, it is because a given teacher is a poor fit for the school.
While it is possible to measure the outcomes from a teacher by various metrics, those metrics only measure outcomes. They rarely consider the social environment. When they do consider the social environment, they tend to do so from a negative perspective: by giving the teacher the benefit of the doubt based upon socioeconomic conditions. This sucks for the school because it reenforces lower standards.
What we should be doing is moving low performing teachers, or even average performing teachers, to different schools. After all, it would be terrible to dismiss an "average teacher" from a school with academically motivated students if that same teacher would raise the standards at a low performing school because they know how to motivate students who live in those communities. Likewise, it would suck to dismiss a teacher who crashed and burned at a low performing school when they know how to raise the bar for academically motivated students.
That said, if that teacher cannot perform well at any school that they are placed it, they certainly should be terminated.