Happy Employees

What is the most important asset of any organization? Is it their physical property – buildings, computers, and desks? Is it their capital reserves in the bank? How about their portfolio of intellectual property? While all of the above items are important, they pale in comparison to the value of their people. An organization’s employees take care of and use the physical property, spend capital to fund activities to grow the business, and exploit intellectual property for economic gain. It’s the people who make it all happen – without them, everything else is just an inanimate object. Unfortunately, people like Jack Welch failed to see their value and changed the market to see people as nothing but another expendable resource. In the eyes of people like Jack Welch, people are no different than the wood used to make a door, the plastic used to make a consumer good, or a glob of solder used to make electronic goods. People became a commodity instead of human beings.

How has this impacted the workplace? We see more and more that people don’t work for an organization for very long. Changing jobs every few years is increasingly popular. Of course, this is only logical – why would you want to work for an employer who didn’t value you as a human being? Businesses do whatever it takes to keep employee pay as low as possible while increasing the CEO’s pay. When annual raises come due, the lower the number the better. Employees quickly see that if they want to get ahead, they will need to find another job making more. What if employers gave raises as if each employee was a potential new hire and they wanted to ensure they took the offer?

What would happen if the business world changed to value people over profits? What if companies placed their people first – ahead of profits, ahead of the customer, and ahead of the shareholder? Sounds radical, but companies who have implemented such policies have seen higher employee retention and greater employee happiness. But most importantly, that greater happiness directly translated to happier customers who then engaged in more business with the organization and improved shareholder value. Countless books on the topic of servant leadership and employee-focused business models exist, and they all show the exact same thing – employees who feel valued are more productive and happier to be at work.

A book I recently read said that – as a small business owner – I need to “fall in love with my customer”. The notion is that I should treat my customer like they are the most important thing on earth. Treat them like I treat my wife. Treat them as if I want nothing more than to spend time with them. When I treat my customers that way, my customers won’t want to leave. That same idea applies to employees – what if businesses treated their employees like they loved them?

“Revolutionary” Tech

In 1974, a Hungarian invented one of the most popular and influential toys of all time, the Rubik’s cube. Considering that I was born well after that time, I can safely say that I cannot remember a time without this toy. Growing up, however, I watched the Rubik’s company try to make toy after toy in some way related to the original, but they always tried new and “innovative” renditions.

Since my family members always knew how big of a Rubik’s cube fan I am, I would get all kinds of these newer toys as birthday and Christmas gifts. While many of them were flashy and initially interesting, I ultimately grew tired of them and would go back to playing with the original. After all, the original was fascinating… captivating even, and I was determined to learn how to solve it.

After spending a considerable amount of time experimenting and playing with my cube, one of the teachers at my elementary school gave me a list of algorithms showing how to manipulate individual squares in very specific ways. The summer after, I accomplished my goal to learn to solve the cube, but I was still hungry for more.

While my first few solves averaged around 10 minutes, I wanted to continue to get better and faster. I studied and fine tuned my process of solving the cube, realizing that at a certain point the design of the cube itself was holding me back. I then looked into what other cubes were out there and how they were designed to be more efficient and effective. These days I solve the cube in under a minute, and the best people in the world can solve it in a matter of seconds.

Constantly evaluating and enhancing processes and expanding resources also holds value when thinking about technology and business. Businesses that are growing very rapidly today focus their time, energy, and resources on making gradual improvements, becoming more resourceful. By learning from this, organizations can ensure that they are effectively working toward their goals, accomplishing more by using the most effective resources to the best of their ability.

Passion

Rock Star

Recently, I read an article on LinkedIn questioning the notion that good developers are those who write code outside of business hours – not for their job, but for their own interests. The article suggested that you could be a great developer and go home and pursue other endeavors – that it was unfair to expect that your best developers are writing code at home. I could not disagree more. Sure, a person can be a competent developer and only write code during business hours. But I assure you that such a developer will never be considered a “rock star” programmer. Those who are the best in their field are always those with passion – and passion is not a 9-5 job. The article tried to compare programming to carpentry. It asked if we would expect a carpenter to be engaged in woodworking at home to to be considered competent. That seems silly to me. If I’m looking for someone to create a complex piece of wooden cabinetry with hand carvings, I can assure you I’m looking for an artisan with a passion for his work – one who has honed that skill through years of hard work outside his 9-5 job. I have a good friend who is a musician – a highly skilled performer who makes everyone he plays with sound better because of the mastery of his art. Music is his passion. He didn’t get that skill working 9-5 – it’s what he loves and it shows when you hear him perform. Listen to any business leader talk and what do they all talk about? Passion. It’s passion that brings forth the best in humanity. It’s a deep love of what we do that allows us to become a rock star in our field. In every corner of life, those with passion are the ones we remember – Steve Jobs, Mother Theresa, Grandi, Tom Brady – people passionate about their work. Want to be remembered by history and admired by your peers? Be passionate about what you do and remember that passion is not a 9-5 job.

Workplace Efficiency

All businesses share the same basic objective – to make money. That’s pretty simple, but what enables that to happen? Business leaders focus on increasing revenue, decreasing costs, increasing efficiency, ensuring compliance with regulatory guidelines, and finding and exploiting any competitive advantages they have. Of all the above objectives, one of the easiest is to increase efficiency and remove inefficiencies. Most people hate bureaucracies – we see them when we look to the federal government, the DMV and, all too often, the very companies we work for. Bureaucracies make us feel powerless and unimportant. They beat us down with rules and restrictions that keep us from accomplishing our job. Bureaucracies are the very antithesis of efficiency. In your business, are policies and procedures intended to chain your employees down, or liberate them to do the work you pay them to do? Are your processes streamlined for the mission at hand, or dictated by bureaucrats above in such a way as to slow down your business? As businesses grow, they tend to become more rigid and bureaucratic – more layers of management, more company ‘yes men’ who won’t challenge the status quo, and more workers who show up and punch the clock instead of having any excitement for the mission of the organization. Ever work at a small businesses? The focus is always on overtaking the Goliath in the market. Policies and procedures that prevent that from happening are removed, workers are empowered to do their best. People have a shared sense of purpose, and often develop a feeling of family. What can we learn from these observations? First, if you’re a leader within a large organization, how can you remove red tape and empower your people? What do you need to do to ensure that your people are working at their best? Are you creating roadblocks to your employees’ work? Employees want to feel empowered – they want to feel that their leaders are on their side. They want the bureaucracy removed so they can do their best. Second, if you work in a small business, recognize that your lack of rigidity may be the single biggest competitive advantage you have. With no bureaucracy to hold you back, you can find the best way to accomplish the mission and execute without roadblocks. Empower your team to win and then step back and watch them achieve. As a small business, your best way to attack Goliath is through superior processes, quicker turn around, less paperwork, and having employees that feel empowered to accomplish the mission. No business owner ever said “I think the federal government would be a great model for how to run my business!” but that is exactly what happens to businesses all across our nation. It’s time to change that trend!

Perfection Paralysis

A major problem with many projects is the quest for perfection. We don’t want to release a software application until it looks perfect, there are no bugs, it’s fast, and the user experience is flawless. And that’s a great ideal for any project. Unfortunately, the quest for perfection invariably adds scope-creep. What was originally deemed a good design is now less than perfect and requires tweaks. The performance is just not fast enough yet, so we’ll tune the servers. An executive decided there is a new piece of required functionality that simply must go in. On and on we go, and the app release is pushed back further and further. Projects can go on for a year or more before being released. Certainly we want solid software applications, but what does this quest for perfection bring us? In the end, very little of value. As release dates get pushed back, the customer begins to lose faith in the abilities of the development team to deliver. Increased time-to-market means we miss opportunities to sell our product. Increased release cycle times make us less responsive to user issues we didn’t see. These problems are among the issues solved by agile development. Frequently releasing code means that users can start getting essential functionality quicker, time-to-market is diminished, and teams can react to changing user requirements quickly. But to get there, we have to determine what the minimum viable product is and accept that things may not be perfect. We need to accept that our initial version will not be the best there is, but that it’s good enough to do what we set out to do. Understandably, this may feel uncomfortable to the perfectionist in us – after all, we want to give our absolute best. We want a product that we can be proud of and that the customer is dying to have. But if we wait, with delay after delay, we run the risk of having the best app that will never be used because someone else beat you to it.

Why Do I Write Code?

Today, I was read an article asking why you do whatever it is you do. If you are trying to sell to a customer, they’re not interested in what you sell but rather why you sell it. You may sell widgets, but people don’t buy widgets for the sake of having widgets – they buy widgets for whatever it is they do – the why. In my business, people don’t buy code – they don’t care about code. What they do care about is the why. Why do I write code? I write code to simplify business processes, to improve operational efficiency, to increase revenue, to ensure compliance with regulatory guidelines, and to simply make my client’s life easier. People buy those things! As a business, wouldn’t you pay for operational efficiency, increased revenue, and easier compliance management? Software can have an impact on every facet of a business and take your business to the next level. Don’t waste your time doing tasks that aren’t generating maximum revenue for your organization – find software solutions to solve those problems so you can spend your time having a real impact on your business by focusing your talents where they will generate the most revenue!

Finding Tech Jobs & Candidates

Scrolling through LinkedIn, I see people talking about how they can’t find jobs. Talking to companies, I hear how they can’t find qualified candidates. This seems to be the story all across the nation regarding IT positions. How can this be? Why are businesses unable to find candidates while there are candidates out there looking for jobs? As a software engineer and small business owner, I often look at job boards to see what companies are looking for, what trends are hot (based on something more than just twitter hype), and what direction the market is headed. Over the years, a few things have become apparent to me. First, software companies are constantly looking for employees that meet an absurd number of qualifications. Their requirements start to look like the checklist for a set of collectable cards. Is it really necessary for the candidate to be an expert in 15 different technologies? It’s particularly difficult now because of the sheer volume of technologies available for use. Languages, web servers, front-end toolkits, build environments, continuous integration environments, libraries, project management methodologies, and the list goes on. And under each of those categories, dozens of choices – C, C#, C++, Java, Scala, Python, PHP, etc. Eventually, job posts end up with so many requirements that you are literally looking for a needle in a haystack during your candidate search. Employers: Do you really need an expert in all those different technologies? I doubt it – you need a solid programmer who can learn the technology stack you have in place. The second thing I’ve observed over the years is that few developers actually have a drive to learn new technologies. How is it we still have programmers and other tech professionals that don’t know Linux? How can you be a software engineer and not have some knowledge of JavaScript? How many shops are using toolkits and frameworks that died years ago? Delphi is still out there, but would anybody actually chose to start a new project with this antiquated technology? Too many developers are stuck in their world – “I am a Java programmer, I use Eclipse on Windows, and I know Maven”. On both sides of the equation – companies and job candidates – there exists a real lack of desire to put in any meaningful effort. Companies could invest in their new employees and teach them the frameworks they need them to know. Just imagine the long-term benefit of showing employees that you care enough about them professionally to invest in them! Programmers could invest in themselves and learn new skills throughout their career instead of being content to use long-dead tech. Of course, neither side wants to invest any effort. So, companies end up without qualified candidates and programmers never go outside their comfort zone to learn new skills.

 

Challenge Yourself

Today, I was reading some advice from Simon Sinek. He says we should always work to outdo ourselves. Don’t focus on others, don’t strive to be number 1, don’t compare yourselves to others, compare yourself to you. Are you making progress? This is great advice in the tech world as well as the business world. Sure, I can be disappointed that my company isn’t as big as Microsoft yet. Or I can compare where my business is today to where it was last year and ask if I’m making progress. If you are a programmer, is your code better today than it was a year ago? If you are a system administrator, are you better with Windows administration than you were a year ago? If you’re a network admin, do you understand Cisco routers better than last year? If the answer is no, why not? Unfortunately, too many people in the world today spend too little time advancing their skills. Then, when it comes time for a raise, they wonder why they didn’t receive what they expected. How do you make progress in the tech world? It’s actually not hard. Read books, see what people are posting on Twitter, write code (if you’re a programmer), attend conferences, tinker with new hardware, etc. Skill only comes with practice! I read someone else say that things are either green and growing or brown and dying. This is certainly true of skills. Use them or lose them. If you’re not advancing your tech skills, those skills will atrophy.  If you want to achieve excellence in your field, challenge yourself to be better today than you were yesterday and then take action to ensure it happens!

Management and Leadership

In the late 90’s, I attended the Army’s Primary Leadership Development Course, which was a requirement for promotion to Sergeant. This 4 week course included classes on leading physical fitness training, marching troops, compass and map reading (including a required night land navigation course), and other tasks necessary for leading soldiers in battle. Throughout the courses on leadership, the distinction between a leader and a manager was made clear.  Of course, outside the military, I think most people would say they are synonyms. In the Army, leadership is defined as direct management of troops while management is indirect. What does this mean? It means that a leader directly interacts with his or her subordinates and a manager does not. A leader eats lunch with his team, a manager does not. A leader knows what’s going on in the lives of his team, a manager does not care. I don’t want to infer that management is in some way bad. We need managers – people in positions behind the scenes that move the wheels of an organization. But even more so, we need leaders. We need people who others aspire to be like, a person who inspires his team to great things, an individual that encourages others to be more than they currently are or even think they can become. For a leader, an individual will work extra hours, come in on Saturday, and end up being happy about it! In my entire career as a software engineer, I have found few people that meet these ideals. I’ve seen many managers, but few actual leaders. Indeed, in the software world we see titles like “Director”, or “Scrum Master” – neither one shows any sense of leadership. The title “Scrum Master” would never be chosen by a real leader because it suggests an incredible amount of superiority over the team. Leaders are part of what’s going on. They are doing what they tell others to do. They are protecting the members of their team. They are encouraging their team to do more. They are not above the action, they are an integral part of the action! Aren’t those the people you want to work for? The people you hope to be like? If you want employees to take your business to the next level, employees who are committed to your organization, empower them by ensuring the leaders you pick know how to lead – not just manage – those in their care.

Bring Your A-Game

A-Game

Recently, I was contacted by an individual leading a group of young engineers into a state-wide competition. This leader wanted to discuss the project and see if I had any advice. I provided him a simple improvement that would have greatly improved the product that the team was working to produce. Then, a few days later, I heard that he had decided not to take my advice. Instead, he would use my suggestion as an improvement if his team was selected to advance to round two of the competition. This really disappointed me. This leader has taught his team to try just hard enough – not to do your best. And, he made the mistake of assuming that his inferior product would advance to the next round. In today’s highly competitive market, this is the exact opposite of what the next generation needs to see. Instead, we need to install in those underneath us a quest for excellence – not mediocrity. If you can do better, why aren’t you? If you can make the product better, what’s stopping you? Innovation and excellence require pushing yourself every day – you can never settle for anything less. In everything you do, bring your A game. If you don’t, someone else will and you’ll be left on the sideline.