One-Hot-Encoding for features!
Correct,  all categorical features should be encoded into binary digits so ML algo have more predictive power as categorised features cannot have order or magnitude ( be careful also about
multicollinearity if you use regression)
Some ML framework such as Catboost automatically encode features for you if you specify the feature index. I also like using python patsy to create input matrices