Scrum Master is not supposed to "command and control" the team. The team is supposed to be "self-managing". That is the crux of the scrum process. Lot of new Scrum Masters can't comprehend the fact that team does not need to "obey" their orders. Scrum Master's job is to create a good collaborating environment in which the team members self-organize to create the best product possible. When a person makes a transition from typical Project Manager role to Scrum Master role, it's frustrating for him/her to understand that Scrum Master should not make decisions but only provide guidance. I have seen lot of Project Managers in waterfall environment have demanded "do this because I said so". That will not work in Scrum.
I have played various roles in my career. I was a Project Manager for many years in waterfall environment. I worked as an Engineering Manager as well. When I made the switch to Scrum Master role, it was hard. I could only guide the process. I could not demand something from the team. At the same time, I was accountable for the success of the project. I was like... "what I got myself into?!". The success of the scrum process lies in the self-organization of the team. If the team needs to be directed by Scrum Master or Engineering Manager, the company will not see the benefits of Scrum. I will discuss more about self-organization in the following posts.
First thing a good Scrum Master needs to do is to drop the ego. It's easier said than done! If the team fails to deliver potentially shippable product at the end of the sprint, Scrum Master can not fire the developer and definitely can not scream at the team. Scrum Master needs to be diplomatic and understand why the team failed to deliver. A good Scrum Master discusses with the team and understand what caused the failure and will correct the root cause in the following sprint. Scrum Master's authority is limited. It takes experience, maturity and empathy to succeed as Scrum Master.
Another thing I want to point out is "Part-time Scrum Master". If your company has part-time Scrum Master, you are not really following Scrum. I have seen Tech Leads and Engineering Managers acting as Scrum Masters. That arrangement always failed because they have no time to manage the scrum process. If a Tech Lead plays dual role of Tech Lead and Scrum Master, can you guess what will happen if something is broken just before the product launch? Dual avatar will disappear. Tech Lead will be coding aggressively to fix the code. Scrum Master will be missing in the crisis. Ironically, Scrum Master is most needed in a crisis. There is also another problem that happens periodically when Tech Lead acts as Scrum Master. If there is a production issue or some important meeting, daily scrums will not happen because Tech Lead will be busy with other meetings.
Scrum Master's job is to make sure team is following Scrum process and there are no hurdles that prevent the team from honoring its commitment for the sprint. Scrum Master needs to do whatever it takes to accomplish that.