Scrum is a process framework designed for new product development. Scrum is a guidance with few rules. But is it enough to do your product development? Probably not!
As soon as you put your product development in Scrum Framework, you see all kind of problems why you can’t work in that model. This could be your current Software Engineering practices or Organisational Structures or the Culture or something else. All Scrum is doing here is to expose those problems so that your organization can fix it. Now the question is how can you do your work in a different way or how to restructure your organization or what kind of cultural change you need to go through to deliver work the way Scrum asks.
Agile Engineering practices (like eXtreme Programming and DevOps) will help teams deliver software products in an agile way, Lean practices can help eliminate waste in the organisation and improve value throughput, Autonomous teams can deliver lot more value. Even departments outside product development are transforming to agile way like Servant Leadership, Agile HR, Agile Budgeting etc. so that they can support agile teams better.
So, Scrum alone is not enough to be agile and it is only a starting point. If you are learning Scrum, it’s also important to learn the relevant agile techniques for your role like XP, Agile Testing, Agile UI/UX, Agile Product Management, Facilitation, Coaching, Servant Leadership and so on. I have been an hands-on developer and architect for more than 15 years and I give lot of emphasis on XP and other Agile Engineering Practices in my CSM workshops. As a Professional Coach, I teach Facilitation and Coaching with lot of practice in my Advanced CSM workshops.