Tuesday, October 5, 2010

Rant on Lack of Performance and Missing Excellence

  • The Letdown: I thought wanting and striving for optimal solutions was innate in all developers. Realizing that sloppy code exists with no explanation and with no apology has been very hard on me. Hard because I find no reason for it; it is bewildering. Apparently many projects I've worked on have set me up/spoiled me. Most resources on those projects took pride in their work and did not grunt prehistoric responses to requests for the best solution. I guess I am 'growing up' yet again....a term used to blanket situations when we have to swallow bitter reality and not get worked up over things we cannot change.
  • No Comprehension: I cannot understand/sympathize/empathize/step in the shoes of people who do the bare minimum. I have tried to see through their eyes and I just can't. Whether working at a fast-food restaurant or building a complex machine, why would anyone shrug their shoulders and just do enough to scrape by? What enjoyment do they get? Where is their pride, their sense of accomplishment? I worked fast food when I was 15 and it was rewarding to get it done correctly and to be pleasant and helpful to the customers, rather than nonchalant and unresponsive. I liken those passive detached people to pods. They who have to be lead step-by-step to fully help the customer or create a good work product.....really, do they have souls?
  • Numbers/Proportion: I don't want to guess at what percentage of folks do their best or at the least, really try to do well in their jobs, or school, or other projects. It appears that it is a wee minority and that is sad. I am let down and surprised that my bastion (software development) also harbors folks who do not challenge themselves but use stagnant methodologies that are difficult to extend/maintain and can actually be dangerous.
  • Ramifications: If you have to work with someone who learned how to do his or her trade at the beginning of their career and won't continue to learn, I am sorry. You probably have to take up the slack where their workmanship leaves off. On the other hand, if you are one of those folks who does things 'one way' (or 'your way' or the 'right way') and will not listen to suggestion.....who will not read or otherwise learn the best methods, can you help me understand why? Is it really so upsetting and painful to try to learn something new or to put forth a little effort to create a product or offer a service worth showing off/sharing? Does it hurt your brain?
I do have a few ideas on improving unmotivated employees' performance:

1. Healthy (not mean-spirited) Competition: A contest that has tangible rewards is a good motivator. I believe many people do not excel or try to because they need a tangible external reward to reach for. I guess their minds do not give them pleasure internally for doing something well, so we need to give them external reward. When I say 'not mean-spirited', I am saying do not secretly pit employees against one another. Do not give two employees or teams the same task to 'prove who is best'. That is negative and may be defeating to the employees.

2. Small group meetings that encourage personal development/growth on the job: A few eager individuals can be infectious. Employees who get excited about their work and about trying new things/doing the best job, can be spokespeople at a meeting. These staff members can be asked to present a methodology in a quick and mostly painless way. If the meetings are large, people will not pay attention. There is accountability in smaller groups. The presenters should be asked to prove the benefits of said methodology---benefits that the less enthused could relate to. Ask them to provide take-home materials that are short and sweet so that the effort will not be lost. These take-home materials could simply remind the group about the advantages of the method and list some examples displaying technique.

3. Attitude Management: Identify the few employees who love what they do. Encourage them to encourage others. In FRONT OF other workers, tell them you appreciate their effort and excitement. Follow this up with asking non-invested staff to contribute more ideas, encouraging them matter-of-factly as if you KNOW they can do it. (Without the follow-up, less interested staff may simply resent those who are shown appreciation.) Also, verbal encouragement and activities that pep up teams can help unmotivated folks become motivated. Praise or promise of praise is useful and makes for a better environment. Conversely, super-complainers exist and they decrease morale and therefore effort and performance. Where possible, minimize this phenomena. One action that can be taken is to speak to the overly-negative about the effects of their words. They may not be aware of their impact.

4. Words Not to Use: If excellence is what you want, then calling people 'monkeys' or 'idiots' in front of your staff is not a good idea. Insulting the end-user or customer in front of your team makes the staff wonder what you say about them. Why perform well if your boss thinks you are a monkey?

5. Make it OK to Flounder: One reason people may not try different techniques is that they are not comfortable with them. Trying a new thing and not doing it perfectly the first time is to be expected. Make this known. Trying is valuable and that should be communicated.

6 comments:

Anonymous said...

Well said!

Anonymous said...

Love it Aendenne! This is a great post... I might just have to do a follow up post myself. :)

I do wish more development teams, and especially project managers had a better attitude about what is actually being worked on. Especially the "ok to flounder" part. If that isn't ok, I can guarantee that the best, high quality, well designed architecture is NOT being built for the project at hand. If it isn't ok to make some mistakes and to learn, then they shouldn't be running or working in software... PERIOD. :)

Anyway, always good to read great suggestions like you laid out.

Anonymous said...

Great entry. Anticipating the next one.

Unknown said...

YES! I hate the skate by attitude when I see it. What happened to pride and professionalism? I would note though there is a balance here that needs to be maintained. Yes CQI is important. You need to always be looking for improvements. But they aren't paying us to improve our processes. They are paying us to improve the customers processes. That should always be our #1, and sometimes we just need to get stuff out the door...

Harv said...

Interesting comments and question. I've spent 45+ years in SWE and been everything from a coder to a CIO for a Fortune 100 company. This question used to bother me a lot, but one day I got an answer that has changed my view of others' work.

A good friend listened to me complain about how people could be so dumb. He asked me if a person couldn't perform as well as I did what did that make them? I said incompetent. He said, "Don't you realize that you are in the top 10% or better? That means that someone who is average (50 percentile) is incompetent in your opinion. Statistically, most people are average." I had never realized that holding others to my standards was in fact asking them to do something that most people couldn't accomplish.

Once I understood my measuring system, I saw myself in a whole new light. My job became one of serving the needs of others. I started teaching the correct way to do it rather than expecting that the other would already know.

It doesn't work all the time. There are always those who really don't want to learn, but they are fewer than one would expect. Most people are too embarassed to ask for help but will take it, if it is offered by example.

My very first job was to do nothing but maintenance for the first year. It was the best training I have ever had. I got to modify code from over 100 other programmers. I saw it all: the good, the bad, and the ugly. I quickly learned the difference between good code and the rest. It forever left an impression on me.

I personally believe that everyone should be given a maintenance job when they start a job with a new company. As one of my former peers used to say, "Show me the code." He was right, one glance and you know how you can help.

Anonymous said...

Im still learning from you, but Im trying to achieve my goals. I certainly love reading everything that is written on your site.Keep the tips coming. I loved it!

Post a Comment