Industry Trends and Management Principles

Consulting 101

What’s keeping CEOs up at night?
Executives worry about remaining competitive when the business environment changes all around them – including new technologies, new competitors, new business models, and challenging customer loyalty. All play a role in disrupting the status quo.

Why hire a consultant?
A consultant helps the customer succeed over their issues, challenges, or problems they may have, including helping clients:

  • Change business models, organizational structures and their operations so they can thrive today and in the future
  • Keep pace with emerging technology and manage disruption
  • Uniting the front client-facing office with the middle and back offices
  • Become more technology conversant with clients, convert key trends in technology into meaningful value
  • Embrace continuous change
  • Take on less of an internal view, more of joint ventures and collaborations

The reason consultants charge high rates is because they need to be correct all of the time, tackling the difficult problems quickly and at a high level of quality that the client either does not have the skill, experience, or resources to do. Consultants work on the critical business data and provide insights the client has trouble uncovering. In order to do this, the consultant must be more receptive to the client than even their employees, be able to quickly learn the intricate knowledge regarding the client’s services and entire systems, and effectively utilize proven methodologies in handling the problem(s) the client faces. Consultants aim to understand the entire Enterprise Architecture – how an organization goes about achieving its strategic goals, including: risk and compliance architecture, business architecture, application architecture, data architecture, infrastructure architecture, and security architecture.

Importance of Data

Information – data which is processed and contextualized – benefits management planning and decision-making. Visualizations help us contextualize, allowing for better clarity and understanding of data and trends, through added capabilities of higher level analysis. As a system, in order for data to propel us towards insights and consequently better decisions, we need collaboration – someone to lead and make sure we ingest the data, aggregate and store it, and visualize it (for ourselves and shared analytics for other parties). Then, someone to exploit the data.

Ultimately, in order to support the development and usage of data’s information to drive decisions, we need:

  • The right tools
  • The right people (expertise)
  • The right organizational structure (bringing the different skillsets together)
  • A culture of proactive collaboration at all levels

It’s not the tools that are usually the problem, but needed are the right organizational structure and the right people (expertise), to both support the data and its usage. In other words, the problem is usually not the tech, the challenge is changing the culture and processes to allow people to work harder to allow data to inform ourselves, so we can utilize it to drive decisions.

Gartner analyst, Doug Laney, published a research paper entitled “3D Data Mangement: Controlling Data Volume, Velocity, and Variety” – These are the 3 Vs which are the generally-accepted dimensions of big data (coined in 2001)

Behavioural Change Management

Change management is more important than ever in this world of global trends driving constant change – the world has become a more VUCA place – volatile, uncertain, complex, and ambiguous. Organizations need to be able to constantly react and adapt.
KPMG’s four phase structure is to make sure business results are realized, disruption is minimized, and people are put at the heart of the change agenda:

  1. Make it Known: Determine and communicate the change vision and case for change
  2. Make it Real: Translate the vision into reality for the people in the organization and define what it means for them
  3. Make it Happen: Move the organization towards the end state
  4. Make it Stick: Aligning policies and determining if the organization is ready to push the change forward sustainably

Overview of Data Analytics Implementation, and Software Languages and Tools

Data Quality and Other Goals/Tools for Development

  • Aim for more data
  • Include the confidence level of the data, data should be highly structured and organized
  • Understand what type of analysis of your data will benefit the public the most – Descriptive (describing the data) vs Predictive (predicting future data, inductive reasoning) vs Prescriptive (predicting outcomes of decisions). Ideal method of predictive and prescriptive is usually inductive reasoning (starting with the data and creating a theory/hypothesis based on it) vs deductive (starting with a hypothesis and coming to a conclusion).
  • Develop visualizations
  • Be iterative – better to redesign (or re-use materials) 30x to learn from failures than spend everything building one complex design

Listing of Tools
Hosting: HP, KPMG, Amazon Web Services (AWS), Microsoft Azure, IBM Cloud private, Google Cloud Platform
Data Storage: Hortonworks, Hadoop, Oracle, Microsoft, PostgreSQL
Data Integration & Management: Pentaho, Storm, Informatica, Microsoft SQL Server IS
Semantic Tier: LucidWorks, Solr, ElasticResearch
Applications & Analytics: Alteryx, SAS, R, Revolution
Presentation & Visualization: Qlik Sense, D3.JS, Tableau

Programming Languages: Python, Apache Spark
Machine Learning: Scikit for Python, Pyflux for Python
Deep Learning: Caffe
Neural Networks: Tensor Flow
Communication Tools: Slack, Yammer, Microsoft Teams, Skype for Business

Data Security and Openness

It is important for data to be both secure (protect people) but also shared (allow more researchers to find insights in the data and consequently the public to benefit). It is difficult to focus on both, but completely possible. You address privacy and security at the beginning, assess value and risk, but don’t look at security and data openness as two goals in tension. When data is more secure with less breaches, the more institutions and the people who lead them are willing to be open with their data. It is also important to be transparent with the public of what we are not releasing, being transparent with what we have at the lowest level. Hybrid data warehousing is a good compromise – Production environment in a physical data center, and testing environment in the cloud.
To encourage data to be shared, it is up to the people consuming the data to both prove the data is secure and to prove that it will provide value, because those are the two biggest excuses institutions use for not sharing their data (unsecure and won’t provide value). Incentivizing can also boost data availability, such as in the field of research, if we monetize data citations instead of only publications, this will encourage sharing of data instead of encouraging withholding data in development to maintain data rights.
To enable the data to be shared, systems should be constructed with Service Oriented Architecture –> have APIs → build a library around them and build a unique user base.

Machine Learning and Deep Learning

Programming – In functional programming, all functions have inputs and outputs. Higher order programming is where the functions are also inputs and outputs.
Machine Learning is programming where you use examples instead of explicit instructions. Called “Software 2.0”. Examples: Pandora finds patterns nuanced enough to make a prediction of what music you like, or an image software that can recognize what types of objects are in the picture (i.e. auto-generating object category keywords for a Stock Photo website).
Deep Learning is a type of machine learning where we focus on the internal implementation of how a system is learning, where there are layers of intermediate representations. In other words, the data is transformed at different levels. Deep learning is not a completely separate field from machine learning – it’s just a method that works better than others.
Deep Learning Algorithm Types

  • Linear Regression – The first algorithm learned by most machine learning professionals. If we want to predict numbers before they occur, then regression methods are used, and linear is the most common.
  • Clustering Algorithms – If we have no idea about the data and want to group data points to understand their collective behavior, clustering is one of the go-to methods.
  • Decision trees – If there is a need to classify objects or categories based on their historical classifications and attributes, then classification methods like decision trees are used. Decision trees can also be used for regression.
  • Neural nets – a type of learning that involve back propagation. However, it is not a good word because it is not like copying the brain with math formulas. It is more like a child learning – for example, a child first learns the difference between a human and an animal. But it still doesn’t know the difference between animals, then he learns that 4 legged creatures are usually animals, but still doesn’t know the difference between horses and dogs. Iterative learning. Good for image recognition and time series and audio (in general, recurring things).

Deep Learning Real world examples

  • Working with DARPA and Air Force: Instead of pilots staring at pixels on a cockpit screen, be told what’s on the ground shooting at you without looking.
  • Visual field guide for soldiers on the ground – Something bit me – is it poisonous? Should I go back to base or stay out?
  • Agtech – Drones to automatically find where water is saturated and fertilizer is needed.
  • Drones detecting in order to fight poachers and track animals
  • Surveillance footage – instead of human eyes watching them (error prone and expensive), neural net can tell you there was 2 people possibly outside of your house – please review the tapes at the time period.

Project Management Process and Dynamics

The Process
David Kantor -> Structure determines performance like a riverbed determines the flow of river

  1. Set needs and goals (gather requirements first)
  2. Diagnose – do research, set standards, define roles and responsibilities. Talk to lead to figure out how to prioritize and manage people’s expectations of delivery
  3. Develop stakeholder lists, training, metrics, processes, frameworks
  4. Implement the idea and execute

Teamwork Principles

  • The best teams are both hierarchical and collaborative –> Collaborative for brainstorming and bringing together ideas, knowledge sharing and team efforts. Hierarchical for when it’s time to start converging, when everyone has their role to play in providing an answer for a client.

Other Principles

  • Think about things systematically. Always look at the why’s.
  • Encourage documentation – it is important not to lose any decisions or insights made in meetings, or lose any industry / process knowledge due to turnover
  • “Make it ugly” – have meetings saying what’s wrong – no delay in talking about issues and figuring out how to fix them

Problems for Agility Today – the current Organizational Landscape
In the past history of organizational landscapes, a fixed process used to be pure innovation at the time. Companies now, however, being made up of more processes, require and develop into increasingly bigger and more complex structures. Tool deliverables and systems also increase in complexity, which left room for agile management to enter the playing field as a cutting-edge methodology for development.
Problem – Due to the landscape most organizations face now is inherently complex, this requires an upward shift in mental complexity of organizational leaders (as an OS needs to get more complex to install more complex applications), and greater agility in leadership. And the issue is, most managers/leaders see complex systems as though they are complicated. But instead, an Agile Leader should have the ability to breakdown systems logically and explain them, in addition to the following skills:
Outer Skills – Ability to influence others, evoke shared sense making (how we see the world), skills in facilitating/catalyzing, creatively apply domain knowledge, systems thinking skills.
Inner Skills – Complex meaning making, high emotional intelligence (self awareness / management), clear about and grounded in a sense of purpose, permeable to the perspectives of others (values – what we care about) and self identity (how we see ourselves).