5 tips to became a Software Architect

Some simple tips to pursue a career as a software architect

Marco Domenico Marino
Quick Code
3 min readOct 17, 2019

--

Photo by Oli Dale on Unsplash

The world of the software engineering today is too extensive….

It is very hard to know all the techniques, the programming languages or the frameworks: is required to know all? Is it necessary to be omniscient?

In my opinion these are the 5 fundamental tips:

  • Languages omniscience
  • Abstraction layers
  • Philosophy of the programming languages
  • Specialization
  • Read, inform, study

Now we’ll start a travel in these 5 simple tips to keep in mind when you decide to begin a career in architecture of the software.

Let’s go!

Languages omniscience

Forget the possibility to know the syntax and the peculiarities of all programming languages.

Try to open for example the collection of the programming languages realized by Wikipedia and you’ll can see that the list is (almost) infinity.

The most important thing to do when start this career is to have an idea of the popular programming languages and ideally divide the languages for type, for example object-oriented Vs procedural or declarative Vs imperative; for any type keep in mind only the main concepts.

You’ll can study in deep the programming languages when you’ll need to use.

Abstraction layers

When you draw a solution, you don’t have to think about it concretely, but in the abstract.

In design phase is advisable to abstract from the reality, from the “how will be made” the software and concentrate only on “how will be”; it is well, but not required, design the software around a programming language and so make choice strictly connected with the selected technology.

When the design will be consolidated, then will come the time to shape the sketch around the programming language.

And if your team or you company or your client decide to change programming language? You have made a sand castle…

You don’t to realize design about a specific language but always make abstract design.

Philosophy of the programming languages

You don’t need to know the programming language, but the philosophy inside of it.

Starting to study or to read article about programming languages you can guess that there is a philosophy behind every languages, the philosophy of language.

It is not important to understand the symbols of the syntax but the meaning of the symbol and use this consciousness to increase your abstraction level when design a new architecture.

Don’t study the languages an end in itself, but impresses in your mind the meaning of the symbols.

Specialization

You don’t to have the conceit that you can design every type of architecture from front-end to back-end or from database to infrastructure.

It is advisable to make a choice about the architecture that you would to master.

As a builder architect can be specialized to design houses, streets or tunnels you need to decide the street to walk also considering your attitudes, your base know-how or your feelings.

In some cases, or when you will have a strong experience, you can decide to approach to hybrid architecture design: for example front/back-end (full stack) or back -end an database.

Choose a trajectory and follow it!

Read, inform, study

You don’t have to think that the knowledge that you have today are still actual in the future.

It is a very important practice to inform himself, to read the blogs about IT or technology in general, to subscribe to the newsletters, but the most important thing is to continue to study.

Study as for an exam at University, try to find the time to elaborate on about your reading and if you have found the right time puts into practice you knowledge.

Don’t stop the increase of your knowledge.

Thank you for your time!

--

--

Marco Domenico Marino
Quick Code

Software engineer and Architect @Accenture. Java is to JavaScript as Car is to Carpet…