Adopting, designing, and governing SOA well

SOA Best Practices Digest

Subscribe to SOA Best Practices Digest: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get SOA Best Practices Digest: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

SOA Best Practices Authors: Jason Bloomberg, Andy Thurai, Charles Araujo, Hollis Tibbetts, Pat Romanski

Related Topics: Cloud Computing, Agile Software Development, Change Leadership Journal, CIO, SOA Best Practices Digest, Microservices Journal

Agile Development: Blog Post

Should You Fire All Your Techies? By @TheEbizWizard | @DevOpsSummit #DevOps

Replace the traditional hierarchical organizational structure with a self-organizing, horizontal organizational structure

I recently spotted a five-year-old blog post by Mike Gualtieri of Forrester, where he suggests firing your quality assurance (QA) team to improve your quality. He got the idea from a client who actually tried and succeeded with this counterintuitive move.

The thinking goes that without a QA team to cover for them, developers are more likely to take care of quality properly - or risk getting the dreaded Sunday morning wakeup call to fix something.

Gualtieri's post generated modest buzz at the time, but since 2011 the world has changed. DevOps has turned a corner, representing an end-to-end rethink of how organizations handle the entire software development lifecycle.

Now that 2016 has finally arrived, it's time to take a fresh look at the question. But why stop with QA? Now that we have DevOps - and digital transformation more broadly - whom else can we fire?

Pros and Cons: Firing Your QA Team
If developers' butts are on the line, they are more likely to be careful to properly test their own code before deploying it. Furthermore, if you have already been doing test-first development (where developers write the tests), then a separate QA team makes less and less sense as you move to a continuous delivery DevOps culture.

However, for those development shops that still have traditional organizational silos with the commensurate throw-it-over-the-wall thinking, simply crossing an entire silo off the org chart without making any other changes will inevitably cause turmoil.

Waterfall projects have enough problems with quality as it is without squeezing the QA effort further, after all. Better to transition gradually from waterfall to test-first Agile to the fully automated testing that DevOps efforts expect.

Pros and Cons: Firing Your Ops Team
If DevOps empowers us to fire our QA team, then who else can we fire? What about our operations team?

In a DevOps world, after all, ops should be fully automated, where developers (who now have newfangled titles like ‘DevOps engineers') manage immutable, idempotent infrastructure - without touching any of it directly.

Not that DevOps shops should ever talk about actually firing anyone, least of all the ops folks. Instead we reinvent their roles, where they deal more with scripts and recipes and manifests instead of servers and networks and software infrastructure. Regardless, one way or another, nobody ends up retaining a traditional ops role.

However, this ‘DevOps-rules-the-world' perspective may work for some web scale companies perhaps, but traditional enterprises have plenty of technology that developers don't generally monkey with.

What about all that legacy, COTS, and other not-invented-here tech? Someone has to manage all that gear - and that noble task still falls to traditional ops personnel.

Transforming traditional IT to the extent that we no longer need anyone in a traditional ops role may still be out of reach for most enterprises, but ‘traditional' ops is unquestionably becoming an increasingly minor part of the overall IT operations picture.

Furthermore, as companies proceed with their digital transformation efforts, performance management increasingly becomes the responsibility of business stakeholders, and the application performance management market - now rapidly becoming digital performance management - is reflecting this shift.

In spite of this shift, we can't expect line-of-business (LOB) stakeholders to manage hypervisor configurations or cloud autoscaling parameters or the like. Just because digital transformation slices across the organization horizontally doesn't mean that we no longer need individuals with specialized skills. Instead, such transformation requires a rethink of how we organize such individuals.

Pros and Cons: Firing Your Developers
Even in today's fast-paced, turbulent digital business environment, asking whether or not enterprises need developers at all is an intriguing question. After all, the low-code, declarative model for assembling software is rapidly maturing (especially for mobile apps), and LOB personnel are building increasingly sophisticated business applications using such technology.

The low-code approach has many advantages over traditional coding: it's more business-focused, more iterative, lighter weight, and supports the business agility needs of the organization better than traditionally coded apps.

Of course, even in a low-code, drag-and-drop world, someone has to write the underlying software. But there's no reason an enterprise development team should handle this heavy lifting. Instead, vendors should be responsible for building such ‘agility platforms.'

On the other hand, as enterprises become software-driven organizations, developers - real, hands-on coders - become more important, not less. While low-code tooling can serve an important role, enterprises that rely upon software for their market differentiation are unlikely to do away with their development teams.

For organizations adopting DevOps, furthermore, the newly transformed role of a ‘DevOps engineer' is first and foremost a developer. The last thing we want to do is fire these folks!

Pros and Cons: Firing the Entire IT Organization
Enterprises have been outsourcing huge swaths of their IT organizations for years, of course. But that's not really the question here. After all, if you're working in IT and your company outsources the whole shebang, that rarely means you're out of a job. It's more likely that your job mostly stays the same, but you simply start getting paychecks from a new company.

The more provocative question, of course, is whether an enterprise can get rid of its IT organization altogether. With all this talk about bimodal IT - where LOBs drive fast, digital efforts, leaving the old guard IT to keep doing things the old, slow way - perhaps the solution is simply to get rid of slow IT completely.

After all, shadow IT is only shadow if there's regular, non-shadow IT to compare it to. What if all we had was shadow IT? Could that ever be enough?

As enterprises gradually replace their dinosaur enterprise apps with cloud-centric, modern apps, there should come a time that the entire enterprise can run on a combination of such enterprise cloud apps and LOB-written apps using low-code tooling.

Sounds appealing - but I don't think the big banks or insurance companies or manufacturers or any other large enterprise will be chucking their entire IT organizations, outsourced or not. In today's enterprise environment, getting rid of IT is an unrealistic goal.

Instead, the challenge is to transform IT to support business at velocity, which means focusing on security, governance, maintaining access to systems of record - but not in traditional, slow ways that provide roadblocks to digital success.

Such change won't happen, however, unless companies also transform their organizations - starting with the hierarchical org chart. From the customer to the systems of record, new organizational patterns must slice across existing silos.

The Intellyx Take
The end result: we don't have to fire anybody. Instead, we're are recommending an end-to-end rework of traditional hierarchical management thinking. After all, the entire premise of this article - fire QA to make quality better, then rinse and repeat - is more about getting rid of a hierarchically organized QA team structure than eliminating the QA people themselves.

Replace the traditional hierarchical organizational structure with a self-organizing, horizontal organizational structure - thus eliminating externally organized teams and the hierarchical management thinking that leads to them.

Eliminating our siloed QA team improves software quality. Eliminating siloed dev and ops leads to DevOps, which improves software deployment and drives software at velocity.

Eliminating a rigidly defined IT organization, it stands to reason, not only solves the bimodal problem - it is also the key to becoming a software-driven enterprise.

Intellyx advises companies on their digital transformation initiatives and helps vendors communicate their agility stories. As of the time of writing, none of the organizations mentioned in this article are Intellyx customers. Image credit: The US Army.

More Stories By Jason Bloomberg

Jason Bloomberg is a leading IT industry analyst, Forbes contributor, keynote speaker, and globally recognized expert on multiple disruptive trends in enterprise technology and digital transformation. He is ranked #5 on Onalytica’s list of top Digital Transformation influencers for 2018 and #15 on Jax’s list of top DevOps influencers for 2017, the only person to appear on both lists.

As founder and president of Agile Digital Transformation analyst firm Intellyx, he advises, writes, and speaks on a diverse set of topics, including digital transformation, artificial intelligence, cloud computing, devops, big data/analytics, cybersecurity, blockchain/bitcoin/cryptocurrency, no-code/low-code platforms and tools, organizational transformation, internet of things, enterprise architecture, SD-WAN/SDX, mainframes, hybrid IT, and legacy transformation, among other topics.

Mr. Bloomberg’s articles in Forbes are often viewed by more than 100,000 readers. During his career, he has published over 1,200 articles (over 200 for Forbes alone), spoken at over 400 conferences and webinars, and he has been quoted in the press and blogosphere over 2,000 times.

Mr. Bloomberg is the author or coauthor of four books: The Agile Architecture Revolution (Wiley, 2013), Service Orient or Be Doomed! How Service Orientation Will Change Your Business (Wiley, 2006), XML and Web Services Unleashed (SAMS Publishing, 2002), and Web Page Scripting Techniques (Hayden Books, 1996). His next book, Agile Digital Transformation, is due within the next year.

At SOA-focused industry analyst firm ZapThink from 2001 to 2013, Mr. Bloomberg created and delivered the Licensed ZapThink Architect (LZA) Service-Oriented Architecture (SOA) course and associated credential, certifying over 1,700 professionals worldwide. He is one of the original Managing Partners of ZapThink LLC, which was acquired by Dovel Technologies in 2011.

Prior to ZapThink, Mr. Bloomberg built a diverse background in eBusiness technology management and industry analysis, including serving as a senior analyst in IDC’s eBusiness Advisory group, as well as holding eBusiness management positions at USWeb/CKS (later marchFIRST) and WaveBend Solutions (now Hitachi Consulting), and several software and web development positions.