В качестве футболиста выступал за местные команды, в числе которых были «Орландо Пайретс» и «Морока Свэллоуз». Став тренером, Машаба долгое время работал с юниорскими и молодежной сборной ЮАР. В 2000 году специалист возглавлял «бафана-бафана» на Олимпийских играх в Сиднее. В турнире южноафриканцы с одной победой заняли третье место в группе и не прошли в плей-офф[1].
С 2002 по 2004 гг. тренер впервые в карьере возглавлял главную национальную команду. Позднее Машаба занимал должность главного тренера в сборной Свазиленда[2]. В июле 2014 года специалист вернулся на должность наставника «бафана-бафана», сменив на посту Карлоса Игесунда[3]. Ему удалось вывести сборную на Кубок африканских наций2015 года в Экваториальной Гвинеи. В отборочном турнире ЮАР соперничал с серьезными сборными Нигерии, Республики Конго и Судана. Без единого поражения коллектив Машабы уверенно выиграли группу и получил путевку в финальную часть турнира[4]. На Кубке Африканских наций южноафриканцы выступили неудачно, набрав всего одно очко. В конце 2016 году тренер был уволен со своей должности из-за конфликта с представителями федерации футбола ЮАР. Он произошел после матча отборочного турнираЧМ-2018 с Сенегалом (1:2)[5].
В 2019 году Эфраим Машаба непродолжительное время работал с клубом «Уитбанк Сперс»[6][7].