Monthly Archives: January 2017

SCM is DISC made Easy

 

Understanding DISC profiling is easy when you are thinking about it, but did you know there was an easy way to figure out someone’s primary DISC profile letter with reasonable accuracy? I figured this out and created a handy chart to show how it works.  All that’s needed to figure out where someone fits on the two main dimensions of DISC – global vs linear and data vs people.  Quickly understanding where people fit is important because SCM is DISC .

I like to figure out the global vs linear dimension by asking one simple question, “Is it more important to do things fast or to do things right?”  The jet fighter pilots and rock stars need to do things fast; get home without being shot down or keep from getting booed off the stage.  The chess players and long-term care nurses must do things right; win the game or keep the patient happy.

 

The people vs data dimension is found by looking at the subject and object of someone’s writing or actions.  The jet fighter pilots and chess players are data focused; gauges full of data or consequences of possible moves.  The rock stars and long-term care nurses are people focused; audience is cheering or patient is feeling good.

Sources of answers to these questions include conversations like email, Facebook, Twitter, etc.  Learning how to profile quickly makes me a better Software Configuration Management engineer.  Let me know if it works for you.

SCM is DISC made Easy

 

SCM is R&D Evolution

SCM is at the center of R&D organizational change.  Sometimes, it can seem like a knock-down, drag-out fight between the old guard protecting against change and some newcomers promoting change.

The old guard is protecting what they know works well from morphing into something they don’t know, or into something they don’t think will work.    Some resist change because they see it as a shift from what they know to be a good working environment to what they think are unnecessary process changes adding extra overhead.

The newcomers are promoting change to what they believe will be better, perhaps wanting a change to something known to them from a previous job. Sometimes the newcomers see the current situation as uncontrolled chaos instead of what they consider organized, development best practices.

One thing that is for sure – organizational change will happen as growth occurs.  It is like the size of a code base growing over time and eventually there is a need for significant refactoring.  Sometime the code needs to be completely rewritten.  This change means the SCM requirements are changing.

When the change is the organization, it could mean changing out someone’s favorite version control system and replacing it with a different one.  It could also mean some people are unhappy and leaving for greener pastures.  The human element involved with changing R&D organizations can be painful.  Attempts to stop change might slow things down for a while, but the changes due to growth are necessary and won’t be stopped forever.

Catalysts for change are ever present in the software industry.  Slowing down change will simply cause a buildup of pressure for the appropriate changes.  Resistance to change causes erratic changes over time instead of gradual, continuous change over time.  Gradual changes are perhaps easier to make; and possibly easier on the people involved.

I think the transitions should be done gradually and should be managed carefully.  There is a need for feedback gathering as the changes occur.  Are the changes happening too fast or too slow?  Do we understand the transitions in progress?  After all, you can’t do SCM right without understanding the transitions in progress.  If we change too fast, if people leave rapidly, knowledge transfer is lost.  Lost knowledge is costly.  If we change too slowly, efficiency is poor due to out of sync SCM processes.

Knowing what the changes are is a key to properly managing the changes.  Here is a list of some of the organizational changes happening as a result of the evolving R&D environment.  It is by no means a complete list – it is intended to get you started thinking.

  • Flat organization          =>        Deep hierarchical organization
  • Full stack teams          =>        Layered teams
  • Surgeon model           =>        Peer team model
  • Disorganized               =>        Organized
  • Developer driven        =>        QA or market driven
  • Consensus                  =>        Consultative or directive decisions
  • Cowboy coders           =>        Enterprise developers
  • Generalists                  =>        Specialists
  • Many perks                 =>        Few perks
  • Creative retention       =>        Security
  • Low pay                      =>        High pay
  • Passion motivated      =>        Money motivated
  • Big impact workers     =>        Low impact workers
  • Low job security          =>        High job security
  • Family culture             =>        Machine culture
  • Exciting work              =>        Boring environment
  • Pathological Culture   =>       Generative culture
  • Monolithic code base  =>        Modular code base
  • One-off builds             =>        Assembly line builds
  • Manual builds              =>        Continuous integration
  • Multiple technologies  =>        Core competencies
  • No economy of scale =>        Economy of scale
  • Latest technology        =>        Mature technology
  • High innovation           =>        Refining the existing products
  • Latest code                 =>        Reproducible builds
  • No policies                  =>        Development policies
  • Unstructured               =>        Structured development
  • Documentation dump =>        Organized documentation
  • No SCM needs           =>        High SCM needs
  • Uncontrolled process  =>        Controlled process
  • Low overhead             =>        High overhead
  • Mostly manual                        =>        Mostly automated
  • No regression tests     =>        Targeted regression tests
  • Resource utilization    =>       Throughput optimization
  • One-off builds             =>        Repeatable builds
  • No transparency         =>        Transparency
  • Seek market share     =>        Seek profitability
  • No legal concerns       =>        Legal concerns
  • High risk                      =>        Low risk
  • Venture funding          =>        Profitable
  • Scalable startup          =>        Cash cow