Cloud and Software Architecture, Soft skills, IOT and embedded
The Crucible - Reforming an organization with heat
Get link
Facebook
X
Pinterest
Email
Other Apps
A crucible is where you melt down your existing metal and add new metals to create and cast a different alloy that fits the current need. This is often the only way to reshape an organization for the future. Major changes driven by external forces require dramatic adjustments outside the standard processes in order to drive change at a faster pace.
Corporations and groups are like an alloy comprised of the company's stated culture, its actual culture, and the attitudes and beliefs of the people who work for it. The initial cast defines how a company operates and determines how it succeeds or fails. Big changes require attacking that historic casting.
Mature organizations struggle with deep change because they have hardened around policies and behavior that are broadly executed but may not be well understood. There is strength in this as it can resist or overcome transient business, regulatory, or economic issues. That strength is a weakness that makes it difficult to adapt and make smaller decisions before they become painfully large painful decisions.
Groups must often be broken into constituent parts and rebuilt with new blood or by empowering those that were not previously at the center. We need to make sure we are pressuring, melting, and mixing the right ingredients. The existing processes and people will resist saying that you are scrapping stuff that works or melting down something you will just have to make again in the same shape. Sometimes they are right but often that resistance is more broad-based and some people feel that just melting down pretty much everything is the way to go. You see this in organizations that bring in new leadership that drives out most of the old leadership culture guards.
I'll talk about approaches for creating a crucible of change at different levels in future articles.
Getting it right
Power structures defend the status quo. People worry about their current skills, the power that their knowledge of the existing system delivers, their rent payments, and family obligations.
One of the problems of a giant remake, putting the entire company into the crucible, is that you can mistake heat for progress. The worst outcome is that you go through the effort, melt everything down, and rebuild exactly what you had before. No one wants a wartime scrap-drive event where people's pots and pans were remade into pots and pans because the alloy wasn't right for the new purpose of making airplanes.
People Matter
This process doesn't need to be people-hostile. People matter and this can be done with dignity and in a way that can provide opportunity. Reforging is stressful. It is hard and some people won't make it out the other end.
Putting every layer under stress
Transformation must operate at multiple levels. Heat has to be applied at the team level and at the executive level and the management layers in between. I've seen people make change happen top down I've seen individual areas try and push change from the bottom up.
Top-down can fail when the intermediate layers play passive resistance knowing that the attention span from the top is often only one or two years, too short a period to make real change. Excessive turnover at the executive or senior level means continual priority changes as they try and prove they have what it takes.
Bottom-up can fail because the management tier and executives don't change, sticking with their same management and control patterns. This smothers the attempts from the bottom.
Organizations return to their previous shape if...
Organizations are like metal. They will bend under pressure but return pretty closely back to their previous shape unless they are heated past some temperature. We can take the opportunity at that time to change the mix/alloy in order to give the organization different properties. Failure to push the organization past its level of resistance results in a lot of wasted money and effort. Inevitably the people that supported that effort will leave in frustration or be driven out by the status quo.
I do a lot of my development and configuration via ssh into my Raspberry Pi Zero over the RNDIS connection. Some models of the Raspberry PIs can be configured with gadget drivers that let the Raspberry pi emulate different devices when plugged into computers via USB. My favorite gadget is the network profile that makes a Raspberry Pi look like an RNDIS-attached network device. All types of network services travel over an RNDIS device without knowing it is a USB hardware connection. A Raspberry Pi shows up as a Remote NDIS (RNDIS) device when you plug the Pi into a PC or Mac via a USB cable. The gadget in the Windows Device Manager picture shows this RNDIS Gadget connectivity between a Windows machine and a Raspberry Pi. The Problem Windows 11 and Windows 10 no longer auto-installs the RNDIS driver that makes magic happen. Windows recognizes that the Raspberry Pi is some type of generic USB COM device. Manually running W indows Update or Upd...
The Windows Subsystem for Linux operates as a virtual machine that can dynamically grow the amount of RAM to a maximum set at startup time. Microsoft sets a default maximum RAM available to 50% of the physical memory and a swap-space that is 1/4 of the maximum WSL RAM. You can scale those numbers up or down to allocate more or less RAM to the Linux instance. The first drawing shows the default WSL memory and swap space sizing. The images below show a developer machine that is running a dev environment in WSL2 and Docker Desktop. Docker Desktop has two of its own WSL modules that need to be accounted for. You can see that the memory would actually be oversubscribed, 3 x 50% if every VM used its maximum memory. The actual amount of memory used is significantly smaller allowing every piece to fit. Click to Enlarge The second drawing shows the memory allocation on my 64GB laptop. WSL Linux defaul...
The Apache Tika project provides a library capable of parsing and extracting data and meta data from over 1000 file types. Tika is available as a single jar file that can be included inside applications or as a deployable jar file that runs Tika as a standalone service. This blog describes deploying the Tika jar as an auto-scale service in Amazon AWS Elastic Beanstalk. I selected Elastic Beanstalk because it supports jar based deployments without any real Infrastructure configuration. Elastic Beanstalk auto-scale should take care of scaling up and down for for the number of requests you get. Tika parses documents and extracts their text completely in memory. Tika was deployed for this blog using EC2 t2.micro instances available in the AWS free tier. t2.micro VMs are 1GB which means that you are restricted in document complexity and size. You would size your instances appropriately for your largest documents. Preconditions An AWS account. AWS ac...
Comments
Post a Comment