Як часто ми про них чуємо, але як мало ми про них знаємо. Часто, багато хто помилково вважає, що це лише про вміння розмовляти з колегами на роботі, вміння знаходити консенсус у дебатах тощо.
Soft skills — це ті навички, які безпосередньо не належать до програмування, але тісно пов’язані з ним.
Branching — вміння працювати в кількох гілках, навіть одночасно. Це вміння розбивати велику таску на безліч дрібних і навіть паралельних, а також вміння швидко перемикатися між контекстами.
Drawing — вміння доносити свої думки через діаграми. Навіть звичайні квадрати та стрілки замість UML краще, ніж нічого.
Writing — вміння писати документацію та висловлювати свої думки письмово. Не лише джуни мають уміти писати документацію.
Intriguing (інтриги) — уміння розуміти та вести політику в офісі. Це теж важлива навичка, хоча багато хто вважає, що «вони просто програмісти». Потрібно вміти розуміти, кому написаний код потрібний, а кому заважає.
Testing — вміння побудувати систему тестування, написати правильні юніттести.
Reporting — багато хто вміє кодити, але написати про це не можуть. Начебто і накодив, і протестував, і задеплоїв, але написати про це не зумів, що перекреслює працю за попередній тиждень.
Volunteering — вміння брати участь в активностях, за які не платять. Якщо їх робити, то кар’єра зростатиме: допомога в організації професійних мітапів, виступів тощо.
Delivering — багато програмістів не розуміють, як код з їхнього ноутбука потрапляє на продакшн. Потрібно вміти це розуміти.
Tweeting — вміння працювати із соціальними мережами. Краще відразу мати справу з тим, хто розуміє, що соц. мережі — зло, якщо користуватись ними 8 годин на день, якщо вступати в дискусії у твіттері, якщо в інстаграмі лайкати все поспіль. Соц. мережі також можна перетворити на інструмент для роботи.
Relaxing — якщо людина нічого не може сказати щодо того, як вона відпочиває, то краще не працювати з такими людьми. Якщо людина не вміє відпочивати, то вона матиме низьку продуктивність.
Charging — багато хто не вміє брати гроші за свою роботу і не може сказати, скільки вони коштують. Вміння торгуватися, вміння зрозуміти умови та порахувати вартість цих умов.
Asking — вміння правильно ставити запитання.