Well I personally feel that the role they play strongly depends on the person. My values are reflected in my learning quite a lot because I value hardwork and ownership. I think empathy is super important when working in a team environment as it helps you to understand those around you. Self-awareness is really important in terms of holding myself accountable, knowing when I need a break and what learning approaches work for me.
The level of detail that we go into. When it's mentioned in the curriculum, you don't think it woul dbe something that would take up a fair amount of time or make such a difference to learning, but it does. You have to think about it a lot and really reflect on yourself and the way you work.
Probably learning self-awareness above all. It can be tricky to work out what works and what doesn't, coming up with a learning plan, reflecting on your processes. I found the learning plan the trickiest part because I've never had a learning plan before, so it was an interesting concept to think of.
Technical skills can be taught on the job and it's a fairly easy thing to teach too - each workplace might have different platforms that they work on, different approaches, etc. But interpersonal skills can't always be taught in a workplace, which is why it's important to know how to work with others, how to hold yourself accountable and how to problem solve on your own.
I don't think it's been a waste of time because it frankly doesn't take up much time. A lot of the concepts include how to practice mindfulness and self-awareness which are just good skills to have no matter who you are or where you work. Regardless of whether it's actually practiced every day, or once a week. It also gives a nice break from the constant learning of programming and lets you to just think of ways to improve mentally, emotionally and physically.