Who is an IT architect and how is it different from a line engineer?
You open HH – and there the need for IT architects is simply huge. You start reading and you are surprised. Because these vacancies for the most part have nothing to do with architecture.
![](https://habrastorage.org/getpro/habr/upload_files/261/07a/337/26107a337c1aa1b9d762a2e74ff3c523.png)
Let's figure it out.
The scope of activity of an IT architect is described by just one simple picture. Or even a formula of three characters, no more and no less.
“A → B”
![](https://habrastorage.org/getpro/habr/upload_files/425/a4d/35b/425a4d35ba9cf9f49124e67f545634ac.png)
All!
True, in a certain sense, this formula is extremely reminiscent of the famous “E = mc2”. To understand its meaning, you need to study physics and mathematics for 12-15 years.
Therefore, we will analyze each of these three symbols.
“A”. Or, as they often say, “AS IS”.
![](https://habrastorage.org/getpro/habr/upload_files/597/06f/711/59706f711b690cdece25247261bef7fc.png)
This is the initial state of the system. There is an ancient folk wisdom “don’t say hell until you see where you jumped,” but in this case it is extremely important to also understand where you are going to jump from.
It is extremely important to know exactly what is happening now and what exactly is unsatisfactory in the current situation.
“B”. Or, as they often say, “TO BE”.
![](https://habrastorage.org/getpro/habr/upload_files/4e5/f4d/979/4e5f4d979f7f552a421d3add9f566b6d.png)
This is the target state of the system. The same “where he jumped.” Only it must be described as an independent state, in isolation from everything else, and must be characterized by absolute indicators (not relative compared to the original ones).
In some cases, B (to be) is the only state that the architect operates on, because we are talking about a green field situation, i.e. initial creation of the system (Point A is zero). The target state must be characterized by formal compliance with the target indicators (technical specifications for the design).
“→”. It’s also “transformation”.
![](https://habrastorage.org/getpro/habr/upload_files/ba3/ca3/cba/ba3ca3cba0b970d9b073a690a2c45e2f.png)
This a set of technical and organizational measures and meanswhich should transfer the system from state A to state B.
An architect who misses any of these points is doing something unknown.
Let's look at a few common problem situations.
1. We’re running somewhere with everyone
![](https://habrastorage.org/getpro/habr/upload_files/c07/5ed/622/c075ed622fb3b6a820db73628e500042.png)
This is the norm rather than the exception. The most common situation. It’s hard to understand what’s going on here, there hasn’t been an audit for several years, but we’re running not because we have to, but because, well, they still run there, everyone does it. Why is it unclear, there are no formal criteria, there is no architecture.
2. “Tooth hurts”
![](https://habrastorage.org/getpro/habr/upload_files/7d6/d4e/69d/7d6d4e69d15c25c5ea79eea1be084595.png)
Suddenly it became very bad and I urgently needed to escape. What exactly was bad, where to run, why exactly there – no one understood. Pain turns off rational activity.
3. AAAAAAAAAAgile!
![](https://habrastorage.org/getpro/habr/upload_files/954/4ab/66c/9544ab66cc6b2d6580a06f6f71769ff0.png)
We participate in all the crackling cargo cults. Sui 1C in Kubernetes!
This is situation number 1 taken to its logical conclusion.
4. “Here’s the specification, we’ve already bought everything”
![](https://habrastorage.org/getpro/habr/upload_files/5f1/1d8/599/5f11d8599f43c99f7ef1834d5dc7004c.png)
This is also more the norm than the exception. Everything has already been sold to the IT director, everything has been agreed upon. All interested parties were satisfied.
There is no audit, no formal description, no target picture. There is only a specification for equipment that will arrive in a couple of months.
What should the target picture look like?
![](https://habrastorage.org/getpro/habr/upload_files/777/09d/c59/77709dc5920ba99a5c2321ce544fa9fa.png)
Architect vs line engineer executive
I have a list of interview questions for infrastructure architects. Among them there is this
“You need to transfer 100 TB of data from a branch in Vladivostok to Moscow. The channel is 100 megabits, during the working day it can only be used for 30 megabits. On average, a failure occurs once an hour and you have to retransmit from 5 to 10% of what was transferred in the last hour data. How long will the data transfer take?”
Once again, someone accidentally dug it up and a discussion began in the chat.
How much?
Can i?
What are the requirements?
What if I'm like this?
Insufficient data.
This is the approach of a line engineer who has a mathematical problem. No input – no answer. An old fable can serve as a very good analogy.
One worker came to the master and said:
– Master! Why do you only pay me five kopecks, but Ivan always pays five rubles?
The master looks out the window and says:
– I see someone is coming. It looks like they are transporting hay past us. Come out and take a look.
The worker came out. Came in again and said:
– True, master. Like hay.
– Don’t you know where? Maybe from Semyonovsky meadows?
– Don't know.
– Go and find out.
The worker went. Enters again.
– Master! Exactly, from the Semenovskys.
– Do you know if the hay is the first or second cut?
– Don't know.
– So go and find out!
The worker came out. Coming back again.
– Master! First mowing!
– Don’t you know why?
– Don't know.
– So go and find out.
I went. He came back and said:
– Master! Five rubles each.
– Don’t they give it away cheaper?
– Don't know.
At this moment Ivan enters and says:
– Master! Hay was being transported past from the Semenovsky meadows of the first cut. They asked for 5 rubles. We bargained for 3 rubles per cart. I drove them into the yard, and they unload there.
Architect is a person who is not a mathematical function of input data, but capable of independent situation analysis and forecasting data or answers based on industrial practices, personal expertise, or through connections and acquaintances who will suggest.
Those. an architect will write a mathematical function, just like an engineer, but if there is a lack of data, he will not stop performing the task, but will solve the problem in general, substituting “some data.” In the case of an interview for an architect, the key question is not whether the candidate can write a linear equation with fractions (5th grade level), but whether he understands how it is calculated and what it depends on. It is necessary to demonstrate correct reasoning and logic, and not to give a single mathematically correct answer.
It’s trivial because there may not be a mathematically correct answer at all (and that means the requirements need to be changed), there may be a suboptimal answer, there may be many suboptimal answers. There may even be many mathematically correct answers. It is important to be able to understand how they are obtained and how you can choose between them and on what basis.
And the answer “three weeks” will only show that you can do 5th grade math.