I started out my developer career focused on the kinds of skills that I thought were most important: the technical skills.
Consider the question: ...
For further actions, you may consider blocking this person and/or reporting abuse
very nice post. I agree that the word "soft" may make think that those skills are not so important and not so difficult to have or learn. But IMHO I don't really feel Core skills fitting.
To me, Core means something that is crucial, that represents something at its core. And if you are a developer the core of your profession, of your skillset, must be technical. If you are a doctor the core of your knowledge must be "medicine", if you are a teacher your core will be your proficiency over the topic of choice ( + the ability to teach it, otherwise you would be some other kind of expert, like a researcher or consultant).
To me, the soft skills are indeed the Outer Layer of the skills, especially because are those skills that are fundamental with your relationship with the outside world.
You might be the best dev in the world, and you could write the best algorithm while working alone at night in my basement. That could be perfect for a company that needs some special task done. But normally you need to communicate your ideas, discuss requirements, cooperate and collaborate with others. Therefore your tech skills are simply not enough.
So, yes if you don't have soft skills you cannot be a good Software Engineer. Still, you might be nice, good at expressing your opinion, accepting critics and even fun to work with, but if then I check your pull request and I have to stare horrified at the sloppiness of your implementation, well ... nope!
As I said. Agree with your concept, not much with the naming. But we all know that naming things is one of the 2 biggest problems in Computer science. (the other being cache invalidation and off-by-1 errors). ;-)
I really like this a lot. As someone who also realized that they were putting more into their technical skills rather than core skills (I like that term so much better!), I had to really remember that those need to be trained through practice as well (I still get super nervous trying to network at events, but it's getting better). Great post!
The problem with buzzwords is that they only generate buzz when you don't understand what they mean, and when you don't understand what they mean they are meaningless to you.
So you can say "core skills" and people will be "wow, these are probably the most important skills!" but then you tell them what you mean by that and the buzz will go away and they'll apply their original opinion on the importance of these skills. Either that - or they'll argue with you about the terminology.
I think names should be descriptive. They should not try to force a connotation - that never works, not in the long term. I do agree, though, that the term "soft skills" is doing the same thing - trying to use the choice of words to lower the opinion on them. And it doesn't work - it did not lead you or any of the commenters here that support the term "core skills" to believe these skills are not important, did it?
But why not pick a descriptive name, like "team skills"?
Team skills are only a little part of soft skills, many of them are personal skills or intrapersonal, but not team skills.
I've read a tweet recently proposing to replace "soft skills" with "catalyst skills". Can't find it again though, to link it.
Your vision of "core skills" is also very fitting. It's sort of a "human" vs "machine" and it might be even more important as time goes by. With automatization and AI looming ahead, these skills might be the edge someone needs to push ahead.
Soft/communication/writing/speaking or whatever you name it - is the skill recommended by Warren Buffet - one of the best investors. Soft skills are essential for out of the normal "9-5" work goals. To find/work with customers, to work/motivate partners, employees, to have girlfriend, spauce/wife, etc. I am a technical person myself but I've realized how much more important is all outside of the code...
The best point made was that core and technical skills are more strongly linked than some would believe. The core of software development is problem solving. Solving problems requires and understanding of those problems. That understanding can only be obtained by communicating with the people who have those problems. Thus, good communications are key to solving any problem.
Great article @marek . In fact, replacing "Soft Skills" with "Core Skills" is one of our hot-button issues. The challenge is twofold. First the Core Skills are difficult to assess in a traditional hiring process. Second, many hiring managers are more focused on hiring for Hard Skills (which often change quickly) or relying on academic pedigree (which has little predictive value of a good hire).
Here's another perspective as well if you're interested:
parkerdewey.com/blog/soft-skills-c...
βCore skillsβ is great. It makes me think of physical health and how you have to have a strong core in order to do just about everything else well β sit up straight, exercise without injuring yourself, not get a back ache while doing the dishes. Like, no matter what you are doing physically, a strong core is the foundation. Itβs something everyone needs no matter what they decide to specialize in or focus on.
I still like "soft skills" better, for me it implies that you have to be gentle, compassionate, and attentive to others.
Love this!
It made me think of this post on the First Round blog, on empathy driven development