4 min read

Problems in the IT Industry

A solution to a problem is something that makes the problem go away. In IT, we skip that step — we pile on tools and processes while nobody learns the trade.

The solution to a problem is something that simplifies the situation. When one sees a solution, the problem ceases to exist.

Let’s say a boss is pulling his hair out all day because the IRS is after him. The solution is to hire a good accountant. For $5000, his accounts are in order. The IRS is no longer chasing him, and he is having a good night’s sleep (well, provided he wasn’t doing anything sketchy in the first place. In that case, the solution would be something more sophisticated).

You can’t say that your accountant solved a problem if the IRS is still after you. When you pay someone to resolve a problem for you, you expect this problem to cease being a problem.

If you hire a cleaner for your office, you can see the result. The office is either clean or not. It’s very simple to come up to your cleaner and say, “Bill, why is there a pile of trash in the middle of the office?”. The solution is easy. You either give him a black eye and tell him that if the trash stays there for one more minute, he will fly after that trash to a dumpster, or you just fire him right there and get a new guy.

Somehow, the IT sector does something else

No one knows why, but usually, it’s because no one understands what IT means. Those “programmer guys” are scary and almost mystical. They push buttons, and no one understands what is going on.

Let’s say that yesterday our site was down for 10 minutes. Why? Because Joe wrote erroneous code. Okay. How are we going to avoid it?

Let’s install programs Bleah and Blah so those programs will check our code for errors automatically. Also, let’s add Blurp and Burp to our software stack so those will monitor the state of our system. Also, let’s change everything head to toe, and spend 6 months’ worth of resources rewriting it. Good! We’re done! Now when something goes down, it’s down for good. Not 10 minutes, but an entire day.

Not a single person looked at Joe and found out that he was the problem.

And you will be amazed at what a problem he is. Ask this guy what “to program” means. You will find out that he does not understand the word “program”. Ask him what “a function” is. You will be amazed at how much mumbling this guy will do. He doesn’t know. For his entire career, he has been watching YouTube videos “How to master BleedyScript in 5 nanoseconds”. He doesn’t understand the basics of a computer. He doesn’t even know how that computer “ticks” and “tacks”.

And you’re going to trust this guy to program this computer for you? It’s on the same level of insanity as entrusting your car repair to a guy who has no idea how to open a hood. Every line of code Joe produces, he is sitting atop a bunch of confusion. He doesn’t know how his code is executed. So, every symbol he writes actually brings him closer to “I don’t know what I am doing here”.

  • The imposter syndrome.
  • Burnout.
  • “I don’t belong here.”

Those all happen just because Joe doesn’t know his trade. He has never studied it.

Instead of fixing the original error in his code, and checking what he had programmed before pushing it to production, we now have “solutions”.

  • “We are going to hire a separate guy to monitor our code.”
  • “We’re going to pay $5000 a month to Bleh so they can run error-checking on our code.”
  • “Let’s install yet another program to prevent mistakes.”

None of the above solves the actual problem. It’s more like covering a pile of trash in the middle of the office with a thick rug.

So when something goes down, don’t listen to “we need another piece of software”. You need to find the guy who made an error.

And spend some time with that guy. Teach him, spend enough time to make him understand where he erred. You will gain trust in your staff. Your staff will gain trust in you. And your investment of time will be in your most valuable resources — your staff.

Keep reading

Related posts