Fire Your IT Boss 509
theodp writes "Instead of laying off techies who directly help users, Robert X. Cringely argues that the best place to cut IT organizations is at the top. One of the great problems in IT management, Cringely says, is that the big bosses typically haven't a clue what is happening, what needs to happen, and what it all should cost. He issues the following challenge: 'If you are managing an IT shop and can't write the code to render "hello world" in C, HTML, PHP, and pull "hello world" from a MySQL database using a perl script, then you are in the wrong job.' Even with help from Google, Cringely believes many technical managers would fail this test and should get the boot as a result — you can't manage what you don't understand."
I don't know if I fully agree with that (Score:5, Insightful)
I think having the manager understand the technical nature of whats going on is certainly an asset.. but ultimately I don't know if it's a necessity.
Point is, managers manage people. You are there to code.. not them. The only technical details they need to do their job is: how long it will take, how many people can work on it efficiantly, what tasks are dependant on it, risks, and benifits.. and you are there to provide them with that info.
Managers are about the big picture, not the fine details. In fact.. a micro-managing manager can be a bad thing.
I think we've all been there... the guy who is directing the circus has no clue about whats involved in it's component parts and you wonder how he ever got the job...
When you really look at what he spends the day doing though.. you realize the majority of his job revolves around the non-technical things that you probably don't want to have anything to do with (timing, resource allocation, cost, etc..)
Re:I don't know if I fully agree with that (Score:5, Insightful)
Except, I'm not there to provide them with that info. Not really. I'm there to provide them with "this is how long it will take me" or "this is how long I think it should take". That's not necessarily the same thing as how long it should take, what it should cost, etc.
In order to manage me and my fellow employees, as well as the time and money we are spending, they need to have an understanding external to us.
Re:I don't know if I fully agree with that (Score:4, Insightful)
Someone who deals with time and money being spent sounds more like a secretary than a manager.
A manager is someone who is experienced, has detailed understanding + knowledge, and is able to make good decisions.
It's this communicating and making effective decisions that are so key.
Such that the responsibility of a manager is to make good decisions in the areas they are familiar with, and to have enough knowledge to know when they need help make a decision or fulfill a function, and in that case, to find someone who will make a sound decision or fulfill a function.
The creation of subordinate positions is just an iterative step of an endless loop of MakeGoodDecision([situation]) functions.
At some point, the CEO's MakeGoodDecision([...]) function return was MakeGoodDecision(["Need help with IT"]) => Hire an IT manager & MakeGoodDecision([...]) ...
Re:I don't know if I fully agree with that (Score:5, Insightful)
The very best manager you could ever have manages the people above him, not the people below him.
Re:I don't know if I fully agree with that (Score:5, Insightful)
Agree agree agree. I've had a good time working at utterly incompetent workplaces because the bosses 2-3 levels up from me shielded me from the idiocy above me. They deserved their perks, believe me.
Re:I don't know if I fully agree with that (Score:5, Insightful)
Exactly. As someone who has moved up through the IT organization and manages a large group, I spend FAR more time managing my boss and his boss than my staff. They get their assignments, with enough authority to get them done and responsibility to get them done. My job is to secure the necessary resources, provide a sounding-board, review technical decisions they make and run LOTS of interference to keep my boss out of their hair so they can actually get the work done.
I've had very little turnover in my years of managing, and have had people who seek jobs for companies I go to work for to work for me again. Guess I'm doing something right. :-)
Re: (Score:3, Funny)
Yes. You are.
Where do you work? Do you have any positions open? ;)
Re:I don't know if I fully agree with that (Score:4, Informative)
Re:I don't know if I fully agree with that (Score:5, Funny)
It's a trap! You don't want to work for a boss that reads /.! They'll know you're jagging off on here calling them a jerk all day!
Re: (Score:3, Insightful)
Re: (Score:3, Insightful)
Re:I don't know if I fully agree with that (Score:5, Interesting)
I can't agree more.
I'm a bottom-level IT manager. They call me a "team lead," which is code for "you're a manager but we're not giving you any more money."
I was on vacation for 12 days at the end of August. When I got back, I got two reactions:
1. From my boss - "I'm so glad you're back, I tried to get the guys to do a build and apparently just managed to confuse them."
2. From the most senior developer - "I'm so glad you're back, I didn't realize how much you filter out. It was one of the worst weeks I've had in a long time."
My job is to run interference between my boss and my team, and to translate between boss-speak and developer-speak. Occasionally I get to write some code, too. If there's something that looks fun and is small I selfishly grab it for myself. God knows I don't have time to do anything big.
Re: (Score:3, Insightful)
A manager is someone who is experienced, has detailed understanding + knowledge, and is able to make good decisions.
I agree. but key to management, especially of a department in which creativity is part of the job, as IT, is that he/she must be able to gain the respect of the people he/she is managing.
I've worked in fund management for all my life, and the difficulties are broadly similar. good managers fall broadly in two categories:
1. "good secretaries": they basically cohordinate the people involved, act as a go-between in funding/resources allocation within the company, but they have no pretense of technical know
Re:I don't know if I fully agree with that (Score:5, Interesting)
... or experts they can trust. Some of the most pleasant managers I've had, didn't have a clue about the technical aspects of what I do, but they did trust me when I gave them a time/cost/resources estimate. Then they either gave me what i asked for in that estimate or asked what could be accomplished within more limited parameters. My co-workers and I would do everything we could to make good on that estimate, and the manager would do everything they could to keep non-task distractions (like upper management) out of our way. Those were wonderfully enjoyable jobs because i could just go and work, with a minimuim of haggling, looking over my shoulder, or politics.
Re:I don't know if I fully agree with that (Score:5, Insightful)
Some of the most pleasant managers I've had, didn't have a clue about the technical aspects of what I do, but they did trust me when I gave them a time/cost/resources estimate.
Sure, that can be nice when it is you, but what about the less-than-competent/ethical cow-orker who can endlessly blow smoke up the technically clueless manager's ass?
A good manager has a good bullshit detector, which means technical competence is necessary.
Re:I don't know if I fully agree with that (Score:5, Interesting)
Amen!
I have seen more than one company that was effectively dysfunct in the way you describe.
In one particularly disturbing example the CTO is a former taxi-driver(!), I kid you not. He apparently participated in some tech gigs before joining the company but nothing that would turn him into a competent manager by any metric. The boss praises him for his "communication skills" which pretty much translates to the constant ass-blowing (CTO towards CEO) that you mentioned. Other than that everybody knows that he's clueless, it's even obvious when you only look at the figures since he never meets a deadline (well, maybe once a year) and budgets frequently expand like supernovas. Needless to say the company has completely lost all its momentum because this guy accumulated a team of ass-blowers around him that, just like him, can't get shit done but knows how to disguise it in creamy communications...
The scary part is that in our economy this setup *can* work, depending on your business-model. The aforementioned company is making millions in revenue with a ridiculously crappy product, simply because the competition is equally bad or worse.
Re:I don't know if I fully agree with that (Score:5, Insightful)
(timing, resource allocation, cost, etc..)
Yes, but the people who actually see those resources and money at work have a *much* better better idea where they actually go. A manager who has a history lower down will make better choices, instead of just throwing money at something, they might throw it at the project, but aim it a bit better.
Re:I don't know if I fully agree with that (Score:4, Insightful)
Re:I don't know if I fully agree with that (Score:5, Insightful)
It's not so much about slacking as it is about incompetence. Someone might work really hard but produce far worse results than someone who works half as hard, but has talent and pride.
A manager without the skills is likely to keep the former and lay off the latter.
And what does it help if your project completes on time, if it's seriously b0rken? Then there will be months of band-aiding, followed by a declaration that it was a success, no matter how horrible it was. And you end up with five times as many people in the support organization (and managers to oversee them) because you didn't understand enough of the gritty details to ensure that the project got done right. And as a CTO, you'll get a bonus, while the lower level people who have to support the steaming pile of technology get the shaft. Repeatedly, to Ravel's Bolero.
Re:I don't know if I fully agree with that (Score:5, Insightful)
The managers decide whether it's complete or not. Systems work by fiat -- they're declared working, and thus they work on paper, no matter how b0rken they may be.
Remember, support comes out of a different manager's budget.
Re:I don't know if I fully agree with that (Score:5, Interesting)
This simply doesn't work with programmers.
Take a team with a couple of average programmers, one really excellent programmer, and an incompetent programmer who tries really hard all the time.
What does the manager see? He sees two average employees doing overage things. He sees the excellent programmer "goofing off" half the time, because he spends more time thinking than coding. And he sees the incompetent programmer putting in long hours and always working furiously.
What does the manager hear? He hears nothing from the excellent programmer. He hears a lot of moaning about long hours from the incompetent programmer. And he hears a lot of complaining from the average guys about how incompetent the incompetent guy is and a lot of praise for the excellent guy.
What does the manager think? Well, that depends on what he knows. If he knows programmers, then he'll recognize that the excellent guy's output is fantastic, that the incompetent guy's output per hour is extremely low and is causing havoc, and that the average guys are right to complain.
If he doesn't know programmers, he sees some guy who spends all his time goofing off, another guy who works really hard, and two average guys. The average guys complain about the hard worker and praise the lazy guy, thus showing that they are not to be trusted. Apparently they are jealous of the hard worker's success, and are trying to convince the management that they should be allowed to spend all of their time goofing off too. After enough time passes, the heaviest bonuses are awarded to the incompetent guy, and the excellent guy gets fired for goofing off.
It probably doesn't work with a lot of other jobs too, but programming is what I know and it's what we're talking about.
Re: (Score:3, Interesting)
Re:I don't know if I fully agree with that (Score:5, Insightful)
This is so true and common!
But i tell you as soon as the smart programmer is fired. The average programmers who received all the insight and help from the smart programmer disappears as well (usually hence why there is all this praise).
As for the incompetent programmer he totally loses access to his "sugar daddy" and "yoda master" work colleague and in a manner of months if they cant find another good programmer to fill his shoes then the whole ship starts to sink :)
Re:I don't know if I fully agree with that (Score:5, Insightful)
By output do you mean lines of code? For many non-technical IT managers, that's how you measure output. Incompetent programmers can often put out ten lines of code that should require one.
Re: (Score:3, Interesting)
Last week I spent all week re-writing and heavily expanding an interface and it allowed me to remove something like 5000 lines of code from the software. Measuring LOC would have had me seriously in the negitive.
Re: (Score:3, Insightful)
I would have throught the best way to measure performance is in functionality/bug fixing, combined with some sort of rough syntax analsys so you can see how many bugs a person is introducing.
Probably. Thing is, to do that sort of analysis, you'd need at least some technical knowledge. Which is what this whole argument is about.
Re: (Score:3, Insightful)
/Never/ measure simple bug fixing rates. People get assigned to fix bugs in the code they wrote. Some competent programmers fix their bugs before the people who document present bugs get to look.
Also you can't use bug reporting rates because some competent programmers will allow others to see a work in progress (since, technically, /everything/ is a work in progress and never perfect) and bugs can then be reported weeks after they're fixed. A competent programmer often checks in buggy work and reports all t
Re: (Score:3, Insightful)
Incompetent programmers can often put out ten lines of code that should require one.
Now, now. Just because they don't know the glories of Perl, doesn't mean they're incompetent programmers.
Re: (Score:3, Insightful)
Alas, I cannot properly respond to you as I have no idea what an SME is. When you use an acronym like that, please spell out the long form the first time you use it.
The fact that you use words like "leverage" and "resourcing" as well as some weird three-letter management acronym that you apparently expect everyone to know already make me suspect that you are the clueless, incompetent manager I was discussing.
Re:I don't know if I fully agree with that (Score:5, Insightful)
A manager who does not grasp at least the fundamentals of the job(s) that the people under him/her do may not believe or understand subordinates when they give estimates of time/manpower/risks/benefits/etc.
Someone who doesn't have a bit of knowledge of coding is more likely to say "yeah yeah, you can do that in half the time or I can hire this guy in India who says he can".
Re:I don't know if I fully agree with that (Score:5, Interesting)
While it's certainly helpful to have the management know how things down below work, as the organization or project grows larger this becomes less and less practical, down to downright impossible. The CEO of Ford knows what a carburetor is, but certainly can't identify the parts of one taken apart in front of him. That doesn't make him a bad CEO.
Each step you take up the management ladder, you lose skills and you gain skills. Every very rare now and then you will run across someone that started at the bottom and is now VP or something, and has a very detailed knowledge of how things worked way down at the bottom, ten years ago. Only does him a marginal bit of good now. More often the knowledge they value is of how the people interact and who is responsible for what. This is what makes a good manager - not knowing how you do your job, but knowing how you are important to the company, where you fit in, etc.
I repair computers. My manager tries to repair computers, but isn't very good at it, and I don't expect him to be. That's not his job, and I can't do his job any better than he can do mine. HIS manager knows how to USE a computer, but certainly not how to work on one. This is how it works.
Re:I don't know if I fully agree with that (Score:5, Insightful)
Just my opinion, but you are dead wrong. The CEO of a large company must know the basics about that company's main products. I would not expect the CEO of Ford to be able to understand all the finicky details about Ford cars. However I would expect him to be able to open up the hood of any Ford car coming off the assembly line and point out all the relevant parts and roughly what they're responsible for.
A CEO must rely on subordinates to handle details, but the CEO himself must know enough about his products to be able to make some independent checks and decisions.
Take this back into the computer world. Apple and Microsoft are great examples of successful computer companies led by people who, while not experts, know computing pretty well. Gates may not be the best programmer in the world but he certainly knows his stuff. Jobs may not be out there writing code but he understands the technologies to a much higher degree than the hypothetical scenario you describe with Ford. Now take a contrary example, say, Hewlett Packard. HP went way downhill under the management of Carly Fiorina, someone with a great deal of "management" experience but who, as far as I know, is not technically knowledgeable.
I think that that is the problem we had. (Score:5, Insightful)
There have been a lot of comments about how your manager doesn't need to know the technical aspects of what you do.
Let's just extend that with your Ford analogy.
The CEO doesn't know what a carburetor is. ...
So he hires person A to handle that.
But person A does not know, either.
So person A hires person B to handle that.
But person B does not know, either.
So person B hires person C to handle that.
Eventually you end up with the situation where you have layers and layers of "middle management" that do nothing other than move reports around and attend meetings.
And that's why you're probably driving an import today.
And 100% agreement on HP and Carly. I have no respect for HP now. The person at the top is paid a LOT of money ... supposedly because she has a LOT of knowledge and expertise and skill. Arguing that knowledge is not needed ... well, people always disparage what they do not have.
Re:I think that that is the problem we had. (Score:5, Interesting)
Except the CEO of Ford sure as hell knows what a carburetor is, how it works, and how to take it apart and put it back together. He's an aerospace engineer. We both had the same professor for Senior Aircraft Design in school (years apart, of course). I know he knows his engines. :)
Re: (Score:3, Insightful)
So Ford doing so abysmal as a company should be blamed at the workers lower down the chain who can identify a carburetor? Not the CEO who can't, or can't hire the right people, or can't make get the right contracts, or can't sway the public to buy more Ford products?
I'm sorry, but with ultimate power there should be ultimate responsibility. You don't need a
Re:I don't know if I fully agree with that (Score:4, Insightful)
I repair computers. My manager tries to repair computers, but isn't very good at it, and I don't expect him to be.
But your manager DOES understand the process of repairing computers even if he's not all that good at it. Cringely wasn't saying that the manager should be able to competently do the job of everyone under him. He was talking basic knowledge. Just having some idea what is involved. The test is to write "hello world", not the next version of the company's product.
From a human psychology standpoint a manager who can't find the power button will quickly convince a technical department under him that his decisions are based in ignorance and so, are bad. True or not, that will have a negative effect on morale and, in turn, productivity and employee loyalty.
Beyond that, managers who don't understand even the basic nature of the jobs the people under him do WILL make serious mistakes. Witness the many many flavors of cool-aid drunk by managements everywhere when it comes to flavor of the day "programming paradigms", application frameworks, buzzword compliant languages, etc. If managers had even an inkling of what developers do, they'd realize that many of the "wonderful" tools they seem to buy into hook, line, and sinker actually only address the last 10% of the work (code generation) while making the other 90% clunkier.
Development isn't an assembly line process producing widgets (programs), it is the design of the assembly line. The program is the assembly line that produces the widgets(output). The coding is the process of building the assembly line once it is designed down to the last millimeter.
Some managers are just discovering the same thing with outsourcing. They expected to hand over the same vague notions of what they wanted to a team half way around the world that doesn't speak much English, and somehow, magically, they'd do just as good a job as their on-shore team who have worked in the industry for years (and so, know the implicit assumptions).
In other cases, they figured they'd have the project lead precisely describe the problem to the offshore team. They don't get that once you have precisely described the problem in detail, the actual coding is just the denouement. Before that, the coding is just a way of thinking out loud about the problem. They actually took away a great tool for thinking about the problem (90% of the job) in order to get half price on the last 10% of the job. If they had any idea what it is that their people actually do, they'd have never made that mistake. That doesn't mean the off-shore team is incompetent. Things might work much better if the MANAGEMENT is off-shored and then the project comes back home for finishing touches and implementation, but no manager will ever outsource his own job and fire himself.
Digging deeper in to things, why is it that such a large percentage of software projects fail miserably? I suspect that the problem is (in part) that management believes that definition and design is the first 10% of the work (after which accurate timelines can be projected) and that the code grinding is 90%. The truth, of course, is that the design is 90% of the work and happens out-loud with code after the first 10% or so. This is somewhat like assembly line designers laying out machines or mock-ups out on the floor. It is a mistake to believe that they are building the assembly line at that point (and so, the project is nearly done). Estimates that happen before the job is 90% complete are educated guesses at best. The many *Programming paradigms accommodate that reality to some degree or another but lose the fundamental truth in slavish adherence to methodologies and process.
Examined with that in mind, the *Programming and friends all look like the many Dilbert like cases of developers tricking their bosses into making the right decisions for the wrong reasons. Fundamentally, they just try to reframe a lack of proceduralism as a procedure for managers who can't understand that some th
Re:I don't know if I fully agree with that (Score:4, Funny)
Re: (Score:3, Interesting)
Re: (Score:3, Interesting)
A 'car guy' is not necessarily good at running a business.
Re:I don't know if I fully agree with that (Score:5, Insightful)
I'd like to see them go back to being run by a "car guy."
A 'car guy' is not necessarily good at running a business.
I guess it depends on what you mean by a "car guy". Running Ford is a very complex job - you have to make huge macro decisions years in advance of the end effect. For example, you have to decide all the details of all the cars you are producing today probably eighteen months or two years in advance. How many of each model to produce, design decisions for each car, etc. A "car guy" has a marginally better chance of creating an organization that will design a car that will be a "good car". The problem is that the CEO really has to delegate almost all of those decisions to the mid-level executives in the design and production groups. The CEO can work with other senior execs and the board of directors to say "next year, we will make a good profit if we produce X of model A, Y of model B and Z of model C and sell them at appropriate profit levels." Its up to others in the company to make sure that the cars are produced, that the dessigns are appealing and so on. For what Cringley is talking about the auto industry is really a terrible example. The macro factors are so huge compared to most smaller tech companies. Care are a better comparison for either large tech companies like IBM or for tech work in "non-tech" industries.
Re: (Score:3, Insightful)
I think people from a engineering background like this guy [wikipedia.org] are the very best at running any business, especially high-tech businesses like Automobiles. Just for some reason, people from a sales/finance background are the best at getting on top of an established organization. This is because the sales guys learn politics from an early age and the finance guys hold the purse strings.
Re: (Score:3, Funny)
Comment removed (Score:5, Informative)
Re: (Score:3, Insightful)
Re: (Score:3, Funny)
Don't forget Robert Landrover and Fred Jeep.
Financial literacy among engineers (Score:3, Insightful)
For quite a long time now, the CEOs of American auto makers have typically come from the sales or finance organizations. I'd like to see them go back to being run by a "car guy."
I assume by "car guy" you mean someone with an engineering background. There are reasons that relatively few engineers end up in management. Managing a business, particularly a large one, requires a STRONG understanding of accounting and finance. A manager who doesn't understand accounting is like an engineer who doesn't understand math. Additionally managing is about people and, let's be frank, engineers tend to be rather bad with people on the whole. There are notable exceptions but we're not a demog
Re:I don't know if I fully agree with that (Score:4, Insightful)
I have no clue what a carburetor is. I don't care. Don't use cars much.
You shouldn't assume much at all is general knowledge; I know far too many linux fanbois at my school who think everyone somehow is born knowing how things like netboot, dhcp, and computer internals work. We tend to see the things we know as elementary and hte things others know as more difficult, or so it seems to me.
Carburator knowledge != Management skill (Score:3, Informative)
Carburetors are something that gets taught to a 15 year old student and is as such certainly within the grasp.
Perhaps you attended a high school with an auto shop class. I didn't and neither did any of my close relatives or friends in my generation. The last carburated car in the US was produced in 1991 [wikipedia.org] which coincidentally was the year I graduated from high school. Every car I have ever owned has been fuel injected. Yes you can find carburators even now but mostly on the smallest and cheapest engines and they are slowly going away. Even motorcycles are headed toward fuel injection these days. The only reason
Re:I don't know if I fully agree with that (Score:5, Insightful)
Management is a similar situation. The manager is there to make sure that if he wants to outsource part to India, that the product has clear delineations and interfaces so the work can be split up. A manager who learned these lessons in 1980 doing RPG is the same as a manager who learned these lessons from his old boss at IBM who learned them writing COBOL in 1971, who is the same as a manager who just helped Google launch a new BETA product. His architect will tell him how to split it up, but the manager will be the one deciding what the important choices are, getting the right questions in front of the right people, and helping those who know work towards the right solution.
Re:I don't know if I fully agree with that (Score:5, Insightful)
I haven't RTFA (natch), but from the summary I would agree with you that this argument is wrong. The manager of some programmers does not need to be able to write "Hello World." I've had a very good manager that couldn't do that, but she was very good at keeping track of what impacted on what and keeping an eye on our progress. I do agree that the valuation of managers vs. those that actually do the work is often the wrong way round and cuts should follow accordingly. I often think the better way to consider a manager is as an assistant to those who do the actual work, taking care of the peripheral details of a project allowing the important people to do the actual work. But the reasoning in this article, along the lines of whether the manager can do the programmers job, is *not* the place to start.
Re:I don't know if I fully agree with that (Score:5, Informative)
I often think the better way to consider a manager is as an assistant to those who do the actual work, taking care of the peripheral details of a project allowing the important people to do the actual work.
Excellent point. My manager is an old COBOL & IMS programmer who can't write a word of SQL.
But... he knows what the difference is between OLTP and a Data Warehouse, knows that IO is slower than core, and is bright enough to have learned from us the difference between sorted and hashed indexes, and when to use them, and what happens when indexes get out of whack.
Thus, even though he can't do what his underlings do, he knows what's reasonable and not, and bravely defends us from User Stupidity and Programmer Incompetence.
When he retires, I'm going to cry.
Re: (Score:3, Insightful)
I actually do.
An IT manager doesn't need to be able to program but he does need to understand proper coding practices.
If not he cant see whats behind programming and the nature behind maintaining a strong and well groomed source base then he truly doesn't understand what he's managing.
How can an IT manager determine if the new person they are hiring can actually program up to the particular standard the company needs?
The manager could of just fired the best programmer and kept all the spaghettio's simply be
Re:I don't know if I fully agree with that (Score:5, Interesting)
Re:I don't know if I fully agree with that (Score:5, Insightful)
You are exactly right. I have worked with numerous execs who weren't very technical, but if they are doing their jobs well and respect my opinions then they are perfectly fine in their roles.
Years ago, at one particular job, I was the corporate network admin. My job was to maintain the network and to a lesser extent, help employees with computer problems. Anyhow, there was a time when the head of our marketing department had an issue that, by my rough estimation, I would be unable to resolve without an hours worth of work. When I told her this, she starting yelling and screaming at me, to which I basically told her to fuck off. She threatened to issue a complaint to the CIO since she had no authority over me. All I had to do was tell the CIO what had happened and he went over and chewed her out. It was a perfect example of two management types who both lacked the technical knowledge to assess the problem, yet one chose to berate me while the other chose to trust me.
Re:I don't know if I fully agree with that (Score:5, Interesting)
I prefer a non-technical manager.
A technical manager often inserts himself as a buffer between me and the users. This makes it harder for me to determine what the users really want.
He also typically starts to solve the problem before I can, while solving it using his own ideas, which are typically not the ones I am used to. (Everybody seems to write programs their own way.)
The result is that by the time an assignment comes to me, it has already been "partially digested." It is not so clear what my program is supposed to do, but I am given rigid requirements about how it is supposed to do it. In the worst cases I am simply given a big pile of code and the instruction, "Finish this."
I much prefer to work for non-technical people. I can work with them to hammer out what the program is supposed to do, and then I am free to use the ideas I know best in order to do it. This allows me to work faster and more accurately.
Re:I don't know if I fully agree with that (Score:4, Insightful)
You are not describing a technical manager, you are describing a *bad* manager.
Good managers will not get in your way, bad ones will. The only difference between technical and non-technical is the tools they use.
Re:I don't know if I fully agree with that (Score:4, Insightful)
Point is, managers manage people.
No, managers administer a business function.
Some managers called 'supervisors' or HR Directors do perform primarily functions in the management of some people. Most manager posts perform much broader functions, and dealing with the people hired to assist in performing a function of the business within their 'jurisdiction' is only part of the job.
For example, the manager of finance is responsible for manging the business finances. They had better know about financial concepts like what balance sheets are, how income statements are made, taxes, credit cards, etc, in high detail. Even if they have subordinates responsible for dealing with the direct work in dealing with these things. This is just the same as an IT manager knowing what programming languages are like and being able to understand high-level design documents, program flow chart, etc.
A facility manager would be responsible for everything that goes into maintaining a certain facility.
In a large enough business, even an IT-related business, there are managers who don't need to know about technology or details of coding.
But for a manager to be effective they must have appropriate knowledge of the domain they are managing.
An IT manager that manages coders directly needs to have knowledge of coding. Individual coders are not likely to be able to give good timelines for a project that needs timelines. Unless they are managers of their project, it's not their job or their ability to provide such estimate.
Adding up the times individual coders think is no good. The IT manager needs to have the knowledge, or needs to hire or delegate to someone to manage the coders and take all responsibilities who does have that knowledge and ability to work on getting a rough estimate.
IT managers will often be responsible for making purchase decisions; approving requests from departments for computers, or for software. An IT manager cannot make good decisions about what computer equipment to allow to be purchased on their IT budget without clear understanding of the equipment and what the usage will be.
It will be difficult for IT managers to allocate resources in a manner that will allow completion of projects if they lack sufficient understanding to know when a request is reasonable, when a request is already stripped down, or when a request is exhorbitant, and it's better to authorize only a cheaper alternative.
Also, IT managers will often be involved in setting policy for the use of technology business-wide. It will be difficult for them to set or approve reasonable usage and internal IT support policy if they do not understand the technology.
Moreover, it will be difficult for an IT manager to hire competent subordinates, rather than candidates who are good at bluffing their way through an interview.
A good IT manager should know enough to be able to quiz candidates and discuss technical issues with clear understanding.
Re: (Score:3, Insightful)
Unfortunately, I do agree, in principal, IT Managers that don't have the know-how to do it themselves, should not manage IT based projects..
The big issue with managing IT based projects is that, if the manager doesn't know enough of the technologies behind a project he/she is managing, then this manager has no real control over timelines, efforts and cost, because in order to know if the estimates are correct, he's got to rely on what he's being told, not what he understands.
That's why I don't undertake con
Common Sense? (Score:2, Insightful)
Re:Common Sense? (Score:5, Interesting)
Of course, many of us have ended up working for those who are neither good programmers or good managers.
Re: (Score:3, Informative)
Raise your hand, everybody who has had to dumb down a report for management.
When a manager sees that the average traffic is way lower than the vendor stated capacity and the load is 0.5, it won't do you much good to try to explain phrases like "slashdot effect" or that while database reorgs are running, the boxes run out of juice. It's your fault, and the only way you can convince the manager otherwis
How it is (Score:5, Insightful)
As usual, Cringely is right. The fat floats to the top.
I'm an IT project manager. If one of my peeps bailed and I couldn't step right in and fill their spot and train their replacement myself I would consider myself a failure. It's all about the customer and if we fail to meet the customer's needs because of this everybody involved has failed.
I had this conversation recently: "Can you replace X?" Answer: "Of course. If I couldn't, we both need replacing."
I've got people both under and over me. I fully expect both the unders and the overs to be able to step in and catch the load if I step in front of a bus. I don't want to catch a bus, and I don't want my unders and overs to do so either. But I'm prepared for either event and you should be too because if you can't you're neither responsible nor capable of advancement and that's a sad place to be.
That said, most days my role is reduced to catering. I let my peeps do their gig and I get stuff out of their way. Only the newbs need direction and they get over it right away.
As soon as they're oriented:
I'm only an IT project manager until my bosses find someone better. My techs only work for me until I find someone better. That's the way it is and that's the way it should be.
Re:How it is (Score:5, Insightful)
I do like the Starship Troopers attitude though.
Re: (Score:3, Informative)
In my particular case not only can he, but he got to be my boss by having my job and delegating responsibilities to grow the business. The same with his boss. Either of them has and can fill my role. That's how it should be and I'm preparing my unders to seize the opportunity. He expects me to do the same so both of us can move up to more responsible positions in a larger business by growing our business. If I fall out and I'm too lame
Re:How it is (Score:5, Insightful)
Re: (Score:3, Insightful)
To run it all? It's not feasible. But to step in for a few days and take the help requests, or help the company limp along when a critical employee steps in front of a bus? That is a good manager's job. The idea that a manager is a purely 'people person' and that this makes them somehow better able to manage if they do _not_ have the technical skills is a fallacy of a lot of empire-building little bureaucrats.
I don't expect a hospital supervisor to do heart surgery, but I do expect them to be able to do CPR
Writing hello world is not a manager job (Score:5, Insightful)
Re:Writing hello world is not a manager job (Score:4, Insightful)
As long as the communication's right, a manager doen't need the technical skills.
How do you know they know their job? (Score:2)
And without the specialized knowledge of that field yourself, how do you know that they know their job?
See above.
Anyone who believes that technical knowledge is superfluous to a manager is deluding themselves.
Re: (Score:2)
I hate those type of managers. My current 'manager' doesn't see me for a month or longer and even then he just sticks his head in to say hi, he trusts that I do what I do best. He only needs to talk to someone if there is a problem with the results of said someone. We all have our place in an organization, if we know what we need to do, we don't need anyone questioning us unless there is a problem with our (or subsequently) the end product.
Managers that manage people instead of the product of their mini-org
Re:Writing hello world is not a manager job (Score:5, Insightful)
No, often a manager also manages resources, makes decisions as to future projects and product directions, etc.
A certain amount of technical knowledge is required. Either that, or the manager has to be willing to listen to and trust those who are knowledgeable below them.
I've seen good managers who were technical and listened, good managers who were technical and didn't listen as often, and good managers who were nontechnical but knew who to get reliable information from. However, I've never seen a good technical manager who lacked the technical background *AND* didn't listen to underlings.
Re: (Score:3, Informative)
If a manager wants to manage someone who's writing C/HTML/PHP code he's going to be much better at it if he knows what C/HTML/PHP code is.
Cringley didn't suggest the manager be the hottest programmer in the organization, he suggested the manager be familiar with the absolute basics.
Pure Managers? (Score:2)
BBH
I totally disagree (Score:5, Interesting)
I know we're all colored by our personal experiences - but, based on my own, I think the problem is exactly the opposite. A lot of IT managers think they are technically savvy, because they've managed to get some sort of certification at one point or another in their lives (or maybe they were rather knowledgeable at one point, years ago, but have not kept up simply because of the other demands that come with management). These types of people are the epitome of "know just enough to be dangerous". It then gets exacerbated because they often sell themselves to the rest of the organization as "IT savvy", and feel free to make technical decisions regarding project details when they really have no business doing so.
I think we need IT managers that are MANAGERS, not IT people. Those managers should then trust us to know how to do the detail work required for our jobs.
My own manager has been learning this lesson over the last several years, and as such my work situation has steadily improved. He is still the liason with the rest of the organization, but he usually sticks to the broad strokes and lets us underlings sweat the details.
Re: (Score:2, Insightful)
I know we're all colored by our personal experiences - but, based on my own, I think the problem is exactly the opposite. A lot of IT managers think they are technically savvy, because they've managed to get some sort of certification at one point or another in their lives (or maybe they were rather knowledgeable at one point, years ago, but have not kept up simply because of the other demands that come with management).
THANK YOU.
My current boss fits that most exactly. To judge from his behavior, he used to be a hotshot coder at some point, but to further that judgement from his actual knowledge of coding, that era is long past.
When he gets news from us that he doesn't like, he insists on debugging the issue with us. I don't mind extra eyes on a problem... I frequently bounce problems off my teammates to see what other angles they might come up with... but in my boss' case, it's worse than useless. It's rehashing o
Oh, great... (Score:5, Funny)
How much you wanna bet a bunch of CEOs are going to RTA and fire all the COMPETENT bosses and keep the PHB's?
Yeah... sigh. (Score:5, Interesting)
It's true. They pretty much all fail.
I had a job where my boss told me to go redo the website using whatever technology and features I thought I needed to make it excellent. He gave me two weeks time to do the first phase of moving the old content over to the new framework and coming up with some cool new ideas.
It was fun. About six days into the project, a manager came down from another branch had an interview with my boss, sat next to me while I explained the site.
The two of them had a little meeting and called me in. "We're pulling the plug."
"What? Why?"
"You're doing it wrong."
"What are you saying?"
"You should be using Dreamweaver. Everyone uses dreamweaver and you're doing hand-coding. What language was that again? PHP or ASP?"
"PHP and MySQL."
"Dreamweaver does that automatically."
Anyway the whole conversation went like that. I was told that I had to change into their idea of what a programmer was -- and that's the big problem. Managers have no idea what a web developer or programmer should be because their idea of the job typically is distorted. They rule based on FUD.
I left the company, obviously. If you can't manage your people, you won't have any.
Re:Yeah... sigh. (Score:4, Interesting)
This is not necessarily a bad argument. Forcing you to use an inferior tool because there is a standard everyone at the company has to use means anyone can pick up your work later. It decreases your ability to do the spectacular. But it increases your ability to be replaced if the worst happens.
And, I don't have much experience with Dreamweaver, or know exactly what you were querying from the DB, but some simple variables I can imagine being automated.
Re:Yeah... sigh. (Score:4, Interesting)
Forcing you to change tools 6 days into a two-week project is a bad idea regardless.
From the employee's point of view, BOTH of those are bad things. The first means they'll be seen as a poorer performer, the second means they'll be more likely to be out on the street.
A similar experience (Score:5, Interesting)
I once had a similar gig for a major newspaper. They had contracted the usual clueless newb to engineer their online presence. The app had a memory fault that crashed the server. They hired me to fix it so that it worked, and incidentally deny the original guy the pay for the contract. I found that a different method of memory allocation would eliminate the issues. Rather than telling my bosses about it, I called the original programmer and told him how to fix all three lines of code that were at fault. He revised it and it worked.
I lost my gig but I still feel good about it. Doing the right thing is not always in your immediate best interest. I'd feel bad about stealing the benefits from his work for three lousy lines of code.
The retarded newspaper editors - not so much. They haven't given up their horse-and-buggy-whip model of business. If they had kept me we would have fixed this issue by now. It's not too late to fix this but I no longer care about their welfare and they neither think I have the answer nor remember where to look for me to find their salvation. Such is the ebb and flow of business.
Re:You do realize... (Score:4, Interesting)
From my personal experience, bosses with limited to advanced "tech experience" tend to stick to "the old ways" and old tools.
The problem is/was that when first released, these tools come pre-compiled with obscure bugs that are only found when users start building heavy applications. Such obscure bugs can include: memory leaks that gradually suck up all available system memory over a number of days, obscure device driver/hardware glitches, compiler misinterpretations.
As far as the manager is concerned, he won't lose his jobs for approving a project with a combination of solidly reliable OS, compiler, programming language and window GUI's.
Of course, it is absolutely brain-f**king for the programmers (especially entry-level graduates) working for such a person, because they see the rest of the industry rapidly moving forward with the skills they have just learnt while at college, while they are stuck with yesterday's technology trying to gain enough experience to move onto the next gig.
Re: (Score:3, Insightful)
"If the rest of the company is using PHP and you're using Java, that's a problem for management to solve."
Look at the parent poster again. He was told "to go redo the website using whatever technology and features I thought I needed to make it excellent". Then about 50% of the time spent, he was told otherwise.
Certainly a company using PHP and one project using Java could be a "management problem". When management is not able to properly define the problem's realm and its constraints and properly communi
I don't agree with this assessment. (Score:5, Insightful)
The article seems to more say that the IT manager needs to understand the underlings jobs and be able to describe the job. Not that the manager has to understand everything the underling must do to complete the job. The summary seems a little slanted.
The absolute best IT managers I've had were more than willing to state when they didn't understand the technical details. In the cases where they had to explain something in detail they did what a good manager would do; they'd ask the individual who DOES understand it better than they come and explain when that level of detail is needed. Those same IT managers not only understood enough of my job to outline what they'd like accomplished and stepped back to let me accomplish it in the most technically correct way possible, they shielded me from those above and outside the department so that I could do that job.
The last thing I want is to be managed by someone who thinks they are more an expert on the intricacies of what I'm working on. Either they are going to micromanage the individuals on their team or they aren't ever going to be satisfied with the work that is produced.
Maybe the poster would be happier if they were called IT Personnel Managers?
Re: (Score:3, Insightful)
The absolute best IT managers I've had were more than willing to state when they didn't understand the technical details. In the cases where they had to explain something in detail they did what a good manager would do; they'd ask the individual who DOES understand it better than they come and explain when that level of detail is needed. Those same IT managers not only understood enough of my job to outline what they'd like accomplished and stepped back to let me accomplish it in the most technically correct way possible, they shielded me from those above and outside the department so that I could do that job.
While I agree, the ability of a manager to understand what is going on at some level is in fact important, depending on what you are developing. The key skill of a manager is knowing how to assess people, their skills, their talents, their personalities, who meshes with whom, who is incompetent, who is not, who works with whom... the ability to separate truth from illusions of truth
The last thing I want is to be managed by someone who thinks they are more an expert on the intricacies of what I'm working on. Either they are going to micromanage the individuals on their team or they aren't ever going to be satisfied with the work that is produced.
While I agree with you on the micro-management thing, the whole point is to keep the team on track and not give into feature c
Write Code In HTML To Render Hello World? (Score:2)
I'd argue that if you can't differentiate between a markup and a programming language, you probably shouldn't be running the shop... or espousing opinions about who should... either.
Re: (Score:2)
To be fair, you can split hairs and say he said, "Code" rather than "Program" but coding still implies some form of codifying information.
The HTML to render Hello World is... Hello World.
Sure, you can wrap it in additional tags. Sure, if you want it to be valid XHTML, you need DTDs, parent tags and all the rest.
Even then though, the actual Hello World displaying part is just exactly that, the un-enCODEed text: Hello World.
IT boss=human filter for stupidity @ higher levels (Score:5, Insightful)
Are you kidding me?
As long as my I.T. boss shields me from the dipshits and the politics at levels above themselves, I don't honestly care what they can or can't program.
They're worth more to me as a human filter than a fellow developer. Christ. Let me actually fix things - they can go off and interface.
What utter bollocks (Score:5, Interesting)
Here's a different technical case: I know someone (let's call her Betty) who is an HR director. She's standing in for someone on maternity leave. The person she's standing in for (let's call her Helen) is "technically" superb, knows the nitty-gritty of HR really well. Helen is fully up to speed with every current aspect of HR. She could not only replace every member of her team, she's probably technically better than every individual member of her team.
But she's a crap manager. She micromanages everything, everything HR has been tasked with gets delivered late and in too much detail. Why? Because at director level, you don't need the micro-detail and you don't need the HR director's involvement in getting every step of every task done.
Betty hasn't done the job of HR for a decade, but she knows how to run a tight ship. After six months of having Helen out of the way, the HR staff are happier and more productive, the board is delighted with the stuff that HR is producing and Betty is doing very little indeed.
You don't get a dog and do the barking yourself, Mr Cringely.
Re: (Score:3, Interesting)
For sure. I've had two types of managers:
* ex-programmers, who don't do any actual management, they just expect the team to run itself.
* guys who went to business school.
They don't know shit about programming but they keep note of who is working on what and when they said they would get it done, how reliable their estimates are and, as a result of all that, how much work the team can actually get done before a given deadline. They then negotiate with the rest of the company to keep us from getting every b
Complacency and self-fulfilling IT growth (Score:2)
IT managers are supposed to do more than direct management of people and projects. They're supposed to have a grasp of overall organizational goals, and to fairly assess how IT can be used to make the organization more efficient or effective.
Of course, as with so many things in life, people are generally interested in protecting themselves. So it can become a policy to protect ones own budget, and to (artificially?) propose new projects as reason to grow or at to at least maintain a department's size. Di
Disagreement (Score:2)
Yes some managers stink and need to be fired. However, I had a great boss once who didn't know how to code anything new (he used to program embedded C, but had been out of touch for a decade). What made him a good boss was that he listened to his programmers and took their suggestions seriously. He was highly competent in the areas necessary for good management; organized, focused, motivated, and open to good advice.
Don't fire managers just because they can't
What does it mean to "manage people"? (Score:2, Insightful)
With a division of labor, the idea of the manager is to strictly keep to "managing people", right? What does that actually mean in real practice? If the techies are the ones with all the actual skill to implement technology, what happens when techs have a technological debate? If a team is designing a complex system and there is a difference of opinion between two or more choices with subtle but far-reaching consequences, in the real world, is the manager going to be hands-off and stick with the "people sid
Slippery slope (Score:2)
As an IT manager... (Score:5, Insightful)
As an IT manager who has commit privileges to the core Python repository, and can write hello world in half a dozen languages, I'd like to chime in...
IT management almost certainly isn't about doing the work. That's why it's management and not technical work. Management is about helping other people do things.
For example, technical people are notorious for being not very good with people. Having someone helping them interface with the rest of the company, get funding, run interference for projects and decisions, all of this is very important to getting coding done, and does not require an ability to code or even an understanding of what is going on with the people doing the coding.
Having a die-hard techie in a management position may not be as valuable as having a die-hard manager there. Because if the manager just really wants to be doing the techie work, that's really where his passion is, then he probably is in the wrong job. Just as if the person in the techie job's passion lies elsewhere...
If you have someone in the organization, management or not, that isn't pulling their own weight, then definitely look at what you can do to remedy the situation. But whether a manager can write main() { printf("hello world\n"); } is almost certainly the wrong test to be using.
Would you fire the techie who can't come up with $50,000 in funding for new workstations and servers?
But, I guess the "re-purpose people who aren't pulling their weight" headline isn't as easy to get on slashdot as "fire your IT boss". :-)
Sean
Roles/titles vary too much from company to company (Score:2)
Some smaller companies have technical Directors and CIOs who likely wouldn't be qualified to be a technical team lead or lower-tier manager in a larger established company with a strong technical history. Sometimes that's fine. It depends on the company, on the nature of the people over, above, and around each key person, etc.
"Managers" in some organizations code (and are effectively Technical Team Leads with hire and fire authority), while "Managers" in other organizations simply manage. Some organizati
I think you guys are missing the whole point... (Score:5, Funny)
Perhaps it would be best illustrated by this 20 year old joke:
The Americans and the Japanese decided to engage in a competitive boat race.
The Americans and the Japanese decided to engage in a competitive boat race. Both teams practiced hard and long to reach their peak performance. On the big day the Japanese won by a mile.
The American team was discouraged by the loss. Morale sagged. Corporate management decided that the reason for the crushing defeat had to be found, so a consulting firm was hired to investigate the problem and recommend corrective action.
The consultant's finding: The Japanese team had eight people rowing and one person steering; the American team had one person rowing and eight people steering. After a year of study and millions spent analyzing the problem, the American team's management structure was completely reorganized. The new structure: four steering managers, three area steering managers, and a new performance review system for the person rowing the boat to provide work incentive.
The next year, the Japanese won by two miles!
Humiliated, the American corporation laid off the rower for poor performance and gave the managers a bonus for discovering the problem.
Re: (Score:3, Interesting)
Being someone who 2 years ago left big corporate life.... that "joke" is 100% accurate description of how american fortune 100 companies work.
and from the stories I hear from friends still there it's worse. they are adding useless managers while cutting the workforce.. This economic slump is not even starting... we will be having major corporate collapses in the next 5 years that will make the economic downturn right now seem like a camping trip!
I am sorry, but I got to disagree (Score:3, Insightful)
Of course it seems to make sense, lead from the front, don't ask others to do what you won't/can't do you yourself.
But it is wrong. A manager has the task of managing, that is hard enough in itself. More importantly, it is a skill in itself. Make a programmer a manager and you most likely find yourself with a programmer who wasn't to good in the first place and a lousy manager partly because that was not what he was trained for but also because he will forever be stuck in the mindset 'in my day we did that...'
I have had plenty of bad managers who once wrote a little DB app or a VB script who somehow thought that made them experts on backoffice systems or server security. ARGH! It is as bad as letting the guy who put Apache on his desktop be in charge of the servers.
The best manager I ever had knew very little about any of the jobs he was managing, it was a web department for a large company but thanks to the company not thinking the web was going to worth anything (yes it was a telecom) the department was entirely seperate. He didn't know art, yet managed the artists, he didn't know servers, yet he managed the server guy, he didn't know coding, yet he managed me, he didn't know support, advertising etc etc. Yet he managed us all AND did a HELL of job. We sold more mobile phones then ALL other outlets combined.
So they ruined it, brought us in and clipped him and it all went to hell.
What the guy did was not so much manage as stand in the middle and direct all the traffic around him, giving each of us the resources we needed and distrubuting us to those who needed it.
If you needed input from someone, you got it. If you needed time, you got it. Because you could count on him, everyone used realistic estimates. No need to pad your estimates, because he already worked them in and if trouble happened, he managed it.
To this day I don't fully understand how he did it and haven't seen anything like him. In web development a lot of stuff is simple, but takes a long time to get everything together, an app might only take a couple of hours of development but a week for it all to happen in. Not with him. Marketing came up with an idea, quick meeting in the morning to check if it was possible, meet over lunch to check progress, end of the day, the page was up and running. Sure, simple things, rotationg banner, poll, lottery draw, product page. Nothing complex, but on the internet speed counts, if you can have that new phone promo ready before anyone else, it is your company that sells the most.
So please, don't give me a manager who ten years ago put together a 'hello world' program and thinks he can do my job. Give me a manager who can manage and then his job will be to trust me to code and my job to code and trust him to manage.
Like a F1 team. Michael Schumacher isn't a techie, he doesn't have to be, he doesn't have to know how to exchange a wheel or put petrol in a car. For that matter a F1 team manager doesn't have to have a driving license. Everyone their job and managing is a job. To bad so many such at it.
Re: (Score:2, Interesting)
Sorry Slashbots but people skills are more important than tech skills and always will be.
I would like to see you back up your implication that those two skill sets are mutually exclusive.
Re: (Score:3, Insightful)
I would like to see you back up your implication that those two skill sets are mutually exclusive.
you're reading slashdot and expect to see a better example of the exclusivity of those 2 skill sets?!