Sunday, September 30, 2018

Designing Enterprise Chatbots - Dear Enterprise chatbot: what is our CEO’s annual salary?

This morning, my brokerage sent me a survey asking me about their new Chatbot Ted (or was it Suzy?). The survey was simple enough. The 5-6 questions asked me if I used other chatbots and virtual assistants like Siri, Cortana, Google Assistant, etc. It also touched on security concerns I had about sharing personal details with a the brokerage's Bot.

The past year has seen tremendous advances in chatbots integrated with machine learning, cognitive computing and Artificial Intelligence (AI) techniques. The bots are moving from quirky, esoteric tech tools that amuse us to serious business productivity tools that enhance the UI/UX design and usability of systems.

Organizations are evaluating bots as the front-line of customer service to address routine queries before (expensive) humans are engaged. Most major banks, brokerage houses, Airlines and eCommerce companies have rolled out cutely named Bots and virtual assistants that pop up when we try to engage with their portals. Many of these bots are being designed to take on basic human interactions like the recent demo of ‘AI Assistant’ by Google's Sundar Pichai that went viral.



In the demo, Google showed off its Assistant having a human-like conversation with folks at a hair salon and a small restaurant. The rather simple use-case also highlights the complexity of human communications, even for seemingly mundane tasks like making reservations that we take for granted while dealing with other humans, even those who have different sounding accents. Enterprise Chatbots that blur the line between human and system interactions, are also starting to appear in the corporate world.

Motivated by such viral videos, some CxOs, are asking their internal Business-technology teams to evaluate Bots for their internal users. Typical corporate Use-Cases include service help-desk functions for IT, HR, payroll and other shared services. Incidentally, these are also areas where organizations have been attempting to minimize manual interactions by enabling employee self-service techniques including searchable databases, FAQs, personalized portals and internal social-networking.

Technologies to power chatbots include commercial and open source tools that enable Machine Learning (ML) algorithms and natural language understanding to learn appropriate answers to user queries over time. While enabling and integrating chatbot tools in a corporate landscape can take some time and effort, training the Bot to learn the corporate context may require a lot more effort that shouldn’t be underestimated.

Hi HR-Bot, what is our CEO’s annual salary?


Design and training an enterprise chatbot requires functional context and access to enterprise data; data that may exist in silos. An FAQ of typical queries to the sales help-desk may include queries about monthly targets, details of product catalog, positioning and even sales data for the prior months. Such data may be business sensitive, and restricted even within the teams. For example, the sales team in the mid-west may not want their sales numbers exposed to other account teams, leave alone published to rest of the organization without aggregation or masking.

The design for an enterprise chatbot may also have to restrict information based on roles of the person querying. It should recognize that the senior executive asking if “margins of ACME account have improved since last month?” is authorized to review such information.

An account management team I once worked with was paranoid about the queries in a FAQs that could expose 'salary ranges' for some roles. Teams like that will certainly not appreciate queries to a Bot that ask "what’s our CEO’s salary?" Never mind the fact that most of us can just google the information from public sources; and a well designed bot enabled by machine-learning will eventually learn to search for that information on the internet.

The design of a machine-learning enterprise Chatbot also needs to guide (read: control) it to stay in the context of its enterprise domain. Many of us also continue to learn from experiments in the social media; like Microsoft’s ‘innocent’ chatbot, Tay that was ‘corrupted’ by Twitter and digirati in less than 24-hours.

Advances in AI, ML and NLP are pushing the envelope, and promising productivity gains by enabling self-service. A well-designed Chatbot, enabled in a specific functional context – like an IT, Claims or Benefits service desk – can aid productivity and also employee engagement while minimizing manual effort in responding to queries. However, given the current challenges in human interactions with systems, chatbots from Banks, brokerages and eCommerce companies are not being designed to be truly Machine Learning tools. At least not yet. While they respond cutely to routine questions, they don’t really ‘learn’ from queries posted by random users on the web.

Bottomline:  While there is a lot of promise that cool enterprise Chatbots hold, wider adoption in large organizations will also have to go hand-in-hand with organizational design.




Thanks for reading! Please click on Like, or Share, Tweet and Comment below to continue this conversation or share your favorite 'trend to watch' | Reposted on my linkedin blog

Friday, September 14, 2018

Enterprise Architecture career Q&A : What skills to learn?

I came across an interesting question

"How do I change my career from a software developer to an enterprise architect. What skills I should learn?"


My response follows:

This is an interesting question though a lot will depend on your interests and background.
A “software developer” is a very broad term and can range from a core Java/Web developer to include folks configuring and customizing COTS products like SFDC or Oracle Fusion.
There is no indication of the business domain or industry you come from so I will assume you have a basic degree in IS or IT and have a few years of software development experience as a Java or .NET developer.
If you have identified an opening within the EA group in your organization, you will have to evaluate an your understanding of basic EA concepts; for example TOGAF’s ADM (link)


As a software developer you may be aware of some aspects of Information Systems and Technology Architecture, primarily by developing and deploying code to meet business requirements. As an Enterprise Architect, you will have to broaden your horizon to other BDAT dimensions too. Some of it can be done by attending training sessions on EA topics. You should also seek mentoring from EA’s in your organizations or your network.

Note: This is a rather short answer to a question that requires a lot more context about your background and long term goals. My response to similar questions on my blog - How important is it for an Enterprise Architect to have business domain knowledge?

Saturday, September 8, 2018

Asymmetric information on jobs and Hiring on LinkedIn: and how to stay ahead

A while ago, I updated my Linkedin profile to indicate I had relocated and taken on a new opportunity. A few in my network noticed and messaged me. Nothing new here. People switch jobs all the time. However, a few also noticed that I had relocated back to Bangalore, the ‘Silicon Valley of Asia,’ and were curious especially about my experiences in exploring opportunities here. Rather than respond individually, I thought I would blog this piece about my observations.

My relocation was prompted by a personal need, to be around to support my aging parents. With the safety net of a job with a multinational, I initially tried commuting between my home in North Carolina and Bengaluru. However, I quickly realized that it wasn’t a practical option and I couldn’t plan to ‘work remotely’ in perpetuity.

I began to explore local opportunities in the market, and leveraged this platform, LinkedIn extensively. Most headhunters will tell you, networking and social media are the primary source of leads and opportunities so I began to revive some of my dormant social media contacts, especially people I had worked with in the past.

Networking has to be contextual, which means understanding the market to have a focused engagement.

The Market and Job Segments  


The IT Enabled Services (ITES) industry has transformed in the decade since I had been here. According to NASSCOM, the Indian trade association, the IT sector generates revenues of US$160 billion, and employs over 3.1 million people. The ITES also experiences an attrition of over 20 %, which means nearly a million people are switching jobs every year. The trend is similar across the spectrum of the industry – software companies, software services firms and also captive shared services organizations. All this makes for an extremely vibrant marketplace by any account.

Most of the tech jobs are concentrated in tech belts in three or four major metros in India, and the ITES industry continues to be bottom-heavy. Although the industry continues to mature, the jobs seem to fall into distinct categories in a pyramid.


  • Hands on roles – These hands-on folks develop code, configure service and test and debug services. Those with 1 to 5 years experience are the most in demand.
  • Tech-Leads and Mangers – Generally people with 5-10 years of experience. They gather and validate requirements, manage and guide teams of hands-on developers
  • People Mangers – These professionals, with 10-15 years of experience, are generally at the top of the pyramid either as client facing leaders or delivery managers who may manage several teams. Their primary focus is on managing ‘resources’ – people and other resources needed by their teams
  • Others – This category is broad and open ended. It includes line-of-business managers who own P&L and sometimes experienced consultants



Recruiters and hiring managers are rather rigid when it comes to this ‘years and roles’ mapping. A person with 10 or 15 years’ experience is not expected to be hands-on. Therefore, a seasoned programmer or developer will find it hard to sell herself with a resume showing 15 years’ hands-on development experience. Each category in the pyramid has a distinct pay-package associated, and there is a perception that over-qualified candidates may not be tenured or stick around, even if they are willing to accept a lower package.  Recruiters automatically screen out such profiles as ‘over qualified’ citing cost constraints and tenure risks.

After a brief review of the market and vetting my understanding with a few people in my network, I began leveraging LinkedIn in my search. After all, there are anecdotal accounts to indicate that social media, especially LinkedIn is the primary networking tool used by candidates and hiring managers alike.

How does LinkedIn connect candidates with opportunities?


There are hundreds of thousands of ITES professionals on LinkedIn; some more active than others. Not surprisingly, there are different techniques candidates and hiring managers use while connecting with each other across the market and job segments.

Managers posting opportunities directly: During my search, I noticed that scores of hiring managers directly posting opportunities on LinkedIn. The reach of such posts can be amplified beyond one’s network when peers ‘like,’ and ‘share’ such posts. Such direct engagement can connect you instantly with hiring manager posting the request, especially if you have the skills and experience in the topic of interest. 

Such posts may have some limitations too. When a senior-executive with a social network of similar peers posts for a junior hands-on role, job-seekers at the bottom of the pyramid who are not connected to the said manager may not come across that post. Lost in the general cacophony – Posts announcing opportunities may get lost in the barrage of notifications in one’s landing page. A few likes that these posts generate have to compete for eyeballs against other self-serving posts. For example, ‘Yay, Here I am standing in a queue to get an autographed copy of Warren Buffet’ will generate dozens of likes, shares and comments; more than a simple “update on hiring”


Announcing ‘seeking an interesting opportunity' – Many candidates update their LinkedIn headline to indicate that they are actively seeking new opportunities. Recruitment consultants are divided on this approach. On one hand, a person who is active in LinkedIn groups whose profiles indicates they are also available may interest hiring managers or recruiters. On the other hand, recruiters are generally more interested in those who are already employed and less excited about those in between jobs.

Updating Career Interests – The ‘Career Interests’ section on Linkedin is an effective tool to announce one’s career interests. Updating that section is an effective but stealthy way for candidates to appear in searches without explicitly announcing, “I’m available”

Be active in the medium – Posting Pulse blogs, engaging with others on LinkedIn groups and answering queries on topics will get your profile noticed. You should select the mode of communication like a Pulse Blog based on your interests. For instance, not everybody has the time or inclination to post lengthy Pulse Blogs. Such engagement should also focus on specific groups like that of Salesforce, RPA, Mainframes or areas. If change in work location or geography is what you want, engage in forums where target employers and recruiters are likely to find you. Intelligent and articulate responses to queries on such forums will help you showcase your command over the topic while helping peers.

Search and Apply – LinkedIn is also turning out to be a vibrant job search engine with hundreds of thousands of new jobs posted every day. Recruiters across industry segments and geographies are actively engaged in the job portal. Many also leverage the one-click apply feature that allows candidates to automatically import from their LinkedIn profile to the employer’s Applicant Tracking Systems.

For some of us, networking on social media platforms like Linkedin can become second nature. However, navigating a platform that attracts millions of active users like you and me, may sometimes feel a bit overwhelming. Some people may find it hard to get their profiles to stand out.



The creative few may find it refreshing to go off the grid: like the Bangalore techie who recently became an internet sensation by riding a horse in busy traffic on his last day at work.

Thanks for reading! Please click on Like, or Share, Tweet and Comment below to continue this conversation or share your favorite 'trend to watch' | Reposted from my LinkedIn Pulse

Saturday, September 1, 2018

Rolling out Robotics, Automation and RPA? Prepare for the initial heavy-lifting!

I recently posted a couple of requests on my LinkedIn feed looking for people with expertise in Robotic Process Automation (#RPA link). I got a few good leads and some of my peers reached out asking what I was doing in this space. I figured it was a topic for a Pulse article, building on the theme of Digital Strategy Execution that I had blogged about earlier (link).

Automation, especially emerging tools enabled by RPA is getting a lot of attention among technology and business executives.

The Use Cases for automation using RPA tools are certainly compelling. Most organizations are likely to encounter gaps in existing processes that evolve over time. Many require users to perform repeated tasks like entering data from printed document or validating data in one system against other systems. RPA tools can help automate mundane, repetitive tasks. Putting together a business case to invest in tools and resources sounds compelling. However, the heavy lifting begins after the business buys into the promise of RPA. 

Case in Point


As an Enterprise Architect responsible for Corporate Functions, I get involved in technology transformations and reviewing new tools and technologies. The finance business unit was reviewing quick-win automation techniques while planning for a major system re-engineering.

The group receives thousands of invoices from vendors and suppliers across the globe. While they had integrated the invoice processing with a few large vendors, the long tail still involves thousands of invoices coming in as faxes and emails with attachments. The business engaged an outsourcer whose team used a semi-manual approach to process the invoices. They take inputs from the mails and reconcile the invoices against the original Purchase Order in the source system, after which the invoices are cleared for processing and payment in another financial system. The process has many variations; for example, some of the invoices are for single items while a large number have multiple line-items.

The long-term roadmap involves re-engineering the process to automate the integrations and workflow, which is likely to take more than a year. In the meantime, the team wants to reduce the manual processing that is fraught with errors.

This jumps out as a textbook-case for automation using RPA Robots (Bots); after a quick review, the business sponsors signed off on automation. RPA analysts were engaged to review the current steps, and began to work with functional SMEs to plan for automation.

And then the wait began; and some began to wonder why.

The reason was obvious. This was the first time the business unit was rolling out an RPA solution. Before the initial euphoria died down, we began reviewing the design to enable the foundational elements and infrastructure.

The details of implementing robotics lie beneath the iceberg


Our experience thus far has been in line with the data quoted in this PWC report (link), that gives a dose of reality. The report highlights how “The enterprises do not always feel that they have received sufficient information about how long time it actually takes to create just the right foundation.”



While the Business Analysts and RPA developers review the process to automate, RPA Architects and design teams need to review some of the guiding principles. Typical questions that need to be addressed include:


  • Procuring tools – How long does your procurement team take while approving a new vendor solution? If you happen to be in a large enterprise, you will have to work through your ‘procurement process’ before you acquire the first licensed copy of the chosen tool (UIPath, Blue Prism, Automation Anywhere or others) 
  • IT Governance - Does your IS policy allows system accounts for non-human users? What is the process to enable application specific access for the Bot accounts? A Bot will require a network account, user-id, application and other credentials. The first time you introduce Bot accounts in your landscape, you will have to review the policies that govern accounts used by such non-humans. 
  • Business policies – An invoice processed for payment triggered by a Bot will require it to login into the Financial system. The Bot will need credentials similar to a human triggering invoice-processing. Does your corporate compliance policy allow for non-human accounts to login and process transactions on your financial (or HR, or Legal) systems? Do you have the same level of tractability for activities performed by Bot-accounts? Do you plan to onboard and offboard Bot accounts periodically? 
  • Basic SDLC – How do you plan to test your Bots? Do you have the systems, environments and test data to validate the Bots? Most business users at enterprises require new systems and processes to be rigorously tested before it goes live. Business stakeholders will expect the same rigor in validating the operations of a Bot before you let them loose in your landscape. 
  • Managing Bots – Who is going to operate and monitor the activities of the Bots? Robots can be scheduled to run periodically or triggered by events. However, just like other systems, they will periodically fail or generate exceptions. You will need to extend the support and service model to the operations of Bots.

Some of these questions may sound trivial, and may be a non-issue in smaller organizations or startups. However, stakeholders in larger organizations may not articulate such Non Functional Requirements (NFRs) but will nevertheless expect attention to detail when it comes Bots that operate with live financial, customer, employee or other corporate data.

Bottomline: Before the first time you decide to roll-out production grade RPA solutions that begin to process your enterprise’s live financial, accounting or procurement data, you need to analyze and agree on the foundation elements of automation.
________________________________________
Thanks for reading! Please click on Like, or Share, Tweet and Comment below to continue this conversation or share your experiences with AI, Automation and Bots.