More Than Just the Code: The 8 Must-have Non-technical Skills for Software Developers
Obviously, one of the most important attributes of a Tech Titan is technical skill. Coding skills are obvious. And nunchuk, bowhunting, and computer hacking skills.
But the reason we are putting this into yet another fabulous post our readers will consume with fervor is this: dang near the entire industry we are in is wrapped around TECHNICAL SKILLS ALONE. This is just plain wrong. There is so much more to the story. We’ve seen it time and time again: a “resume” is hired for a sweet set of acronyms and turns out to be a crappy coder (or worse, a sh*tty human being); and the inverse, a person with a resume lacking said acronyms is hired and is a bada$$. We’re here to explain why this phenomenon exists and what you need to do about it.
The 8 Key Traits of a Tech Titan
There are certain traits that you need to recognize as core to an individual as a software developer and/or technical resource. Here are some non-acronym things that you should evaluate:
We’ll review each in detail.
1. If You Can’t Talk, I Can’t Hear You
We all know the stereotype of the guy with a half-dumped bag of cheesy puffs at his workstation and empty cans of energy drinks strewn everywhere. You can still see the reflection of the monitor in his eyes hours after he’s left the computer. Sure, us techies are not always the cleanest bunch. But regardless of attire and smell, environment or people, a Tech Titan can always communicate what they are doing or have done and why. If an individual cannot communicate outside of the keyboard, they’re going to have a tough time in real life business projects.
2. Understanding the Costs of Setup and Takedown
Self-management is crucial to productivity. You can know all the code tricks in the world, but if you can’t put them into use, you suck. The true Tech Titan understands the costs of setup and takedown: if you start a piece of work and you must stop, how long does it take you to get started again? Good developers will keep track of their own progress against a specific task. This takes different forms, but mostly it’s some type of log such that they can quickly pick up where they stopped. It’s like a script for getting back to work. This is especially valuable for complex functionality where setup and take down can take hours instead of minutes.
3. Keeping your Virtual Desk Clean and Efficient
Keeping your virtual desk clean and efficient is especially crucial when hiring a contractor or utilizing a remote resource, but still applicable for companies with IT departments who manage throngs of computers. At least at some level, an effective developer must be able to manage their own environment. It is not unlike the famous rifle speech in Full Metal Jacket.
We’ve altered it a little bit. Tech Titans are meticulous about their working environments and tools:
This is my computer. There are many like it, but this one is mine. My computer is my best friend. It is my life. I must master it as I master my life. Without me, my computer is useless. Without my computer, I am useless.
We cannot tell you the COUNTLESS hours lost from some noob saying, “oh crap, I need to change my hard drive and reinstall Windows again because I clicked a link in a spam email”. Throw it in the gutter and go buy another. It doesn’t matter which platform you’re on. “Developer, know thy tools” is the mantra of a Tech Titan.
4. The Quick Things Should Not Happen Slowly; The Slow Things Should Not Happen Quickly
You ever have your cousin’s Grandma ask for computer help and you stand behind them, watching painfully as they attempt to get the mouse on top of an icon, counting the seconds (no, minutes! My God, has it been an hour already?) until which point you SNAP and shove Grandma into the floor, grab the mouse and fix the computer instantly? Never? Happens to Tech Titans all the time. The point is this: if you’re watching someone code or present something you should not be able to visibly see the mouse pointer. They should be typing at some speed that is otherworldly to you. Tech Titans move viciously quick with grace on a computer. It is second nature. Like they were born with a keyboard in their hands and a mouse wired to their brain. We don’t have time to wait for the f*cking mouse pointer to move, or the computer to catch up with our typing. We have important sh*t to do.
The opposite is also true – if you see them reading a business requirements document or reviewing a technical design, you need to see that they are visibly paying attention to the details. The eyes will be bouncing. It might still seem fast, but it will be METICULOUS. There will be details brought to light that you didn’t notice, and they’ll say, “What about XYZ scenario?”, which is one that you glaringly forgot. The Tech Titan has now saved you.
5. If You Can’t Merge Your Code Successfully, you are of No Use to Me
If a house is built but not hooked up to electricity and plumbing (or Gigabit internet), is it useful? Nope. Likewise, good devs know how to get their stuff integrated into the team’s codebase without hosing the whole thing. The Tech Titan is experienced in a variety of lifecycle tools (these days called “DevOps”). They know the tenets of various source code control systems and how to integrate their code into the codebase such that it can be tested and deployed. They aren’t necessarily experts on all aspects of deployments, but they understand basic configurations and tools. Having code that isn’t deployed and tested is the same as throwing money in the trash.
6. Hit the Ground Running
We call this the “speed-to-value” metric: if you dump a coder into a new project/situation/business, how long will it take them to be productive? There are certainly some horror stories where it takes weeks to get any code committed. But not so with a Tech Titan. Tech Titans are EPIC when it comes to speed-to-value. Of course, there are a few tricks to this. First, the beginning of their engagement with your project will seem like a complete immersion. They will take copious amounts of notes and ask a TON of questions. They are basically writing the book: “Let’s Learn Your Business/Platform/Architecture/Approach/Team in 24 Hours” that they will use to provide value fast. This immersion is key to getting momentum fast and maxing out speed-to-value.
7. send codez pls
There was a wise college professor who once said, “I’m not here to teach you how to program. I’m here to teach you how to find answers.” And it’s true: these days are far less about skills in algorithms and logic than they are about knowing where to look for something. Basically, the entire internet is saddled with code, code samples, explanations about code, tutorials, and on and on. The knowledge is there. The key differentiator for the Tech Titan is that they can soak it up FAST. It’s this type of immersion that you really want… a zeal for it, a yearning to soak it all up, to get to that place where it’s effortless. Value flies out of the human, onto a keyboard, into the software and to the business.
8. Knowing What to Do is Just as Important as How to Do It
Like the old G.I. Joe cartoon says, “Now we know. And knowing is half the battle.”
Or, as the Tech Titans’ mantra says, “With great power comes great responsibility. Lucky for you, we have both.” The point is this: you can take a whole team of bada$$ ninja rockstar coders, stick them in a room, but without direction, you’ll get a pile of spaghetti code less useful than healthcare.gov.
There’s a great lesson here. Let’s look at that classic scenario where a new developer (let’s call them “Cowboy Dev”) jumps into a project that might have been around for a few years. The app’s seen some good days but the code is outdated for sure. Cowboy Dev has been tasked with doing some general maintenance to the app. Maybe catching up a few security items, adding a couple new forms for auditing, what-have-you.
This is a crucial point: 9 out of 10 times, any human being who develops software that has been tasked with maintenance on a legacy application is going to tell you, “you need to refactor this to use the WHIZBANG library, it’s way cooler/better/faster/more”. And yes, from their perspective, it should be updated, because Cowboy Dev is an expert in WHIZBANG or simply just thinks it’s cooler/better/faster/more. But is it the right thing to do? Cowboy Dev will re-write this on your nickel without blinking twice. A Tech Titan will ask, “Why and why not?” And because they ask, they find out that the entire thing will be replaced by a package in 18 months. So Cowboy Dev’s refactor is a complete <waste>.
It’s not about how well one can code. It’s about whether the code provides value to the software, and ultimately to the business.
Bonus Superpower: Humility
The software developer employee or vendor marketplace today is quite amazing. It seems everyone is an expert at something and is not afraid to share that they are. Yet the number of failed projects – high profile or low profile – is <massive>. What gives? If all these people are freakin’ techie geniuses, why do their projects go sideways, overrun their budgets, or worse, get canceled?
There’s hubris. There’s desperation. There’s sh*tty requirements. These factors work together to make the failure rates what they are. But as it relates to technical prowess and Tech Titans, hubris is deadly. It makes people commit to things they don’t yet know, with tools they haven’t yet learned, on platforms they don’t have experience with. It sometimes catches us all. We genuinely want to <win>; we want our clients to succeed. So, we over-commit. Hubris strikes again.
A true Tech Titan has been through this; they remember that time they committed to a month of all-nighters only to see the project implode. They’ve jumped on a new project only to find out that the client doesn’t have any requirements. The Tech Titan has bid something fixed price and didn’t enforce change control, and they’ve seen the feces hit the rotating oscillator. There’s simply no experience as powerful as failure. Well, that and not getting paid. Not getting paid is a very powerful (and painful) teacher as well.
Thus, the Tech Titan can be circumspect now. They know the real superpower is in being able to say NO: no to the new project in a new platform, no to the fixed price project with zero requirements, no to the month of all-nighters. We’ve learned that saying “No” (or “I don’t know”) is truly powerful.
Highly Tuned Situational Awareness + Techie Ninja Powers = TECH TITAN
We can’t stress this enough: If you’re working on software development projects all this stuff is IMPORTANT. As the adage goes, “proper planning and preparation prevents piss-poor performance” and there is no difference in high tech: ignore the simple things and you lose time and money. Build your team around resources who have these innate capabilities. Get a Tech Titan.