IT Services industry – time for empty talk is over !


Every day I read at least one article that talks about Indian IT companies planning to hire several thousand people locally in US , and multiple articles about digital transformation disrupting multiple industries. What is abundantly clear to me is that jobs and careers as we have known them will get disrupted in an unpleasant way and society will have to pay a big price to pay . 

Global IT services business was built on “your mess for less” philosophy, not on advisory and consulting type business . 

If you, the client,need to spend a million dollars to process invoices or make collections  ,then  I – the service provider – have a combination of cheaper labor ,infrastructure  scale and technology that lets me do it for cheaper . So I will do it for cheaper and give you a better deal while still keeping a healthy margin for myself . And then I will keep optimizing my process and technology so that I make better margins – some of which I will pass on to you too . Now that you love the model for invoice processing , I can also make this work for you in say maintaining your ERP system . I will just hire more people , and use the learning from the invoice process work and keep making my business better while you have a healthy cut on your costs too . 

The differentiation became one of price charged by the provider – and hence buyers just needed to compare rate cards for the most part to make a determination . The last couple of decades went along this way – with minor differences . There came a point where low price alone wasn’t differentiating enough – so some kind of price + value add was needed to keep this motion going . That came in the way of pricing for outcomes , rebadging employees , adding some freebies like proof of concept work , etc . 

What didn’t change was that success was still tied largely to headcount – how many people could the customer take off their books , and how many the provider could add . Even if the contracts were outcome based , the costs were mostly head count based . This model could adapt to slow changing technology – but not for massive shifts in technology . For example – when BPM came along a decade ago, a ten member team probably got shifted to an eight member team . But when AI becomes mainstream – with visual recognition , pattern matching and so on – we may only need 2 people to do that job , or perhaps none ! The current model is not built for that kind of disruption – and companies and people will both have a price to pay .
I look at “we will hire thousands of employees in US” as mostly (not solely) a PR exercise . While protectionism will very slightly delay the inevitable – the job losses in US and elsewhere won’t be because India and China have cheaper labor . It will be because automation will take over routine repeatable jobs , and there just won’t be enough people with the skills needed for the higher end jobs given we have not prepared as a society and as an industry for such a tipping point . 

These higher end jobs unfortunately cannot be done in near future in India ( not sure about other countries but can’t be that different ) because the quality of the mass produced engineers are not anywhere close to the levels needed for taking these jobs on scale .  Revamping the education system world wide should be priority one – and this can’t be done via formal education system alone . 

It will be a rather weird world ahead of us till we hit the next equilibrium point . Job losses will not be because there aren’t enough jobs that need to be filled  – it will be because we don’t have enough people with the new skills . 

Automation will light up the industry candle on both ends – clients will automate a lot of their work , and service providers will automate a lot of their work . This affects all levels of current services organization hierarchy . For the most part , I expect the fundamental services business model to change . Just a few examples in no particular order to make the point

1. Services companies became large and profitable by optimizing large resource pools – like a thousand ETL programmers to support a hundred  projects . Large SI companies historically did not need too many people with multiple skills – so it was quite possible to be a top class ETL programmer without ever needing data modeling skills for example . When the need changes to micro specialization by client , and smaller and shorter projects , it no longer makes it possible to optimize this way . So I expect the large service providers to be more of general contractors and the actual skills to be provided by individuals and smaller companies . Some very niche skills alone might get housed in these larger SIs – and the differentiation will mostly be IP based 

2. Neither clients nor providers will need a lot of managers purely for administrative reasons like reporting , aggregating etc . I do expect project management to become even more important though . 

3. When robots take some of the the jobs of humans – HR will need skills to integrate human machine interactions . While it might sound funny today , I do expect people with “robot recruitment expert” in future 🙂 . Finance will need to deal with the newtradeoffs between balance sheet and P&L when robotics become mainstream. Similarly for a service provider differentiating primarily on IP – the CFO will start watching balance sheet a whole lot more than she does today . 

4. For near term at least – countries like India are better off transitioning to products from services . But in the mid to long term , there won’t be much of a difference between what is a product and what is a service . Again , the skill requirements and business model changes are significant and fairly disruptive 

5. The scope of services provided will fundamentally change . As clients automate their plants and further increase the complexity of their supply chain and talent mix – how many services companies can help them on the front line ? The “manufacturing vertical” of most services firms today deal with mostly back office functionality of manufacturing companies – that won’t be very useful in just a couple of years 

6. Consultants , Advisors and buyers’ agents will need a lot more depth than the high level digital transformation power points, and rate card benchmarks to earn their keep . The level of knowledge needed to implement actual robotics in a company is not the same as “here are the 7 steps” on a power point chart you can impress a senior exec with today.

You get the idea – it’s not just the line employees who will get impacted , the entire length and breadth of the services ecosystem will get disrupted . And given the high spending power of this segment in the society and economy at large – the impact will be wide spread . In other words, the time to act has probably passed us already and we better start at least now . 

The first step to change is acknowledging we have a problem – so let’s get that over with and start the creative destruction and the rebuild . The onus is on each of us as individuals to reskill ourselves for the needs of tomorrow . And the onus is on each leader to join hands with each other to collectively define and implement the future of our industry – we cannot solve this one company at a time. This is not the time for empty promises and bravado filled PR  and small ring fenced teams that do “innovation” – we need meaningful action at scale . Let’s go !

42


17457730_10211044730008694_7774847910394932188_n

So I turned 42 – and woke up to 100s of birthday wishes from family and friends around the world. Its also the first time I have had my parents and my mother in law with us here for my birthday, and that makes it extra special.

As I settled down with my two fur kids to enjoy a cup of coffee, it dawned on me that 42 is my favorite number – thanks to Douglas Adams . When I first read the book, I had my fair share of theories (and fierce arguments with friends and strangers) on why is it the ultimate answer – including the binary representation and all.

Then I found out the truth a few years ago and then I liked 42 even more!

“The answer to this is very simple,” Adams said. “It was a joke. It had to be a number, an ordinary, smallish number, and I chose that one. Binary representations, base 13, Tibetan monks are all complete nonsense. I sat on my desk, stared in to the garden and thought 42 will do. I typed it out. End of story.”

The big lesson that 42 taught me was to not take the world around me – and myself – not too seriously . When we do take ourselves too seriously, the joke is invariably on us 🙂

There are three times every year that I look back and forward – New year, my birthday, and the day I review the business plan for my team at work.

Looking back, its amazing how perspectives change with time – and some times at alarmingly accelerated pace. Some totally random birthday thoughts here.

  1. Growing old is not some kind of slow process – and not something that only happens to others. When I joined TCS out of B School, I was 24 and my boss was 30. We used to call him “The old man”. Joke is on me – I am the old man now 🙂
  2. Not everything that is forced on you is bad. I hated being sent to learn Carnatic music as a kid. I never became a good singer, but the music theory stayed with me and now I appreciate the music a lot. I still tease my mom for forcing me to learn music and she teases me that all I seem to listen to is the music she forced me to learn. The irony is readily apparent to me as I drive my kiddo to her weekend activities, some of which she thinks we force on her 🙂
  3. All I wanted as a young kid was to become a professional dog handler. I was pretty good at the craft – and had my fair share of wins in the ring. I still enjoy dog shows – but I enjoy spoiling my fur kids at home a lot more today than taking them through their paces at a show. From time to time I do feel the urge to take the leash and go into the ring just for fun – and I might still do that one of these days. I am not yet fully over the grief of losing my dear fur kid, Boss, but I am also convinced we will get a pup again in near future.
  4. Life has a way of going in circles. After a degree in mechanical engineering and an MBA, I decided my calling was as a programmer. Then along the way, I got nudged into sales, management and all that I hated as a young developer. Turns out not all sellers and managers are horrible people like I initially thought 🙂 . And guess what – its my technical skills that help me the most as I build my current team.
  5. While I try hard to keep my tech skills sharp, I have also realized that its way more fulfilling to be the one handing out the prizes than being the one gunning for those prizes. Bar none, the best part of my work life is to help my friends and colleagues succeed and be their number one cheer leader. And on personal front, the (more than) equivalent is being the chief cheerleader for my daughter.
  6. I (think I) always knew that life is way too short to spend on unimportant things. What I did not realize very well till recently is that some (previously) small little things have become more important to me over time and some big ticket items from past don’t figure in my top priorities as much any more. I just need a little more conviction to say NO to weekend work phone calls – but I am planning on getting better at this really quick 🙂

 

So, you want to manage AI projects ?


Project management is hard as it is . There are three aspects of project management that I think need some extra attention when the project is about AI . Pro tip – if it’s your first time , consider buying a Costco membership for the BIG aspirin containers 🙂


The three aspects ( certainly not the only three) are

1. Estimation 

2. Change management 

3. Testing

It’s the very nature of AI based development that makes it harder than traditional project management . Let’s start by making a few assumptions 

Good engineers who can work well with AI are hard to find – but for this discussion I am going to assume skills are not an issue and somehow the PM formed a team with all the right skills. 

Since AI functionality is exposed as APIs in many cases , I will also make another “simplistic” assumption to make my point about PM that engineers don’t need to be big time mathematicians and statiticians to use the available APIs .  

Just so we are clear – you do need great skills , and you do need some experience with the math to do AI projects well . I am just making these assumptions to keep the focus on PM in this post . For good measure – I am going to use waterfall language here, but there is no difference if the project uses Agile 

Let’s start with estimation . The first step of the process is to define phases like say development and testing , and use some historical data to figure how much effort and time it takes . This is easy for many parts of development like web/mobile/DB etc since there are plenty of past projects to give realistic guidelines . Then we get to the AI part – let’s say just one model is in scope that uses Machine learning .

Now we run into the first issue – whether the model we chose is the right one for the app we are building . In many cases – we won’t know till we actually test it . And even if it works ok , it might not be valuable enough of an insight that it throws back to the app . So whatever we estimate – there is a good chance that while developing we will need to switch drastically to something else and that will invalidate prior estimates . This is on top of all the other things that can go wrong in the actual design of the app . 

Even if the model technically works – performance can become a dog . Not all models support parallel processing . In many cases , another statistical method might need to be considered after you realize performance is going to be a problem . Ergo – potential to rework is lurking throughout .

Then there is the second issue – which is that unlike traditional projects , source data can fundamentally change the fate of an AI project . Data is already a problem in traditional projects  – unclean data can increase ETL effort for example . But it’s kind of easy to estimate ETL effort after you profile source data . But even if data is technically clean – your model may not find it useful . You probably will miss data you need , or need data from additional sources and so on . And there is no good way to know this prior to putting the data through your model . It’s also not uncommon for your base application to change its paramarters significantly because your model needs different information eventually than what you originally designed . 

In other words – your dev and testing team can drive you nuts if you walk in as PM with “traditional” expectations. Now to be fair – it’s not because your engineers are willfully . They just have a harder time debugging when things go sideways – and a lot of things go sideways . The Costco membership helps with less expensive beer over weekends where you reflect your career choices  ðŸ™‚

These two issues already make it hard to estimate and test an AI project . Now let’s look briefly at the change management aspect . 

Explaining what an ML model does in business terms is a non trivial challenge to begin with . Now to explain why the model doesn’t work as planned and why it needs to be reworked – without guarantees it will work the next time – makes it a much harder problem . Even when things work well – and if a business person asked you to explain why the model arrived at the result it did , its often hard to explain .

Good PMs educate their stake holders – AI projects can make them look like a tenured college professor 🙂 

So how does a PM mitigate these issues ? I will offer a few thoughts 

1. Start by educating yourself on fundamentals of AI . You can even create little chatbots etc with minimal to no coding . Get a feel for the actual work upfront before you take over the project . Make sure all your non technical people like Business Analysts do this too 

2. Set the expectation with the client on the nature of the AI projects before the project starts . You can do this with real examples using simple models that you can mock up in Excel and then help the client extrapolate what will happen if something goes wrong 

3. Insist on highest quality engineers . If you have to develop something from scratch today – developers need experience with multiple frameworks and know their trade offs . AI models add a layer of complexity on top and have their own trade offs . Having past experience won’t eliminate all the issues I called out – but it will help minimize the mistakes , and when things go wrong you will recover faster . 

4. Aim small , Miss small . Try hard to resist the temptation of trying to build a complex system in one go. Make small goals and course correct as you go . 

5. Double down on data quality . Encourage your ETL team and data scientists to keep looking at data , visualize them differently and identify problems as early as possible . 

6. Create a support system for you and your team . It’s a new field and everyone needs help from time to time . If you don’t plant your shade trees up front , you will face nothing but grief later 

I am very curious to hear your thoughts and comments !