170 likes | 321 Views
Programming Soft Skills. Winning with Software Development. What are ‘Soft’ Skills?.
E N D
Programming Soft Skills Winning with Software Development
What are ‘Soft’ Skills? Soft skills is a sociological term relating to a person's "EQ" (Emotional Intelligence Quotient), the cluster of personality traits, social graces, communication, language, personal habits, friendliness, and optimism that characterize relationships with other people. Soft skills complement hard skills (part of a person's IQ), which are the occupational requirements of a job and many other activities. --Wikipedia
Some Programming ‘Soft’ Skills • Communication, Communication, Communication • Code Organization and Commenting • Documentation • Project Management • Sales Engineering
Communication *is* Key! • Explaining technical problems in both technical and layperson terms, depending on the audience • Comments, Notes, Documentation and Phone Support • Being verbose is always better than being terse
Why Communication? Everything in software engineering is knowledge based. The more knowledge you have available, the better the outcome – always. Proper communication reduces stress while it also reduces the TCO and increases the ROI for both the company and the client. Proper communication speaks volumes about your skills and qualifications – it’s literally what separates the boys from the men (the juniors from the seniors)
Code Org and Comments Always comment your code. Period. Organize your code so that it is readable by other engineers. Use variable and function names that are explicit and make sense for the purpose they are used.
Project Management Always leave verbose notes in any project management system. Describe what you’ve done, why you’ve done it, how you’ve done it, when it applies and who it applies to. (The who, what, when, where and why of your work) Be conversational to avoid writers block
Project Tracker Demo http://projecttracker.riaforge.org/
SVN/Git Comments Team projects require team communication Verbosity is always desirable Indicate the changes you’ve made and in what code – be as concise as possible
Additional Resources Winning with Software – Watts S Humphrey CMMI (http://www.sei.cmu.edu/cmmi/) http://techsoftskills.blogspot.com/ http://soft-skills-competencies.blogspot.com/