Non-Technical Managers

I started working on computers in the year 1992. It’s been almost 17 years I have been working on software. As I left school to get a serious career in Software programming, I saw a clear cut pattern about people and software.

You see in this world there are 2 kinds of people –

  1. People who know Software
  2. People who don’t know anything about Software

people

But, I have realized that there is a third kind and the most dangerous one.

3. People WHO THINK they know Software

people2

And believe me there are a lot of people who are out there who fall into 3rd category. With technology advancing so fast, people who wield a iPhone or a Blackberry think they know enough about software. It’s because the software “using” has become so dumb and easy.

For example, take ‘iTunes’ – it’s the best interface ever to interact with music files. Period. It also comes with a Apple store plus a kitchen sink! People love it. People like one windowed interface to all their music. If you read that carefully – I said, ‘using’ software has become so easy. But the problem is ‘building’ software hasn’t improved as much as the ‘using’ part.

itunes
iTunes, the mother of all future software design

Now, coming to the point. Imagine if you belong to Group 1 (People who know Software)¬†– you work hard to build software and you know it and you are confident about yourself. Then as your career progresses you become a ‘Technical Manager’. You talk to developers and you give out ideas, you schedule project plans, communications. You know which tools to use and you have got it under control. Awesome. Congratulations and my kudos to you.

Imagine if you belong to Group 2 (People who don’t know anything about Software) – you work hard, you buy a Mac, you have friends who work in software but you never talk to them about their tools. You talk about the outcome of the software process, a product or a service. You use, of course, iTunes. You buy legitimate software and you are happy with your Apple updates. No problem. In the alternate universe – you buy PC, go for Vista and cussing Microsoft & HP printers but you still end up loving how easy iTunes works and how fast Safari 4 is.

Now, Imagine if you belong to Group 3 (People WHO THINK they know Software) – You work hard, but you don’t know that you don’t know. You have software friends, but you yap away some jargon. You use iTunes and think every software in this world SHOULD look like iTunes (Kamal, I can hear you giggle). You think software is cheap and easy and so are people who work on it. You zoom through your life without any clue about software but still maintain your egoistic authority on it.

The major pain in the butt situation is when these Group 3 people become Managers – by some chance or luck or sheer Oldage or money (mergers). These people think they know how software works and how their developers think. They have no idea about software project management and no clue about versions, timed release of software and best practices of software. What happens is the slow decay or rotting of the company. I have been in so many situations in my career all-together that I saw so many of these so called “Non-Technical” managers killing off the product, service and eventually the company. But, the real problem is they don’t know that they are the problem. They move onto new companies, new acquisitions and killing many other future companies.

How do you identify these people?

Look out for these warning signs.

  1. When they say they want a new tool to create a website with 1 click.
  2. When they ask you access to FTP because they think the data is on FTP server
  3. When they want everything to look like some software they have used in the past (Hint: iTunes)
  4. When they refuse to give you access to server but still want you to build a website on it
  5. When they ask you to store passwords & Credit card numbers in plain text because they want to see them in daily reports.
  6. When they want everything to be exported to an Excel sheet
  7. Their favorite quote – ‘I wanted this feature yesterday’.
  8. When they want ’rounded corners’ on everything.
  9. They think Web 2.0 is a boxed product.
  10. When they treat ‘Testing’ as a ‘Delay’

Let me know if you come across anything I miss. I am sure there are many more.

How do you fix this?

This is tough, but with some patience and some systems these could be fixed.  Here they are:

  1. You basically have to educate this person who thinks he/she knows software. The education they skipped in the past needs to be put in their brains.
  2. You create a system. You tell them – this is where you keep an eye and I will update the status when it’s done. Use some online project management tool.

If these 2 fail, you become an expert in one of the software niche and become a freelancer that way you never have to work under a ‘Non-Technical’ Manager. You finish a project and you move on. You never have to educate anyone and you will be happy with your work. You would giggle inside when the ‘Non-Technical’ manager references iTunes in a meeting, but at least you don’t have to see him after the project is done.

Project Management Blues

“What are you thinking?”, asked Sangita.

It was the 3rd time that she caught me looking into oblivion and thinking. I wanted to lie but couldn’t. I said, very reluctantly as I did the earlier 2 times – “I am thinking about my project”. I kinda felt ashamed that I was using our quality time together in worrying about my project. I have had a shocking truth revealed to me once I joined my new job here in India.

Project Management is a skill which is acquired.”

All projects start by getting mis-managed” (It’s sort of Catholic view of projects – All projects are basically mis-managed, it’s by praying in the church of ‘Clarity’ we set them straight)

I have seen this consistently. And in all my 8 years of experience, I have had the opportunity of working with a great project manager only once. Only once was I part of a team which witnessed “Project Nirvana”. (The person is Harjit Sabharwal) and all the rest of time, it was chaos. Irrespective of whether it was US, Singapore, Malaysia, or Hong Kong it was project management chaos everywhere. Now I am witnessing the same behavior again here in India. I think it’s epidemic.

People are very good at disciplining themselves. They can silo their skills into one direction and achieve great success but when it comes to project management they get stuck. It’s something which has bothered me a lot than my pesky little code bug. Why is it so hard to do Project Management? Why is it so hard to manage anyone other than ‘I, me and myself‘? How come only very few excel at this skill set? Here are some of my observations.

(Disclaimer: I am not a Project Manager, I don’t intend to be one yet. I love programming and love creating solutions to problems. But project management hasn’t lured me yet. I just find it fascinating that it’s been only cracked by very few so far. My wife is an Organizational trainer, so we end up talking about this kind of stuff almost everyday. What makes people tick, why are some inspired? Why do projects suck? How can one be a good leader? So, these are just my observations, my opinion)

1. It’s not about you: Every guy I have met who is managing a project has this huge ego which is actually bigger than the project. This project manager thinks that it’s all about him, it’s all about ‘his’ execution. Not once does it occur to him – it’s about the project. He is just a cog in the wheel to deliver the respective project on time. May be a shiny cog in the wheel as he is the project manager.

2. It’s not ALL about the project: Now once any successful project manager crosses the hurdle #1, he is obviously going to get stuck with the second one. Because most of us tend to think about the world in black and white. But the reality is far from there. It’s not all about the project. To finish a project you need people. You need a team. A team which will work WITH you (NOT under you – change your thinking immediately if you still think that being a project manager means you are above the team. It’s just means that you have more responsibility in the team). So, you basically have this dedicated team and this project target. The project manager’s job is to inspire the team to achieve the target and deliver it to the client. So, it’s not just all about the project.

3. The answer doesn’t lie in the processes: So people who cross the hurdles #1 & #2 are definitely going to get stuck in this one. So, a lot of project managers think that if they implement a set of successful processes then everything will be taken care of. NOPE. Processes are just tools to ease your way with the shit load of information you need to handle once you become a project manager. It’s just a tool. So, the answer doesn’t lie in processes, but what the processes give out : effective communication. The key is “effective communication”. If you achieve it, then there is no looking back. A lot of project managers I work with are very busy people and when they talk about their project – they sounds so trite and negative. A part of effective communication is also treating challenges as opportunities rather than roadblocks. If the project manager sounds enthusiastic about the project the team would too.

4. Man day Vs Calendar day: Repeat after me, there is no connection between man day and calendar day. Please repeat after me. Because a lot of project managers think so. It’s not true, if you do think so – please pull your head out of your ass. There is a great book written on it – called “The Mythical Man Month” (See below). Please go buy it and read it cover to cover. Study it. If not let me know your birthday, I would present my copy to you any day. A lot of project managers think that adding people will get the project to finish in time. It works only when you add 1 person to a team of 2. In all other cases it fails. But this logic gets applied to all the projects. Even they boast to client that – we added 3 more developers to the project to finish your shiny new application before Christmas!

5. No, you can’t reduce QA time: A lot of thinking here is usually the project manager was probably a programmer in his past life and the only thing he/she thinks important is – any guesses? ‘Progamming’! So, when hit with crunch time and when adding more people does not solve the problem all they do is to cut off the QA time for the project. It is such a sin to do so. I am always surprised how lowly they treat QA. May be it’s because they forgot that there is “Quality” in QA. May be next time we should promote our QA manager as project manager then we will have 10 days development and 50 days QA.

6. Estimation, Estimation, Estimation:Hindsight is 20/20. Everyone can ponder on the past, but it’s an uphill task for anyone to take a guess about how much time would a certain thing take to finish in future. I always find that most of the project managers have trouble with project estimation. Like how project management is a skill – I think project estimation is even a bigger skill for a Project Manager to have. I have seen a lot of people rattling off the number of days (of course man days!) just by speaking to a client. Then they backtrack once the requirements come into picture. This skill should be taught in every school and college because time estimation not only makes one a better Project Manager but also better person

7. You can say NO: A lot of Project Managers are shit scared to say no to a client. In the process of impressing the other side and getting on their good side, usually Project Managers agree to all the whims and fancies of the client and get themselves, their team and also the client in trouble. It’s not a win-win situation to agree to everything the client says. Imagine a situation where a doctor has never learned to say no. If the patient asks for more sedative drugs (for the un-informed google ‘vicodin’ or ‘sudafed’) and the doctor keeps giving it to the patient, it’s either going to kill the patient soon or the doctor is going to lose his job. Like we have prescriptions in medical world, we too should have “requirement prescriptions” in project management world. That way, for people who have not yet learned to say ‘No’, they can blame it on the prescribed requirements.

8. Release date is a requirement, not a feature: A lot of project managers I work with keep saying that in the last moment, the release date may get postponed. They blame it on the Client saying that they are asking for too many requirements so it’s ok to delay the project. Well if they keep on adding requirements and we keep on adding man days – well then it’s just not project management. Often, developers and team members hear the project manager talking out like this and they assume that they can relax and get the work done in the last stages of project (‘the urgency addiction’ – well it’s another blog post) . So this kills the spirit of the project and I have been a victim of this a lot many times.

So there, that’s what I think of Project Management. Having said that, I also think that there are couple of books which needs to be on every Project Manager’s book shelf. Again, if you see – most of these books are not at all related to projects, but humans! Are you surprised?

. First Things FirstMythical Man MonthPeoplewareLeadership and Self-DeceptionFive dysfunctions of a teamDeath by meeting