Welcome!

Machine Learning Authors: Pat Romanski, Yeshim Deniz, Liz McMillan, Elizabeth White, Zakia Bouachraoui

Related Topics: @DevOpsSummit, Linux Containers, Containers Expo Blog

@DevOpsSummit: Blog Post

How to Stop Your Developers from Jumping Ship | @DevOpsSummit #Agile #DevOps

For developers working across a broken workflow, the frustration can be felt acutely

We are experiencing a ‘crisis of engagement,' according to a survey by management consultancy Gallup, with a staggering 87 percent of employees worldwide disengaged with their jobs. While there are many factors that can influence an employee's contentment - from support to compensation to job security - a common grievance in software development is disempowerment, where talented individuals are feeling hampered by their working environment.

Operating within a flawed system is infuriating in any profession. But for developers working across a broken workflow, the frustration can be felt more acutely. One of the major bones of contention is that developers find themselves working in a way that conflicts with their training and established best practices, one that is not conducive with Agile and DevOps working methodologies and prevents them from optimizing their tools-of-choice.

A main contributor to an unproductive working environment is a fragmented toolchain, which is a regular occurrence at organizations worldwide. Many of them are adopting a best-of-breed approach to tool procurement without a holistic investment strategy. Individual specialists, teams and disciplines are specifying a tool (or version thereof) as and when required - i.e., a project manager with CA Clarity PPM, a tester in HP ALM, a QA in HPE QC, a developer in JIRA and so on - with little consideration as to how it may impact the rest of the software lifecycle.

While it is logical to equip employees with the best tools for the job, this ad-hoc and unsynchronized approach is littered with time bombs that could explode at any time, negatively impacting a developer's satisfaction and, ultimately, an organization's software delivery capability. So what can be done to stop developers jumping ship to join Facebook, Netflix, et al?

Grounds for divorce
Any investment strategy must consider software lifecycle integration (SLI), otherwise an organization is quietly laying the foundation for an unproductive environment that will come back to haunt it. Tools in the software lifecycle are not designed to integrate with other third-party tools, meaning they do not naturally communicate with each other, and project-critical data typically becomes siloed within the tools.

The result is a workflow with little-to-no visibility, traceability or governance across the lifecycle, with stakeholders unable to share information with other stakeholders, greatly impacting collaboration. Such a dynamic can frustrate a developer in several ways, all of which are avoidable. Here are just a few of the issues caused by a disconnected toolchain:

  • Agile and DevOps blasphemy: Collaboration, interaction and information are the triumvirate of Agile and DevOps. The flow of artifacts between tools can be considered more important than the tool itself. As both methodologies are widely accepted as industry standards, it's understandable that most developers will be looking to apply the principles in their day-to-day work within their teams. But if their tool is isolated and they're unable to share or receive vital data at a click of button, they will become discontented as their training is wasted and skill set underutilized.
  • Developers just want to...develop: Developers are genuinely passionate about their work. They're problem solvers who love tackling issues with code, taking great pleasure in working with their colleagues to build and maintain projects, drive innovation, challenge the status quo and, significantly, create value for their company. But it's a tough job; intensive coding is an all-encompassing specialty that requires undivided attention. They don't - and shouldn't have to - spend valuable hours lost in boring non-value administrivia (status meetings, emails, data entry, spreadsheet merging, etc.). Such tasks can be minimalized, or even removed completely. If they're not, don't be surprised if your developers seek new pastures.
  • Friend or foe: If a tool isn't implemented correctly and working in unison with the lifecycle, it can quickly become a burden or, worse, a foe. Isolating a quality tool can quickly strip it of its capabilities and functionality, as developers spend more time fighting the tool than harnessing its powers. Benign issues become malignant, and great and engaged developers become frustrated and disinterested.
  • Rotten apple: As the adage goes, ‘one rotten apple spoils the whole bunch.' Team unity, especially in software development, is integral to Agile and DevOps principles. A strong software lifecycle needs all players in the game to be happy in their roles or balls will be dropped. If a developer is disenchanted by her role within the team because of inefficient processes and procedures, it's only a matter of time before her colleagues become demoralized too. Beware the domino effect.

Pain relief
Addressing a fragmented software lifecycle is the first step in creating harmony among your software development and delivery personnel. An integrated software value stream has many benefits, but at its heart, it's all about removing waste and getting rid of all the annoying work that plagues a developer's day.

What do we mean by ‘software value stream'? A value stream is a notion borrowed from Lean manufacturing; it's the sequence of activities an organization undertakes to deliver a customer request, focusing on both the production flow from raw material to end-product and the design flow from concept to realization.

Looking at software development from a value stream perspective puts the emphasis on creation of customer value, rather than simply looking at these activities as a process. It's all about the ‘Big Picture' - improving the whole process, not just the parts - to minimize waste and ensure customers get exactly what they asked for.

How does an integrated values stream boost employee engagement? The troubles experienced by a leading global bank during its four-year Agile and DevOps transformation illustrates the point perfectly. Given the nature of its business, it's critical that all information is consistent across all the bank's systems, yet it lacked an automated flow of information between tools.

This meant that developers were still rekeying from one tool to another, taking up to two hours a day in duplicate entry. Not only was this a huge waste of valuable labor hours that cost the business up to $10 million annually in lost value, developers often got so frustrated that they would leave. This case study is painfully familiar, and again, entirely avoidable.

A Developer's Paradise
An integrated software value stream yields many benefits for developers (and the rest of the software lifecycle), including:

  • Information flows automatically across teams without costly manual intervention and oversight, removing non-value work and bottlenecks.
  • Collaboration happens within the work, rather than in email or disconnected tools.
  • Reports and analytics emerge from a holistic view of all the artifacts.
  • Traceability and governance become a natural act rather than an expensive manual process.
  • Visibility into the value stream enables managers to understand project status and optimize processes, meaning developers have the freedom and insight to build extraordinary software.
  • A modular Agile toolchain means forward-thinking developers can plug in new tools (or new versions of their existing tools) to experiment with new ideas and innovations.

As a result, these organizations experience:

  • Faster time-to-market
  • Reduced development cost
  • Ability to add more features, more efficiently, while improving quality and reducing risk
  • Ability to leverage their software development capability to bring differentiating value to their businesses

And perhaps most importantly, it results in high developer engagement and job satisfaction; the fuel behind any software-driven organization that's looking to transform its business in a digital world.

More Stories By John Rauser

John Rauser is the IT Manager at Tasktop Technologies, a global enterprise software company. He also serves as VP Operations at the board of the Project Management Institute - Canadian West Coast Chapter, providing leadership and expertise on technology issues. He has a passion for discussing the business impacts of technology and analyzing strategies for managing IT.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


CloudEXPO Stories
With more than 30 Kubernetes solutions in the marketplace, it's tempting to think Kubernetes and the vendor ecosystem has solved the problem of operationalizing containers at scale or of automatically managing the elasticity of the underlying infrastructure that these solutions need to be truly scalable. Far from it. There are at least six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments. In this presentation, the speaker will detail these pain points and explain how cloud can address them.
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-centric compute for the most data-intensive applications. Hyperconverged systems already in place can be revitalized with vendor-agnostic, PCIe-deployed, disaggregated approach to composable, maximizing the value of previous investments.
When building large, cloud-based applications that operate at a high scale, it's important to maintain a high availability and resilience to failures. In order to do that, you must be tolerant of failures, even in light of failures in other areas of your application. "Fly two mistakes high" is an old adage in the radio control airplane hobby. It means, fly high enough so that if you make a mistake, you can continue flying with room to still make mistakes. In his session at 18th Cloud Expo, Lee Atchison, Principal Cloud Architect and Advocate at New Relic, discussed how this same philosophy can be applied to highly scaled applications, and can dramatically increase your resilience to failure.
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by sharing information within the building and with outside city infrastructure via real time shared cloud capabilities.
As Cybric's Chief Technology Officer, Mike D. Kail is responsible for the strategic vision and technical direction of the platform. Prior to founding Cybric, Mike was Yahoo's CIO and SVP of Infrastructure, where he led the IT and Data Center functions for the company. He has more than 24 years of IT Operations experience with a focus on highly-scalable architectures.