Click here to Skip to main content
15,890,438 members
Articles / All Topics

The Most Important Skill for Software Architects

Rate me:
Please Sign up or sign in to vote.
5.00/5 (1 vote)
15 Jan 2015CPOL3 min read 10K   3   4
The most important skill for Software Architects

I trust anyone reading this post title most probably is expecting to see something like UML Design, OOP Design, writing code, etc. I would not consider these in the required skills list, these are I would say, mandatory skills for a Software Architect. In my opinion, the most important skills for Software Architects are the communication skills.

The Importance of Communication Skills

In Microsoft .NET – Architecting Applications for the Enterprise (2nd Edition) book, the role of the software architect is defined as a person who ties together the requirements and specifications, and one of the most important responsibilities of the software architect is mentioned to be the acknowledgment of requirements.

This requires a lot of communication with people of different profiles and various knowledge of technical jargon (project managers, business analysts, potential users, etc.), and it is a natural expectation that a Software Architect should speak the language of business rather than the other way around.

Speaking the language of business is one part of the communication. Next comes communicating that business knowledge and requirements to development team. In my experience, I have seen several situations in which developers and business people were speaking about the very same solution, but the language terminology they used made everybody think that they are speaking about two different solutions.

It is the technical skills of planning, designing, development, and implementation of a software solution that qualifies one for the position of Software Architect, but in my opinion it is the soft skill of communication that is the most important skill for software architects and the skill that makes one an appropriate choice to be in that middle point of the team. As my boss says, we must talk talk talk.

What Can You Do To Improve Your Communication Skills?

Of course, there is no silver bullet to this problem. We humans tend to be unique in our behavior and skills, and as such the recommendations cannot easily be generalized. However, I have three points which I can recommend to anyone:

  1. Seek sincere advice from people around you, be it your family, your friends, or your colleagues. Generally, it is not easy to get someone to sincerely tell you what they think. People sometimes don’t like to tell what they think and sometimes they are afraid of being perceived as criticizing others, so they don’t tell you exactly how you are being perceived unless they get this freedom from you. Try to make people feel comfortable saying what they think about your communication skills and sincerely appreciate their comments.
  2. Spend some time with yourself thinking about your communication with others. What did you say, what was your intention to communicate and how was it perceived? This could be very helpful to find your weak points, on which you should focus to improve.
  3. Read the book How to win friends and influence people by Dale Carnegie. This is one of the best books I have read and I can confidently recommend this book to anyone. It has an immense set of advice which is very useful for improving one’s communication skills.

You can find plenty of advice from different resources on internet, from books, and from people around you about how to improve your communication skills. Pay attention to the input you get especially from people, you will appreciate it at the end.

The post The most important skill for Software Architects appeared first on arian-celina.com.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Architect
Albania Albania
I am a Software Architect, a web developer, and a Computer Science lecturer. I enjoy solving business problems by providing software solutions to them. My favorite technologies and fields of interest include ASP.NET, C# programming language, Java programming language, Javascript, jQuery, AngularJS, Web Services, REST, and mobile application development

Comments and Discussions

 
QuestionMore than translators... Pin
jediYL16-Jan-15 17:51
professionaljediYL16-Jan-15 17:51 
AnswerRe: More than translators... Pin
Arian Celina17-Jan-15 0:56
Arian Celina17-Jan-15 0:56 
GeneralCommunication is important Pin
Lucian Todor15-Jan-15 23:31
Lucian Todor15-Jan-15 23:31 
Very good article.
Communication is important! Never forget that in fact, all what we do is by people for people and each of us is unique.
GeneralRe: Communication is important Pin
Arian Celina15-Jan-15 23:48
Arian Celina15-Jan-15 23:48 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.