Interview with two FreySoft DevOps engineers
DevOps, like other Agile practices, is focused on teamwork, where all aspects of the software lifecycle are considered, from the program code to the operation of the product by the end user. To get the insights about the DevOps expertise, read on our interview with two FreySoft specialists.
Image source: Freysoft
About the role of DevOps expert
Describe your experience in the information technology industry.
DevOps 1: I’ve been involved in the Development Operations (DevOps) industry for the last two years. Before I had been a system administrator until at one point I realized that there was nowhere to develop myself in this niche. I felt like a need to move further from support mode to something new.
Consequently, I got into the world of enterprise and faced with large scales. That was a massive infrastructure, a large stack of technologies and software. Here, it became clear to me why some practices poorly showed themselves in small projects and excellently are leveraged in big-scaled ones. Since then, the Development Operations niche seriously got my attention.
DevOps 2: I’ve been in the IT industry for over 15 years, having experience as a system administrator and Java/ Python / embedded developer. As a DevOps engineer, I have managed to work in large enterprises and a dizzying world of vibrant startups.
The title of a DevOps Engineer is an arguable one. Nonetheless, DevOps engineers are in high demand in the IT labor market. Some consider this person to be either a system administrator who knows how to code or a developer with a system administrator’s skills. What’s your point on this?
DevOps 1: The truth is in the middle. Specifically, a Development Operations engineer has a larger set of knowledge and broader horizons than a developer or system administrator.
DevOps 2: I would emphasize the crucial difference between the Development Operations engineer from the admin’s role. Admin doesn’t want to change – he wants stability. DevOps, on the other hand, constantly changes the infrastructure to dynamically meet the project’s requirements.
Then, how would you define the role of a DevOps engineer?
DevOps 1: It is the very developer who is skillful in software development and support as well as has a good technical background in the field of administration.
DevOps 2: This is a person who befriends the developers and project managers among themselves, builds architectural castles, and replaces people with technology;). I would also add that the DevOps engineer is a skillful tracker for soft and convenient pushing the code of devs into production.
A Development Operations specialist is largely considered to be a leader’s position, do you agree? What skills are prior?
DevOps 1: I might turn a DevOps engineer to the leader’s position since here the most important thing is your soft skills. To know certain technology/expertise is not discussed, it is the must-to-do thing, but communication, responsibility, flexibility are highly valued for this role.
Many might say that knowledge is prior, but it is absolutely impossible to know everything. In this case, you can always open the documentation, Google, observe some examples, and find/refresh your memory on unsuitable material. As well, it is crucial to control the direction and the number of technologies so that all this does not turn into uncontrollable chaos.
DevOps 2: Quite suitable about the leader’s position if the company is small. Since the Development Operations engineer is the developer of infrastructure and ready-made services, he affects the entire project. Thus, soft skills are prior.
Equally important is the expertise of the specialist since a couple of ready-made services can replace part of the developers’ work. Accordingly, the software works directly with services and DevOps can lead the entire process of development.
About the impact on business
Name three benefits the business gets if applying for the DevOps services
- quick release – the time to get a new feature in production
- improving product quality
- reduced recovery time after failures
- saving on resources
- automation of the development process
- getting clear goals and results
Read also “Monolith VS Microservices: Choosing the Right Architecture For Your Project. FreySoft Case.” to find more about DevOps’ impact on business.
Illustrate how Development Operations adopting is helping organizations achieve high performance by reducing the time between bug fixes, optimization, and continuous delivery through automation.
DevOps 1: Let’s take my recent project in FreySoft that I’ve been working on. We’ve made:
- moving from one SaaS provider Kafka to another that is more stable and not problematic,
- choosing the right migration strategy,
- writing auxiliary tools for migration,
- writing control modules for a new provider, etc.
These and other steps significantly helped our client to achieve the needed results.
DevOps 2: DevOps automates everything it has a touch to. It is the core of the development process. Not to mention, it speeds up delivery, improves coding, testing, and so on.
Further, DevOps removes a bunch of manual actions when finding bugs and maintaining them, adds auto testing.
In fact, the more technologies the Development Operations engineer knows, the more the business can use ready-made solutions, reduce the development time, optimize the processes.
About trends in 2021
What trends can you name surrounding the Development Operations niche in 2021?
- The necessity of migration to microservices – gives many advantages such as scaling, speed of deployment, fault tolerance.
- Kubernetes has a bright future – a good tool that is ideal for microservice architecture.
- DevSecOps – without security, there is no proper way. Business loses a lot of $$$ in case of personal data leaks.
You can be interested in “Artificial Intelligence as a Cybersecurity Tool for Small and Medium Businesses“.
- Cloud-native environment will hold more priority – clouds in most cases give more benefits than containing on-premise infrastructure.
- Infrastructure as Code – in an enterprise you won’t go far without this.
- Service mesh is being used more for our niche – it saves well when microservices need to be managed in order to maximize availability for the end-user.
- Python – one of the best program languages for automating everyday tasks and would keep its tendency in the near future.
DevOps 2: For now, the main prediction of mine is that ready-made services will be able to displace the developers. And ready-made pre-configured groups of services can reduce the load on Development Operations specialists.
About tips for novice engineers
From where does the engineer, who wants to enter the niche of Development Operations, needs to start?
DevOps 1: The novice needs to get the next:
- one of the cloud providers: (AWS, Azure, GCP)
- Python or Golang
- IaC: terraform, Ansible
- Orchestration tools: Kubernetes
- CI/CD: Jenkins, CircleCI, TeamCity
DevOps 2: Find and take any Development Operations course. Then get any startup for training.
What informational resources would you recommend staying tuned in the IT industry, including Development Operations news?
DevOps 1: I follow a lot of telegram resources for thematic channels such as #jenkins_ru, terraform_ru, #aws_ru, #aws_notes, #ru_hashicorp, #kubernetes, etc. but mostly Google is the best friend 🙂
DevOps 2: Conferences, YouTube, particular channels about technologies.
What would you advise your Junior colleagues to advance in their careers?
DevOps 1: Don’t be afraid to learn, develop and make mistakes. The more issues you face, the more experience you get and the better you become.
DevOps 2: The only skill you need is a desire to learn. The rest is a matter of time.