Software architects occupy a strange no man’s land in most business hierarchies. While they often work with programmers, they aren’t coders in the traditional sense. Nor are they truly part of upper management, even if they report to upper management. They sit somewhere in-between, which means that they need an unusual set of skills. If you’re in the market for a software architect, here are some of the skills they need.
Software development happens over time. That means it gets broken down into stages, such as planning, designing, building, and testing. There are many approaches to SDLC. A software architect should be familiar with at least one or two of the following:
Without working knowledge of at least one SDLC, a software architect can’t break up the process into workable chunks.
A good software architect also needs some project management skills. Even straightforward programming projects can take a few months. Your software architect needs to know how to set up reasonable goals and milestones. They also need to evaluate a reasonable timeline for deliverables.
Soft skills get short shrift in a lot of tech departments, but they are crucial for a software architect. The software architect must be able to talk with upper management and clients about the project in terms that make sense to a layperson. At the same time, they must be able to translate management and client feedback into language that programmers can implement.
The software architect will also likely take on a mentoring role for at least some of the programmers. This may take the form of career development advice or helping refine a coder’s programming skills. This is another area where sharp communication skills play a key role.
The need for computer science will vary from project-to-project. Projects with heavy data processing on a specific hardware set will depend a lot on computer science. Projects with low overhead meant for internal use will likely rely more on good user experience design. All things being equal, go for the software architect with computer science skills.
A software architect isn’t a coder who can get by with a few programming languages under their belt. Software architects need programming chops, SDLC knowledge, program management skills, and communication skills. In an ideal world, they’ll also bring some CS experience to the table.
Can’t track down a good software architect candidate? Let Joynus do the legwork and find someone with the right skills.