Archive for the ‘Work’ Category

Why employers should have geeks hire geeks

Friday, January 30th, 2009

Step 1 – The Posting, as a job poster, are you looking for script developers, or application developers. In general, scripts are loosely types, and applications – being compiled and required a high degree of stability – are strongly typed.

Once you realize this, you will also realize that script languages PHP and Ruby and JavaScript [ Python, Perl, etc ] fall under a very specific easy to find umbrella.

Conversly, C#, Java, ASP… are also very similar and could be found under the same umbrella.

Find out what type of programming you ACTUALLY do. Procedural, Imperative, Event Drive, Prototype, OO…. FIND OUT.

Step 2 – The Interview (more important than step 1) – once you’ve found the candidate, get one of your true developers into the interview. Time and again a line has been drawn between a “career programmer” and a “developer” or “geek” and a geek should know another geek, because they will share information like mating rabbits, and your “career developers” will get lost in the discussion. It’s very possible that while they are catching up, the geeks will have already devised an approach to the company’s problem.

Geeks are curious, smart, and take pride in their work. It’s a matter of pride to know why, and if they don’t, to find out, and to make it work even if the prescribed methods fail.

In their spare time, geeks are geeking, and becoming better, smarter, stronger, faster. “Career programmers” use their time searching for the next highest salary, shmoozing for a cushy course to attend, and perhaps drinking beer (killing brain cells)

“Career programmers” are only in it for the money. Intelligent or not, I’ve always found inferior results from someone who doesn’t generally care about the problem / logic at hand.

Step 3 – Architecture. Now that you have the tool, apply it to the project. A persons’ preference and specialization is still a factor, but the manager hedging that “We do Ruby” is not an excuse.

I would agree that you can’t test every framework or library can be tested to fit, but I think you would agree that a framework with a strong, open, and well-documented API is better (aside from bugs). With a true geek, API is all he requires to start laying the foundation on your application, and it doesn’t require months.

Outsourcing and where the U.S. is heading

Monday, December 22nd, 2008

I entirely agree that individually you need to be as valuable as possible. That’s why all the CCNPs I know are working to finish their CCIEs and the CCIEs are working on their Juniper/Avaya certs. All of this is on top of their technical degrees.

The problem is that you and your “invaluable” skills really aren’t being taken into account. It doesn’t matter if firing you would cripple the company because we’re typically thinking 90 days at a time. If you replace a $150K CCIE with a $20K wannabe, then you as a manager can claim a $130K dollar “savings.” Hooray for you, here’s your bonus. When that $20K wonder takes all of your customers down — and here’s the beauty part — you aren’t blamed for it. No one is currently drawing the line between your $130K savings and the customers that walked with their millions of dollars.

The really scary part? I know a couple of people who work on municipal, hospital, and 911 systems. Infrastructure disasters there can cost lives. They’ve watched the cheap guys take down emergency systems, and tried not to think about the calls that were getting dropped as they fought to get them back online. They push the frantic calls for help out of their mind because if they let their imagination run with what an unanswered 911 call could mean…

The cheap guy’s response as they berated him for putting lives at risk? Basically, what do I care? It’s not my country.

Every one of the guys I know are putting in 60-hours weeks routinely. Hours like that mean divorces. They mean early heart attacks. They mean neglected children left to raise themselves. They mean broken homes with the societal carnage that goes with it. It’s the classic tragedy of the commons. The people who lead our country are insulated from the carnage associated with gutting our workforce. In the meantime, my country is falling apart. I’ve got a CS degree from a good University, a couple of certifications, and a decade of experience and even I am feeling the heat. I weep for those not as lucky as I.

We’re gutting our middle class. We just are, and if you don’t see it, it’s probably because you’re young. I hear your “Well, it’s not a problem if you’re the best of the best” bravado, and I wonder what you propose to do with the other 99% percent of the population, because they’re not just going to just disappear.

During the LA Riots of ’92 Rodney King and Daryl Gates might have been the spark that set it off, but that riot burned on the fuel of unemployed people. Anyone who has been to LA, more than a decade later, has seen that the damage still hads’t been repaired. I’d really prefer not to see that happen on a country-wide scale. But me and the other people around my age are worried. We’re getting that “vibe” again.

Things are stretched beyond breaking. Our teachers have flat-out given up. Our cops are showing the sort of violent and unstable behavior you would expect from PTSD. The wave of earnest enlistees that flooded the military after 9/11 have become the sort of weary jaded bastards that could put the most burned-out Vietnam Vet to shame. We are, for the first time in history, routinely using mercenaries in almost every level of our military and law enforcement. I’m seeing military families, families with generations of service, hang up their uniforms and forbid their children from serving.

Our hospitals are literally allowing people to die from neglect in the ER. Our bridges are falling down. Our electrical grid is one snapped breaker from going dark. Katrina should have been our moment of clarity. The fact that it so clearly wasn’t scares me to death.

But you go ahead, and keep humming that “I’m the best, I’m the best, I’m the best” mantra. Keep closing your eyes as tight as you can and shut your ears tighter. Find a good teddy bear, because the old man, the old man has seen all this before.

I’m terrified of where this train is going.

How to communicate with the “business” side

Tuesday, September 16th, 2008

As IT people, we look at the world logically; we know that if A follows B and B follows C then A must also follow C. We know that if the user wants to view the balance on an account, they better have the account number before viewing it. However, business people don’t seem to have that same view. We assume they aren’t interested, or that they’re illogical when they say “why do I have to enter the account number to view the account balance?”

The problem I find is usually one of language. For example, in the question above I figured out the business person wasn’t being ignorant of the need for an account number. They simply wanted to *scan* it, not *enter* it. To us IT people, there’s absolutely no difference how the number gets into the system, but to them that difference seemed so great they had to point it out that they never wanted to *enter* it again.

Yes, there are obstinate and stupid people out there, but not everyone with those questions is either. And the moment we respond to a question like the one above with a groan or a “duh!” comment, we do become condescending and anti-business. The best way to deal with these questions is to keep the dialog from degenerating. Rephrase the question, restate your problem with their assertion, and get them to confirm it again. Something such as “well, we need the account number before we can show the account balance, so where do you want us to get the account number from?”

Keep the discussion friendly, don’t get patronizing or condescending. Try hard to discover the real root of their issue. It’s critical to treat them like peers, and not talk down to them. Remember that they must bring some value to someone in the business, so try to respect that. And yes, sometimes it’s harder than others, and sometimes it’s just never, ever going to sink in. Try bringing in other people to moderate the discussion, or to bring alternate suggestions.

Is there a drawback to self-employment?

Sunday, August 17th, 2008

One of the main reasons for being an employee is because it’s (supposed to be) both easier and safer than striking out on your own. Instead of long hours and having to wear many hats, you can just concentrate on your own skill, and leave the business stuff to the people who specialize in that. Anyone familiar with the idea of specialized labor should understand this. The downside is (supposed to be) your pay is lower than it could potentially be by owning and operating your own business.

If today’s corporations want their regular rank-and-file employees to wear many hats, be multi-talented, and have a lot of business skills, then they’re simply not doing their own jobs correctly.

Exempt vs Non-exempt

Wednesday, August 13th, 2008

If you ever decide to switch to exempt versus hourly, it’s your chance to negotiate your rate. Go back several years and calculate how much you made in overtime vs regular time. Do market research on your job function and find out the salary range in your area as well as nationally. Do an honest evaluation of how you stack up to your co-workers.

Or, if they will not negotiate, leave for a new job – that’s what I did and I’m much happier for it. Unless you like your present job SO much that you will take a pay cut, find another job. However, I make sure that if I do have to work, I require that I am paid hourly…and I get paid for all OT. I learned years ago, I do NOT work for free.

My time is much to valuable. I generally prefer time off to OT, but sometimes you gotta do it. Don’t get me wrong, when they really need me for emergency down time, a deadline is looming, I’m there as long as it takes to get things done. I just refuse to do it for free. If they have to pay you for every hour you are there, they will think twice before making requests that you do so, and only do it when it is required.

Something to think about. How valuable is your time?

A few ways to detect social engineering

Saturday, July 5th, 2008

I think we’re pre-programmed to trust and assist everyone in our tribe by default, and distrust anyone not of our tribe. The problem is that this doesn’t work well anymore, since we don’t know everyone in our tribe. It’s likely quite useful when you hunt wildebeest, but not as useful when you work for a hospital, protecting patient records.

Most of us don’t think of trust at all, but assign perceived trustworthiness automatically, and only by being reminded of trust do we pay it any thought. Social engineering takes advantage of this. You get the victim to draw the conclusion (without being told – it has to be subconscious) that you belong to the same work tribe as them, and thus trust becomes implicit.

Some warning signs that you may be subjected to social engineering:

– The person starts using your first name without you having ever met.
– The person refers to an authority figure in a jocular/friendly way, in order to make you draw the conclusion that the authority figure knows and trusts this person.
– They will try to appeal to your vanity. E.g. they may imply that they called YOU because you’re so friendly and helpful. Ask yourself whether, if it really was this urgent, they would be calling you instead of those whose job it is to deal with this sort of situation. If you believe for one second that it’s because of your demeanor, you’re not only stupid but vain too.
– They mention a common foe. “You know how accounting is…” Yeah, everyone knows that accounting are bastards to anyone not in accounting, in every company in every country. That doesn’t lend credence to you being on the same side.
– They mention an interest of yours. “I had planned to take my son fishing this weekend, but I guess I’ll be working, trying to fix this”. Why would they tell that to a stranger? (Especially if you have a sticker saying “BITE MY BASS” on your car.)
– If face to face, the person smiles a lot. Nothing disarms suspicion as easily as a smile.

And yeah, cops learn this, and with time become pretty good at it too. My main advice is to never trust a person who smiles. Ever. That invariably means they want something. Yes, this includes loved ones too; what they want might be something you’re willing to give, but they’re still unconsciously trying to lower your defense by smiling. A smile is always a mechanism to disarm the one who sees it.

Tech speak vs. corp speak

Thursday, March 20th, 2008

If someone doesn’t know what TCP/IP means or what a CNAME record is, I can direct him to appropriate RFCs that define them.

Now, I wouldn’t actually direct an MBA to an RFC, because his eyes would glaze over about the time he got to “this memo has unlimited distribution.” But what matters is that I can direct him to such a document, because such a document exists. Tech-speak is done with well-defined terms that have standardized meaning, and it is used to clarify how we talk to each other.

If you can point me to a document or documents standardizing terms like “Web 2.0”, “enterprise”, “solution”, “mission-critical”, “partner”, etc., then I will admit my criticism of corporate speak is wrong. However, I don’t think you will be able to, because those documents don’t exist. Because these words’ meanings are not standardized. They mean to the speaker what he imagines he means, and they mean to the listener what he imagines he hears. That, I think, is what business types don’t understand when they compare themselves to techs: what we say means something, because we had to learn something objective, verifiable, and repeatable to get where we are, while they didn’t.

“IT saves the day!”…or something

Saturday, March 1st, 2008

When it comes to fuckups, IT is usually the last guy to get the hot potato, and they’re expected to save the day.

Any time a user screws up, the IT department is EXPECTED to save the day by upper management. If they don’t, it is (rarely) the fault of the employee, it’s the fault of the IT department for not anticipating such a need, or not being available at a second’s notice, or simply not being able to save someone else’s bacon. Often times we’re asked to perform miracles.

It sounds reasonable, until you cross professions. Someone drives off the company driveway, crashes their car into a tree, car bursts into flames. Do the facilities people get in trouble for not ancticipating the employee who leaned over to pick up his cell phone off the floor while driving, and failed to install a nice big inflatable barrier along all the roads? Of course not. Yet IT departments are expected to back up everything known to man and expected to resurrect deleted and/or overwritten files.

Another example – it’s 4:55pm and Fedex comes at 5:00pm to pick up a package that is going to The Big Client. The employee has procrastinated working on it, and goes to print at 4:57pm. There’s something wrong with the printer or their system. Guess whose emergency it becomes? Guess who gets screamed at on the telephone? Guess who gets reamed by the CEO because the package didn’t go out? Usually the IT department. “Why was the printer broken? Why couldn’t you fix it?”…not, “Bob, why did you wait until 5 minutes before your deadline?”

Then there are security breaches due to stupid people. Here’s a way to fix this:

Education and consequences.

Nobody takes security seriously because regular staff thinks that the IT guys are there to clean up the messes when they occur. What they don’t understand is that the IT department is not there to be a janitor or babysitter. The IT department is there to provide the information infrastructure to enable the company and to ensure the company’s information security. That doesn’t necessarily include end users.

My personal philosophy is that end-users should be punished severely for security breaches. Sure the IT department will fix the problem, but the person who clicked on the link (or opened the email) needs to pay a price for their behavior, otherwise they will continue to do it. Nearly every company has an IT AUP. Nearly every company says that you can be disciplined, including termination of employement, for violating the policy. Yet I have never worked at a company where day-to-day infractions (even those with security risks associated with them) were punished. Sure, every once in awhile someone gets fired for surfing porn, or when their misuse of the system affects their ability to work (goofing off online for hours), but who gets fired for forwarding chain letters with flash animations in them? Nobody.

This absolutely has to change. If you had a receptionist who let random strangers in to wander the halls of your building she would be disciplined and probably canned. If you have a receptionist who forwards chain letters, clicks on suspicious links, downloads spyware and causes virus infections, the odds are nothing will happen to her.

Company officers think Information Security means securing the company with a firewall and looking out for hack attempts. They still don’t take Information Security seriously, and until they do, the rank-and-file won’t either.

Education alone is not going to do it. Education that is reinforced with consequences will.

Employee loyalty

Tuesday, January 8th, 2008

When you wonder why the employee loyalty your business needs (or you even crave) isn’t there, this is the reason. You look at people as cogs in your machine and not fellows. They’re there to be exploited and not to be part of the company.

A business isn’t one man or one man’s risk no matter how much you’d like to put it in those terms. Your business belongs not only to you, but to everyone who works for you.

Let’s put it in realistic terms. Your client has a relationship with your company, and not just with you. He has a relationship with the salesmen who talk to him, the support people he calls when he’s got a problem, and the people who manufactures the product he’s buying.

When you eliminate any one of those people for anything but the most important of reasons (no, not profit. The long-term survival of your company is what your eyes SHOULD be focused on) you are diminishing your company’s relationship with that client.

When your client says he has a problem with a single member of that team, you need to think long and hard about why. Is your client prejudiced? Is your client sane? More importantly, is your client looking out for your company’s best interests? Almost certainly not.

Don’t agree? Fire your important employees and replace their jobs with cheaper, less-experienced people. ‘Outsource’ if you dare. Watch your clients start to complain. Their money is about to go elsewhere.

Instead, why don’t you learn to treat your employees as not only cogs in a machine, but individual people with cares and concerns of their own who are also important parts of your company? Your company’s long-term health will show you the value of that. Profit will follow.

The IT industry could use some standardization

Thursday, December 27th, 2007

That’s part of the problem with not having any sort of standardized governing body from the start. The cost of entry to IT is effectively the cost of either a home PC setup and an Internet connection, a couple books, the cost to sit for an A+ exam, etc. In other words, the cost is practically nil. Hence we have every high school/college kid or every burger flipper with a home PC and broadband (or dial-up in the beginning) thinking they’re qualified to be a computer/network technician.

Then comes the dot-com era. Techies are suddenly glamorous and anybody can make $75k/year out of high school, or if you graduate college/university you can walk into six figures straight away! Dilute that to include anybody with an MCSE, A+ et al. and you’ve got this massive influx of students into any educational facility or diploma mill that’s accepting tuition cheques and we have this enormous surplus of “graduates” who now believe themselves qualified.

In a way that killed us. HR departments and hiring managers never really, truly knew what to look for in terms of certifications. Experience was up in the air because so much technology was so new who could put a time frame on it, and how well did you learn it in the time you had with it? Remember back in ’97 all those ads requiring a minimum of 5 years experience with Microsoft Windows 95?

The prescribed method to gain full journeyman status in any skilled trade is there for good reason. First you have to prove yourself educated and intelligent enough to gain entry which narrows the field right off the blocks. Next you have to gain your hours of apprenticeship working in the field with actual, experienced professionals. Yes, you have to earn your stripes doing B.S. work which will include coffee and lunch runs, sweeping floors and all the other crap jobs that come along. But hey, some day you’ll have your own apprentice to do the same exact thing. Everybody went through it, new people are no exception. During the course of your apprenticeship you have to attend mandatory school sessions teaching gradually more and more advanced materials which you can now relate to your actual on-the-job experience so what your experienced bosses are telling you starts to make sense.

After your 4-5 years and your x000 hours of service (with increasing pay every year, mind you) you’re now a full-fledged plumber, electrician, mechanic, glazier, mason, etc. Now, if this were the case with computer/IT professionals – don’t you think there’d be much fewer of us/them out there, namely the unqualified sort? The few who remained would logically command a much higher pay scale and who knows, maybe this (digital) world would even be a better place for it.

As a side note, have you ever experienced a house with improper plumbing/venting? Ever experienced sewer gas creeping into the building, killing all the residents? Ever had a toilet back up so severely there is literally 8 inches of deep raw sewage covering the floor? Ever taken a shower and been scalded to the point of permanent disfigurement?

Yeah, I didn’t think so. Thank the skilled journeyman in that trade.