Hard and Soft Skills for Architects (2019-05)

This article first appeared on LinkedIn.

I was recently asked what I look for when I'm hiring new Solutions Architects and I thought it was interesting enough that I'd share more widely... Of course, every role in the world needs most of these things, so I've tried to highlight how they apply specifically to the Solution Architect role, and the impact of not having any particular skill.

You don't need to be amazing at all of these skills to be a good Solution Architect, and different people will have a different mix, but you do need all of them to some extent, and the more of them you have, the better you will be! The great news is that I think all of them can be learnt (with the probable exception of passion!), and while I'd rate myself higher for experience and coaching, I'm definitely still working on my panache ;)

I hope this is interesting and useful to people looking to build their careers as Solutions Architects, or to people who are looking to hire Solutions Architects.

Let me know what you think!

Domain-Knowledge

What is it? Knowing factual information about the domain - about the technologies, but also the why they are applied, the ecosystem around them, and the industry we work in. This differs from Domain-Experience insomuch as it's largely theoretical.

How do you use it? To know what 'should work', to answer questions, to understand how things are 'supposed to be done'

What's the impact of not having it? Without Domain-Knowledge it's very difficult to know how to solve a problem because you don't know what tools are available.

How do you get better at it? Study! Both 'book learning', but also hands-on experimentation. Learn about the industry by following news feeds, attending conferences, watching YouTube videos, attending meet-ups, and taking an interest in 'what's new'

Domain-Experience

What is it? Practical experience about what actually works and what doesn't actually work, but also experience about the types of problems that you typically encounter in a particular situation. Technology is full of patterns and analogies and things that are important in one space, usually turn out to be important in others.

How do you use it? To understand the types of problems you will encounter, to apply old solutions in new ways, and to guess what you might be missing, so you can check.

What's the impact of not having it? You understand how things are supposed to work, but you are unaware of all the things that typically go wrong in practice.

How do you get better at it? You can definitely learn from other people's experiences though things like case-studies. However, you really need to be exposed to real-world challenges, failures and solutions. Find safe environments to learn where you are exposed to the challenges, but not forced to solve them alone. Sometimes you have to step outside your comfort zone too, you learn when you do new things, and your comfort zone will catch-up.

Coaching Skills

What is it? The ability to use your Domain-Experience to help others to leverage their Domain-Knowledge, by asking smart questions, listening, learning as you go, and challenging people on things they might have missed. A good Solution Architect really listens, and can then help structure complex problems in a way that makes it easier for everyone to solve them.

How do you use it? To help scale your expertise into areas where you are not an expert. Not knowing 'all the answers' is ok, sometimes knowing 'all the questions' is better!

What's the impact of not having it? You are an expert, but you can only work on problems you have direct experience of.

How do you get better at it? There is definitely training around coaching, but it's also about 'letting go' of being the expert, asking the 'dumb questions', learning to really listen, and being genuinely interested in other people's work.

Relationship Skills

What is it? The ability to get along with people, especially people who are of a different temperament to yourself. Note that 'getting along with people' means having a functional relationship, not (necessarily) being their friend. Having a 'functional relationship' means that you trust each other, respect each other, and can collaborate as needed.

How do you use it? To scale your impact by drawing on other people's skills and abilities. By being able to be a 'functional' member of a project, someone people want to work with.

What's the impact of not having it? We have all met people that others have to work with, but don't want to work with. Typically such people have to add huge value in other ways to make up for the cost of having them involved in collaborations.

How do you get better at it? Recognise that people are all different, and avoid stereotypes. Look for common ground. Treat people with respect and expect to be treated with respect. Try to see the world from other people's perspective, listen to them, and understand their motivations and their concerns. Focus on the problem to be solved, and encourage others to do the same.

Credibility and Integrity

What is it? The reputation for knowing what you are talking about, and talking about it for the right reasons.

How do you use it? To ensure you are contributing in ways that are valuable, and that those contributions are heard and considered.

What's the impact of not having it? People don't listen to you, or they appear to listen but don't consider what you say.

How do you get better at it? Always, always, act with integrity, once you have a reputation for dishonesty, it's almost impossible to repair, and your credibility will suffer. Say what you mean, and mean what you say. Don't say things as facts when you aren't sure, don't withhold things when you are sure.

Passion and Tenacity

What is it? The love of what you do, and the willingness to invest in it, even when it's hard.

How do you use it? To inspire other people, and to inspire yourself to learn. More and more technology is about constant change, and constant learning, and it's impossible to do that if you are not passionate about what you are learning.

What's the impact of not having it? You do the minimum work, and you don't enjoy it.

How do you get better at it? Choose things you are passionate about, read and learn beyond what is immediately useful. Recognise that what we do can't be fun all the time, but that the reward for hard work is progress.

Panache

What is it? A way with words and/or a personal style that makes you stand out in a good way.

How do you use it? To get recognition for what you are doing, to drive credibility, and to ensure people pay attention.

What's the impact of not having it? You are great, but nobody knows about it.

How do you get better at it? It's hard, especially if you are naturally shy, but push yourself to contribute to meetings, to present at events. Think about your personal 'brand', and be prepared to be a 'bigger version' of yourself sometimes! Step a bit outside of your comfort zone and (as someone smarter than me once said), your comfort zone will expand back around you.