Tag Archives: Project Manager

What makes a good project manager?

Categories: Semi-Popular, Software Development | Tagged , , | Leave a comment

Most people think that someone experienced would make a good project manager. This is not always the case. If you don’t triple check everything and watch every detail, you can not be a good project manager even if you have 30 years of experience. If you can’t communicate well, you also cannot lead others. Experienced workers often lack all of the qualifications to be a good project manager. The problem is that a good business model consists of having a good lead programmer on staff to supervise the others.

If you have a team of programmers and the lower level programmers are sometimes a little sloppy, that is acceptable (although not desirable) assuming that the project manager catches all of their mistakes before they go too far. But, if there is any failing on the part of the project manager, the project can not get done efficiently (or at all).

A good project manager needs to know how to:
Estimate jobs, allocate resources, communicate, double check work, regularly confirm ETA and schedules, and more.

The irony is that the project manager doesn’t have to be a good worker, or a worker at all. Many good project managers do not know how to code. They might be able to read code, but they often do not know the language being used in a particular project. Their job is to lead, and not to work. Some people are better at grunt work while others are born leaders.

Just remember the following quote:
Those who cannot do — lead; Those who cannot lead, lead leaders! Those who cannot lead leaders become project managers at dysfunctional companies!

You might also like:

Steve Jobs watched his programmers carefully, so should you!
Click here

How good are you at estimating jobs?
Click here

Each rep gives a different answer!

Categories: Outsourcing Articles | Tagged , , , , | Leave a comment

When I interview companies to hire them for various outsourcing processes, one thing always comes true: If I talk to two different people at the same company, the answer is always different. The salesperson tells me one thing and the project manager tells me something completely different.

So, who should you believe? My experience is that salespeople are usually poorly trained. Unless the person doing sales has extensive technical knowledge, I would not believe a word they say, even about easy things. I had one company tell me that they had forty programmers who knew a particular language. When I talked to the project manager, the answer changed to ten. A similar situation happened with another company.

Interview the salesperson to see how they were trained
When interviewing companies, interview the salesperson, NOT to get answers, but to see how they are trained, and how accurate / honest they are. If you can catch them making mistakes, then you know the company is not perfect. However, in outsourcing, NOBODY is perfect. So, if they made one small mistake instead of three huge omissions or blatant lies, perhaps you are in reasonably good hands.

Interview the project manager for actual answers
When I interview project managers and technical managers, they are never as happy or cheery as the salespeople. The answers are often very negative and pessimistic. Interviewing these technical types is a great way to verify point by point what the salesperson said.

Assessing the company
I am very unclear as to whether or not you can assess the quality of a company based on the quality of the sales staff. However, if anyone at a particular company is poorly trained and gives out poor answers to questions, that is a very bad sign. We are all human and people make mistakes, so I would not dismiss a company that has one or two screws loose. However, I would keep a screw count, so that you can compare them to other companies you interviewed. You need to keep track of how competent each person at the company is — that means keep a scoresheet for at least two salespeople per company, and two project managers per company. If you can talk to actual workers, that is good too, because companies normally hide their shameful workers from the public — and for good reason!

You might also like:

Hiring people who can really think

Are you tired of outsourcing to India?

Mixed-level software teams: a business model that works!

Categories: Software Development | Tagged , , , , | Leave a comment

I have talked to people at all types of companies. I know people who have one office and want another. I know people who work remotely. I know people who have an office in India and a sales office in the United States. All of these company structures are part of the bigger picture of what a business model is. But, I learned a secret from reading blogs and seeing who performs best in real life — and I am going to share this with you.

Bottom heavy
Typical companies in India are bottom heavy. They have lots of workers, but very few managers. Many workers are self-managing. This type of business model could work if you exclusively hire workers who are capable of doing a great job being self-managing. Most people are not self-managing, so I would avoid this business model.

Mixed teams — a winning idea!
But, companies with what I like to call, “mixed teams” seem to work optimally. They have a skill mixture in each team. Teams could even have replaceable members just as rickshaws all use the same parts which you can transfer from one rick to another in seconds. Imagine a team of five people. You have a project manager who is very seasoned, a mid-level worker, and three junior programmers. The grunt work gets done by the lower level workers. The planning and supervision gets done by the project manager. The more complicated work gets done by the mid-level employee. Brilliant and cost effective too! You are still getting cheap labor for the majority of the project paired with the superior thinking skills of a seasoned professional! But, there is more!

If the lower level employees get stuck, they have not one, but two seasoned people to ask for help. But, there is yet another even bigger problem that the mixed level model solves. It is very hard to hire higher level programmers in any country these days. They are systematically gulped up by big companies and seldom available. It is easier to hire inexperienced people since there are so many of them and nobody really values them. So, what is the strategy? If your high level programmer leaves the company after a few years, your mid-level employee will be experienced enough to promote to that higher position in many cases. Internal hiring solves this huge problem of a worldwide shortage of experienced programmers.

You might also like:

How to make sure that the software company you hired will deliver!
Click here

How to test a software company
Click here