Let’s look at a few DevOps job openings from different companies.

  1. We are ready to
    meet with you if you:
  2. Know Zabbix and
    what Prometheus is;
  3. Iptables;
  4. Graduate
    Student of BASH;
  5. Professor in Ansible;
  6. Linux guru
  7. Know how to use
    debug and find application problems together with developers (php / java /
    python);
  8. Routing does
    not cause you tantrums;
  9. Pay significant
    attention to system security;
  10. Backup
    “everything and everything”, and also successfully restore this “everything and
    everything“;
  11. You know how to
    configure the system so as to squeeze out of the minimum – the maximum;
  12. Post
    replication before to sleep on Postgres and MySQL
  13. Setting up and
    adjusting CI / CD for you is a necessity like breakfast / lunch / dinner.
  14. Have experience
    with AWS;
  15. Ready to
    develop with the company;

So:

1 to 6 –
system administrator

7 – a bit
of network administration, which also fits into the system administrator,
Middle level

8 – a bit
of security, which is necessary for the mid-level system administrator

9-11 –
Middle System Administrator

12 –
Depending on the tasks set, either Middle System Administrator or Build
Engineer

13 –
Virtualization – Middle System Administrator, or the so-called CloudOps,
advanced knowledge of the services of a particular hosting platform, for the
efficient use of funds and reduce the load on the service

Summarizing
this vacancy, we can say that the Middle / Senior System Administrator is
enough for the guys.

By the way,
do not strongly separate the admins on Linux / Windows. Of course, I understand
that the services and systems of these two worlds are different, but everyone
has one basis and any admin who respects himself is familiar with one or the
other, and even if he is not familiar, it will not be difficult for a competent
admin to get acquainted with this.

Let’s consider
another vacancy:

  • Experience in building highly loaded systems;
  • Excellent knowledge of the Linux OS,
    system-wide software and the web stack (Nginx, PHP / Python, HAProxy, MySQL /
    PostgreSQL, Memcached, Redis, RabbitMQ, ELK);
  • Experience with virtualization systems (KVM,
    VMWare, LXC / Docker);
  • Knowledge of scripting languages;
  • Understanding the principles of operation of
    networks of network protocols;
  • Understanding the principles of building
    fault-tolerant systems;
  • Independence and initiative;

In this
case:

1 – Senior
System Administrator

2 –
Depending on the meaning in this stack – Middle / Senior System Administrator

3 – “The
cluster did not raise, but created and managed virtual machines, there was one
Docker host, access to containers was strained” – Middle System Administrator

4 – Junior
System Administrator – yes, the admin is not able to write elementary
automation scripts, regardless of the language, not the admin.

5 – Middle
System Administrator

6 – Senior
System Administrator

Summarizing
– Middle / Senior System Administrator

Another
one:

  • Experience in DevOps;
  • Experience in using one or more products to
    form CI / CD processes. Gitlab CI will be an advantage;
  • Work with containers and virtualization; If you
    used docker – fine, but if k8s – great!
  • Experience in an agile team;
  • Knowledge of any programming language;

Let’s see:

1 – Hmm …
what do the guys mean? =) Most likely they themselves do not know what is
behind this

2 – Build
Engineer

3 – Middle
System Administrator

4 –
Soft-skill, we will not consider it yet, although Agile is one more thing that
is interpreted as conveniently.

5 – Too
voluminous – it can be a scripting language, or compiled. Interesting, if he wrote
at school on Pascal and Basic its ok for them? =)

I would
also like to leave a remark regarding 3 points in order to strengthen the
understanding of why this point is covered by the system administrator.
Kubernetes is just an orchestration, a tool that wraps direct commands to
network drivers and virtualization / isolation hosts in a couple of commands
and allows you to make communication with them abstract, that’s all. For
example, take the ‘build framework’ Make, which, by the way, I do not consider
as a framework. Yes, I know about the fashion of shoving Make anywhere, where
it is necessary and not necessary – to wrap Maven in Make, for example,
seriously?

In essence,
Make is just a wrapper over the shell, which simplifies the compilation,
linking, compilation environment, as well as k8s.

Once, I
interviewed a guy who used k8s in his work on top of OpenStack, and he talked
about how to deploy services on it, however, when I asked about OpenStack, it
turned out that it is being administered, as well as being raised by system
administrators. Do you really think that the person who raised OpenStack,
regardless of which platform he uses behind him, is not able to use k8s? =)

This
applicant is actually not DevOps, but the same System Administrator and, to be
more precise, Kubernetes Administrator.

We
summarize again – Middle / Senior System Administrator will be enough for them.

A little
about numbers

The spread
of the offered salaries for the indicated vacancies is 1500-3500$.

Now I would
like to draw a parallel between the monetary rewards of System Administrators
and DevOps Engineers.

In
principle, to simplify, you can scatter grades of experience, although this
will not be accurate, for the purposes of the article is enough.

An
experience:

  • under 3 years old – Junior
  • under 6 years old – Middle
  • more than 6 – Senior

The
employee search site offers:

System
Adminsitrators:

Junior – 2
years – 800$.

Middle – 5
years – 1100$.

Senior – 11
years old – 1800$.

DevOps
Engineers:

Junior – 2
years – 1800$.

Middle – 3
years – 2500$.

Senior – 6
years old – 3700$.

According
to the experience of “DevOps”, we used the experience, at least somehow
affecting the SDLC.

How we can see
– in fact, companies do not need DevOps, and also that they could save at least
50 percent of the originally planned costs by hiring an Administrator,
moreover, they could more clearly determine the responsibilities of the person
being sought and quickly close the need. Do not forget that a clear division of
responsibilities allows you to reduce staff requirements, as well as create a
more favorable atmosphere in the team, due to the absence of intersections. The
vast majority of vacancies are full of utilities and DevOps labels, however,
they do not really have the requirements for DevOps Engineer, they are just
requests for the admin administrator.

The process
of training DevOps engineers is also limited only by a set of specific works, utilities,
does not give a general understanding of processes and their dependencies. It’s
certainly good when a person can use Terraform to deploy AWS EKS, in
conjunction with the Fluentd side-car in this cluster and the AWS ELK stack for
the logging system in 10 minutes, using only one command in the console, but if
he does not understand the principle of processing logs and why they are
needed, not to know how to collect metrics on them and track the degradation of
the service, then it will be the same “someone”, able to use some utilities.

Demand,
however, creates supply, and we see an extremely overheated market for DevOps
positions, where the requirements do not correspond to the real role, but only
allow system administrators to earn more.

So who are
they? DevOps or greedy system administrators? =)