Recently, these guys have received so much hype that almost no serious project can do without them. Only a single mention of this notion in one’s summary is able to get the applicant on the recruiters radar immediately. Admittedly, having such a team (or even one pro) on and running may be costly. Witness the highlight of the evening - DevOPs!
Having started not so long ago (official start in 2009), the DevOps movement does crazy things today. According to Puppet’s State of DevOps Report, adoption of this approach as a regular practice guarantees the company 200 times more frequent deployments, 24 times faster recovery and three times lower change failure rates. Sounds like a working thing, yeah? But what is actually hidden behind the catchy word and if it's worth the hype that has been raised around it? Let's deal with the specifics.
What is DevOps and what this beast can do
DevOps is the natural progression for ideas of “agile” development. It aims to bring together the development, testing and service communities as a whole. The wordplay “Dev” - development, and “Ops” - operations doesn’t convey the full sense, but reflects the basic idea embodied in DevOps - cooperation between various development (and post development) stages.
Technically, DevOps engineer connects:
- developers, who want to make a product as quickly as possible,
- with engineers supporting it.
Why need DevOps in the team
1. Faster, better, stronger: production speed and quality improvement
DevOps-specialists accompany the product life cycle from beginning to end, help put together all processes into a single system and describe them, reduce development time, increase its efficiency and safety. And if there is no such person in the team, then their function will be performed by someone else. This, in turn, might impose an additional burden on business and cause the decrease in productivity.
thumb_downThere is always a BUT
There is no room for solo players in DevOps. If you want to hire one guy who will just come and fix everything, you’d better avoid hiring this pro. Like any other specialist. Cause one can’t just turn on the Bat-signal on a rooftop of Gotham to buy the way out of trouble. If you want a change, you need to be prepared to change yourself. The whole system has to be strengthened and restructured.
thumb_upWhat to do
Well, the last sounds like a lot of work. But don’t let it divert your attention from the main task - doing your business. It's great when you already have a team of developers at your disposal who are familiar with the principles of Agile and other state-of-the-art approaches to optimize development processes. Or you can always hire a fully-equipped development team with the main “boss in the cave” - DevOps, and entrust them with the entire technical part.
2. Innovation and stability - you can have them both
Human nature being what it is, any person or a group of people almost always does what is required of them. And that’s not bad at all. As a result, you get several teams formed that have new features in priority while the others are solely responsible for stability.
If these teams don’t have much in common, then a zero-sum game begins. Which doesn't bode well for the business: “ops” want stability so much that new features and technologies may be sabotaged, and “devs” want to do nothing but innovative stuff because that’s the criterion the business evaluates them by.
To reduce delays due to endless meetings of two teams with completely opposite goals, one will have to establish a dedicated team or nominate a person responsible for both new features and product stability since they are the equal parts of user experience when using the service.
And again. New prospects and security are the different sides of the same coin. In order to get a full picture one needs a product team with specific priorities, focused on a common engineering vision of how their code works in production and if it meets the user’s expectations.
All the above has a significant impact on product quality assurance, because if you are personally responsible for user experience, then it’s up to you to find asap the most needed and profitable point between stability and innovation.
3. Automation of routine tasks to reduce workload and optimise skillsets
Historically, it has been shown that one can’t burden their highly qualified employers with a routine, at least for a long time. While unregulated tech staff, though more affordable, tend to mess everything up on a regular basis.
The way out of this situation is usually found evolutionarily or intentionally: the team starts separating requests depending on their complexity.
Sounds nice, but… As we all know, the more hops, the higher the latency is. Therefore, such an approach increases the time to solve any problem.
Faced with this challenge, one can come to a simple solution: let’s hire dedicated specialists that will automate routine tasks, and arrange a dialogue between people who support the product and those who deploy it.
4. Minimize risks in technology to ensure your startup is successful
These days no brilliant startup business plan can go without a technology development part. That means VC and PE investors should be provided with the details about the time, expertise, and resources required for the product design and development since these moments are essential for your startup’s technology risk measurement and follow-on management.
While assessing the investment risk for your startup, VC and PE investors are likely to be interested in:
The scope and type of development.
Does your startup import and adapt technology or generate new technology from scratch? What risks will you face if you aren’t able to build the technology? Is your product independent from the third-party services? What’s gonna happen if the third-party services fail?
How quickly may development occur? Is there a possibility that development will take much longer than expected?
Do you have access to expertise and experience related to issues in the area of development to design the required technology?
Are there strong, proven and efficient processes on the spot?
Security and intellectual property rights.
What legal or regulatory risks affect development? Is all of the code at your disposal?
It’s very important to know the answers to all these questions. Since development is always accompanied by some uncertainties, your VC and PE investors want to see that you recognize the risks and have a plan (or even two) how to mitigate them. So, who can help you with that? Development team with DevOps implemented undoubtedly can.
Cons of hiring a DevOps engineer
thumb_down1. DevOps isn't Cheap
According to Stack Overflow, DevOps developers are among the highest-paid IT professionals. They are salary leaders in India, Germany and the UK as well. On the one hand, this is due to the fact that this high value engineer has to constantly study a lot, literally absorbing knowledge; on the other hand, there’s hype and “fashion” for this profession.
Furthermore, technology investments in the automation tools required for DevOps are costly and it may take a great deal of time to identify and implement them. In other words, if you only have a few releases a year and velocity is not critical for you, DevOps may not be worth all this buzz-kill.
But if your competitive advantage is defined by faster delivery of stable software, improved collaboration, lower failure rates & faster recovery times, then you should afford the luxury of being supported by DevOps.
thumb_upWhat can be done
So you're going to need a DevOps, but you’d like to avoid superfluous expenses without decreasing efficiency. That means that maybe… maybe you've already started considering nearshoring your tech interests to Eastern Europe. And it’s nothing to be ashamed of. The attractiveness of this destination is huge, because the close cultural affinity and high quality of software development services are obvious.
Traditionally six IT outsourcing countries in Eastern Europe are considered - Belarus, Ukraine, Poland, Hungary, Romania, and Bulgaria. It is worth noting that the first one in the list offers competitive prices for software development. Thus, in Belarus local software outsourcing companies receive support from the national government and enjoy special tax rates. No to mention the world famous IT products created there - World Of Tanks, MSQRD, Maps.me, Viber, Flo, Weather Live, and more specific, but well-known in business circles products like PandaDoc, Kino-mo, FriendlyData, Dronex, Banuba, etc.
thumb_down2. DevOps efficiency is often difficult to evaluate at the start
This is an inconvenient truth for most business leaders in terms of budgeting, as DevOps is a supporting function and doesn't produce a sellable product. The development processes are traditionally considered according to the scheme “the order received --> the product delivered”. But Devops is in it for the long haul, not only thinking through the architecture of the product, but guaranteeing its successful operation for many years to come.
thumb_upWhat can be done
There’s only one course of action - be patient and trust your employer's expertise. Does everything run like clockwork after the release? Your DevOps is good :)
So, what are we into now?
DevOps is considered to be beneficial to any company aiming at increasing productivity of business and IT teams. It saves costs on maintenance and upgrades, eliminates unnecessary capital expenditure, standardizes processes for easy replication and faster delivery. And, as a result, leads to quality improvement, reliability and reusability of all system components.
But all the above is possible if you are ready for serious changes. Of course, a DevOps engineer can simplify and improve some processes on his own, but without the implementation of DevOps processes at all stages of business and product development, this will not give any grandiose effect.
Plus, when it comes to DevOps, experienced engineers will cost you a ton. One of the solutions for this challenge without decreasing efficiency is considering Eastern Europe outsourcing as a resource of best practices, flexibility and professionalism. And yet DevOps superstars may cost twice the cost of an average offshore project.
Anyway, the industry has already adopted DevOps as a regular practice over the past decade. It is not a universal remedy for all the corporate diseases ever possible, but most likely your company needs to try it out to some extent and find out for itself why the rest of the world can’t do without it the way it used to before.