There is a good chance that you are currently at that stage in life when you’re faced with the dilemma of choosing your professional path – if that is the case, the following information will help you figure out whether DevOps could be a suitable option for you.
An efficient software development process in an IT company implies having a single unified cycle of collaboration between development, operation and deployment of the software product in order to help the customer (service, application, startup) spend minimum costs to launch and update their heavily loaded software products being used in real time (Production).
As a rule, a project team includes software developers who write the code, testing engineers who check its functionality and performance, business analysts who analyze the customer company’s business processes and propose the best possible logic for solving their challenge, and DevOps engineers who turn all of this groundwork into a working prototype, providing the deployment environment and an effective monitoring and maintenance system.
Today most new software products operate in clouds, so, rather than developing new applications “from scratch”, specialists apply a microservice architecture and the services provided by clouds and use ready-made application modules to solve specific tasks. A DevOps engineer is a builder who puts separate pieces into a complete product.
The DevOps philosophy implies the logic of supplying software as a ready-to-use product oriented towards achieving specific goals for the customer and/or the end users. In order to help you dive into the finest details of this subject, we have prepared a list of resources that will prove useful not only to future DevOps engineers, but also to specialists who’ve chosen a different direction.
Find the materials below and register for our DevOps-trainings.
· Training course "Computer networks" by Andrey Sozykin (free training course on computer networks; includes a series of short videos)
· "Networks and Protocols + Virtualization" by Viktor Ashik (video lessons about the operation of networks, protocols, fixing network issues, IP addressing, etc.)
· "Computer networks, principles, technologies" 1st edition by Viktor Olifer and Natalia Olifer (basic textbook on computer networks)
· "Computer Networks" 5th edition by Andrew S. Tanenbaum and David J. Wetherall (book on modern networking technologies)
Basics of algorithmization and/or programming:
· Scratch - Imagine, Program, Share (game-like resource that allows you to learn the basic concepts of programming while playing)
· Brad Miller and David Ranum "Problem Solving with Algorithms and Data Structures using Python" (interactive textbook on the basics of algorithmization and data structures)
· CS50 in Russian. Harvard course on the basics of programming (Harvard course on the basics of programming)
Universal learning resources:
· W3Schools Online Web Tutorials (general information about most aspects of web development)
· CMTV [Edge of Hi-Tech] (videos covering various technologies)
Basics of Windows:
· Training course Microsoft 20410D -- Windows Server 2012 R2. Installation and configuration (detailed training course on Windows Server 2012 R2)
Basics of Linux:
· Introduction to the Linux (introduction to the Linux operating system and its basic capabilities)
· "Unix и Linux System Administration Handbook" by Evi Nemeth, Garth Snyder, Trent R. Hein, Ben Whaley (Unix and Linux. A system administrator’s handbook)
· Video Guide to DNS (complete guide to DNS)
· DHCP Protocol | Computer Networks (special aspects of the DHCP protocol and its operation; with examples)
Basics of Active Directory Domain Services:
· "Introduction to Active Directory" by Mariya Berzin (introduction to Active Directory)
· "Basics of Active Directory Domain Services" by Ilia Rud (basics of Active Directory Domain Services)
Basics of virtualization:
· Introduction to virtualization with Oracle VM VirtualBox (introduction to virtualization using VirtualBox as an example; with practical examples)
Basics of databases:
· IT-Academy "Database" (online training course provided by the Hi-Tech Park training center)
· SELECT statement exercises: learning stage (learning resource with many practice exercises of various difficulty levels)