Demystifying The DevOps Role: Consider These Solutions Before Beginning The Transitions
March 12, 2018
Call it the buzzword of the decade, but DevOps has perpetually shifted the way development teams and organizations approach their work. DevOps adoption rose from 66 percent in 2015 to 74 percent in 2016 and when something is popular, there’s always a tendency to ride the rapids and hastily jump on board.
Consequently, many larger companies are incorrectly rushing to adopt the practice for the wrong reasons. They’re searching for ‘experienced DevOps’ or ‘senior DevOps’ partners to join their software teams, and software companies are cashing in on the opportunity by offering tons of DevOps positions to these organizations.
But the thing is, implementing DevOps isn’t as simple as hiring one person or a team of experts. DevOps is a culture that needs to be embraced by the entire organization. It’s a comprehensive, collaborative, and cross-team approach to managing the software development processes that relies heavily on automation and sharing – something smaller startups typically do well at. Once implemented, the culture removes silos and focuses on delivering real value.
So how can you correctly help your team to embrace DevOps if you haven’t implemented it off the bat? Consider these things before beginning the transition:
DevOps is not a role, nor a set of technologies
We often receive calls from companies, looking to hire DevOps experts to join their teams. But to those of us who work within a DevOps environment, this doesn’t make sense. While companies probably do need their teams to produce within a DevOps culture, it’s clear they don’t understand how the process functions as part of an organization. Because simply put, DevOps is not a role.
It’s almost impossible to hire an outside DevOps team and expect them to magically implement a functioning DevOps environment. Rather, the transition requires a strong cultural shift – with each team member becoming aligned with DevOps collaborative practices and philosophies, and working together to integrate long-separated systems and activities within an organization. So while many seek to hire new DevOps experts, it isn’t actually necessary: companies need to implement the change from within.
There’s no diving into DevOps head first – rather we need to become acclimatized to it inch-by-inch. Just like hiring one expert and expecting the rest of the team to match their level of expertise isn’t realistic, deploying DevOps technologies – or DevOps related tasks – doesn’t mean you’ve implemented DevOps, either. Practices like Continuous Integration (CI), Continuous Delivery (CD), and configuring Docker won’t do your team any good if they don’t truly understand how they function and how they correlate to DevOps processes. You’ll end up with software full of bugs in production or with unstable software and infrastructure, resulting in broken builds. A team needs to first embody the culture before rolling out new technologies.
You can train DevOps champions to oversee adoption
While hiring an outside expert won’t wondrously make an organization value DevOps philosophies, you can train DevOps Champions within your team to help everyone embrace the shift.
Since DevOps advocates a care for software – from conception to production – DevOps Champions thus need to be motivated by customer and business objectives, to help promote a sense of ownership inside the team. They need to be a strong and respected leader – but most of all, be well versed in DevOps culture and understand how it benefits the organization.
So how can DevOps Champions approach the transition? They need to coach the team to understand and implement the core DevOps values: Culture, Automation, Measurement and Sharing (CAMS).
They must work to foster an environment that encourages people to ask questions, cooperate with and learn from each other, and innovate and try new things. They need to teach the team the importance of automation, in order to save time and build consistency, and then measure improvement through data that’s accessible to everyone on the team – that way, there’s a clear understanding of why certain processes need to be changed. And finally, they need to encourage sharing tools to increase efficiency and create a higher level of engagement amongst employees.
Overall, DevOps Champions should encourage developers, quality analysts, business analysts, system administrators, among many other roles, to share a collaborative, iterative and committed approach to their work.
And for added DevOps support, it’s also a great idea to turn to experts or partners in the industry who’ve already made the shift. This allows for transitioning teams to understand the best practices, but also learn from other organizations’ mistakes.
DevOps experts can provide guidance and more specialized skills for larger companies
While everyone needs to understand DevOps processes and value the collaborative approach, not everyone on the team needs to be an expert in DevOps technologies. With complex problems, it’s fine for DevOps Champions to configure the tasks and lead the way. While startups might require less specialized team members – everyone needs to help out with every part of the process as the team is usually more interconnected – bigger teams may require multiple DevOps Champions for complex technical execution and to keep the scope of each project clean.
And here’s the great thing: once the entire team understands the culture, practices and collaboration-based work, the DevOps Champions can move to help other areas of your organization, or they can turn their focus to implementing sophisticated techniques, including ones like autoscaling, complex monitoring and high availability.
While it’s tempting to hire a team of DevOps experts and quickly deploy the technologies, there’s really no cutting corners when it comes to transitioning to DevOps. Implementing cultural change at an organization is no easy feat. But in taking the time to correctly help your team embrace the DevOps culture, one day you’ll turn around and realize that everyone at your organization is in fact, a DevOps Champion.
For more info, please visit https://www.pslcorp.com/it-outsourcing-services-companies/
All Hands on Deck: When to Bring on Extra Help with Your Digital Transformation process
March 11, 2018
AirBnB recently earned the top spot on CNBC’s Disruptor 50 list, and was estimated to be worth as much as traditional hotel giants Hilton and Hyatt combined. Nowadays, not moving fast enough to embrace a digital transformation can cost even the most well established incumbents a large chunk of their business.
However, the threat of digital disruption is not new. Most Fortune 500 CEOs will publicly affirm their urgency on setting sail on a digital voyage. Yet internally, management often finds itself at odds on how exactly to leverage technology to transform their current business model.
There is no “cookie cutter” checklist to jumpstart a digital transformation. It is a complex journey that requires: 1) a strong managerial commitment to change; 2) a radical cultural shift that allows an organization to gravitate away from rewarding risk-aversion and responsible asset management, towards rewarding innovation, experimentation, and risk-taking 3) upgrading the talent pool within a company to acquire cutting-edge digital abilities.
So once a company has embraced a digital transformation with the full support of management, and has explored specific business ideas they would like to “digitize”, how can they actually get the ball rolling and execute?
Work out exactly what your users want, and what that will entail
The digital world is built with software — an engineering feat that coordinates creativity, design, and hard engineering to make thousands of lines of code transform into a useful tool. But with the advent of the mobile digital age and “apps”, users demand that software be more than practical —they want it to be intuitive, simple, ergonomic, easy to learn, and yes, also beautiful.
Let’s suppose that the company ACME —a traditionally successful mid-market incumbent player with 30+ years in the industry—wants to start a digital transformation journey. Let’s suppose, also, that ACME has clear management support and has arrived at a promising new idea for leveraging technology to open a new line of business. Should ACME tackle the digital initiative alone? We suggest not, and here’s why.
This frontier is mired with obstacles and setbacks, that will require a particular way of building software to overcome them. For example, the new software application must be:
● Highly scalable and flexible, requiring engineering know-how to make it cloud-ready, elastic, and easily to integrate with other cloud-services
● The application must be “easily refreshable” —it should allow new features to be pumped into production several times a week without salient hitches or bugs, which requires technical skills in building “infrastructure as code”, automatic testing, and DevOps to guarantee a constant “stream” of quality code
● The application should embody modern design tenets both in usability and graphic attractiveness (which requires skills in design thinking, customer journey ideation, and modern user interfaces, among others).
Understand the strengths and weaknesses of your existing team
ACME’s current software engineering and design departments might not be up-to-date on the technologies that will allow them to successfully navigate the frontier of creativity that defines a new product. For many companies, there’s often a mismatch between the talent in its ranks, and what is required to solve the technical challenges at hand.
Established players in many industries are often quite old-fashioned in the way they manage the creative process. It is common, then, that internal marketing, customer service, or IT departments of traditional organizations are seldom prepared to collectively deploy innovation mechanisms that allow them to experiment effectively. That is, processes that allow them to think out of the box and find new ways to serve customers who are frustrated with the status quo and long for a better digital way to consume their services and products.
Companies must know when they need a helping hand
It’s hard to know what to look for if you have not lived through a digital innovation process. The quickest way to kickstart change is to learn by doing. Companies should hire not simply a “theoretical consultant or a coach” in digital innovation, but an outsourcing partner that can provide a real-life example of how to operationalize digital innovation within the company, in the form of a real product.
An outsourcing partner can help ACME’s technology department use the agile approach to software development – which focuses on being as ‘lean as possible’ and developing a minimum viable product (MVP). An initial test market will use ACME’s software and react to it, generating valuable user feedback. ACME can then take this back to the drawing board and quickly iterate on a Version 2 of the product, to be once more presented to the market. This cycle continues until ACME achieves what is called “Product-Market-Fit”.
Working with an outsourcing partner to develop a product is important for many other reasons, too. Firstly, it’s critical that an organization’s first projects in which they ‘go out on a limb’ in the digital age are successful. Early wins will generate a positive dynamic, and provide the confidence that allows management to further accelerate digital change.
And although agile requires technical skills, it also requires a change in behavior and company culture. An outsourcing partner that understands agile development behavior is a great way to cross-pollinate an agile culture to the existing organization.
And lastly, an incumbent without agile expertise will take a long time learning the ropes, potentially endangering the success of the project because of delays or loss of credibility within an organization afraid to change. Working with an experienced software outsourcing partner, on the other hand, provides a “guided laboratory” that allows both the incumbent to learn how to deploy effective software engineering practices for digital innovation, while ensuring an effective time-to-market for the particular initiative.
Undertaking an agile transformation can be daunting. But learning from an experienced outsourcing company will help an organization to quickly internalize agile engineering methodologies —and the undergirding culture of innovation that comes with them—under a learn-by-doing model. This will help them to evade the common “rookie” mistakes, and shorten the journey to a successful digital innovation.
For more info, please visit https://www.pslcorp.com/