Tag Archives: Lead Programmer

We like to work remotely = a warning sign in programming!

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

“We like to work remotely”
In this virtual age, people work remotely all the time. That is possible with the new technology, and a popular choice. I work from home as does everyone I work with. But, not everyone works well from home.

I like to work “one on one” with programmers. That means I need to visit their office to work with them. The problem I encounter is that they either don’t like having me around — ever, or that they don’t have an office. It gets more confusing than that though.

American companies in California and other states are very tricky these days. Watch out, because you might get taken for a ride. When I ask if the company has an office, they often say that they do. Next, I ask if the people they hire actually work in the office. You never know, they might have half their staff in the Philippines. I get a variety of answers. I typically tell them that I am going to visit their office so I can get a sense of who they are and how they work, etc. It is common for these companies to tell me that they do not allow visits from clients. They are probably hiding the fact that their workers are not actually working in their office.

The next truth or untruth I typically uncover is that their workers not only work remotely, but are not in fact employees. This is actually a serious problem. If a company has an employee, they can tell the employee what to do, and the employee has to do it. If the virtual programmers are independent contractors, they can accept any job they like, and are often very picky about who they will even talk to. Your point of contact will assure you that they are in control, but more times than not, the programmer is in control, and is not interested in acquiring new clients.

Then, when I find companies whose employees actually do work all under the same roof, the common answer is that they don’t want to work with me. There always seems to be a reason why I am prevented from getting my work done by someone reliable.

I had one scenario with a bunch of programmers. They told me that there were seven of them and that they were all authors. I was assigned to their lead programmer. After a while there were “delays” in my work getting done. The delays were really that the programmer had taken on a new client and didn’t want to work with me because he didn’t like me and didn’t have time either. I mentioned that I would be happy to work with their other programmers. Then, I learned that was against company policy as the lead programmer had to know what was going on before they could write even a single line of code. I was sabotaged with an artificial road block. The truth was that there was only one programmer and that he was not an author. I was hoodwinked.

Review of scenarios
(1) A programming company actually has an office with actual employees working in the actual office. They might refuse to work with a small company or bid four times the number of hours that a project actually needs. We have seen this many times. They can get away with a lot because they seem reputable.
(2) A programming company PRETENDS to have an office. When you tell them you are going to visit them, then the “employees” work remotely and are not in the office. When you finally make it to their office, it is a conference room in a shared office — and their name is not even on the roster for the shared office space.
(3) A programming company says that they work REMOTELY, but that they have been working with each other for 10 years. You have no way to verify how long they have been in business or how long they have been working with a particular programmer. The arrangement is likely to only have lasted a few months to two years at most making it very unstable for a long term relationship.
(4) A programming company has an office, but refuses to let you work directly with programmers there. Are they hiding something?
(5) A programming company with or without an office hires overseas workers who might not live up to any type of American standards.

How can you be safe hiring programmers you might ask? Honestly, California is the worst place in the world to look for a programmer. Try the Mid-West, Northeast, or find a company in India or Belarus that you have screened very thoroughly. There are some very good companies overseas, but they are mixed in with some con artists. America has almost the same percentage of con artists, but with prices that are four times as high. Do you want to get conned in dollars or rupees? I assure you that getting conned in dollars is much more costly! Be cautious and good luck!

You might also like:

5 reasons to have your company under one roof!

Cottage industries in India ruin India’s outsourcing reputation

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