Slashdot Mirror


Ask Slashdot: Communication Skills For Programmers?

An anonymous reader writes "As a new developer at a young-ish software company, I've been told my communication skills need some work. I'm not painfully introverted or socially inept, but I get lost in my work and only contact people if I need something from them or they ask me a question. Traditional advice isn't relevant to casual, less hierarchical companies — I don't have to hold my tongue when someone is wrong or worry about formalities. But I do need to connect with people professionally, since my team members and managers decide my perf and advancement. How do you keep colleagues abreast of your work without having exponentially many needless conversations?"

17 of 361 comments (clear)

  1. Needless? by Anonymous Coward · · Score: 5, Insightful

    So this needless communication is actually needful?

    Maybe just change your attitude. Forming relationships is very important at work.
    Are you sure "communication skills" means that you aren't socializing enough? Perhaps your emails are inadequate, you aren't keeping people informed, aren't discussing ideas with others or are not adequately explaining your ideas.

    The fact that you only talk to people when you need some from them is a problem. What about brain storming? Design meetings? Code reviews?

    Getting to know people and taking an interest in their lives doesn't hurt either.

    1. Re:Needless? by khasim · · Score: 4, Insightful

      It could just be his manager. I've often been dinged for "communication". As have most of the techs that I've worked with. It's an easy stereotype.

      Now look at the manager who is putting that on a review. Has he been pointing out better ways you've could have communicated as they've happened? No? Then it is a problem with your manager or the system he has to follow.

      The best anecdote for that is from a friend of mine who's boss (former tech with no management training) told him not to include him on his weekly updates for a specific project. Then dinged him for "communication" because he should have known to include him in his weekly updates.

      Too often "communication" translates to "you are not my drinking buddy". And if evaluations are based upon that then you should find a better job where your boss understands "communication" himself.

    2. Re:Needless? by ILongForDarkness · · Score: 4, Insightful

      It's a balance in my experience. I've had places where they would get upset if they saw you talking to someone rather than nose to the grind stone and others that got upset if you didn't stop what you were doing and say hi to someone that came into your workspace to talk to someone else (who was there, not that they came asking for them and you ignored them).

      Sadly, it is the lowest common denominator (well maybe highest common denominator): those that do need a lot of social interaction will get very frustrated by not having it. The assumption is usually that those that are quite or less social are not harmed by being forced to say hi and deal with small talk (even though that isn't the case when you need hours of consecutive time to figure out things sometimes, or just like the socialites might feel with no social interaction that like your life is being wasted with "how's the weather" talk). Regardless, the socially adapt are by definition the squeaky wheel and so are the ones that will get their way. Also, they tend to be the ones seen as being leaders/liked by people so are more likely to be your manager now or in the future so always a good idea to keep them happy.

      Suggestion: have lunch with people. You have to eat anyways, so if they have to feel like they know you let them have their meaningless conversations with you while you are stuffing your frozen dinner in your mouth.

    3. Re:Needless? by Anonymous Coward · · Score: 5, Insightful

      It can also mean don't be an introverted dork who's only there to work. ... Source: I was once an introverted dork, but got medicated for my social-dysfunction ...

      Sounds like the same kind of attitude behind corrective education for homosexuals. Just because you're a successful graduate of Camp-don't-be-Gay doesn't mean that anyone else who's forced to attend wants or needs chemical correction.

      Introversion is natural. Just because the extroverts are in the majority and are trying to force their kool-aid on everyone doesn't mean that introversion is wrong.

  2. Default ding. by HornWumpus · · Score: 2, Insightful

    If you didn't screwup in any other way, your manager will put 'communication skills need work' just so it looks like he did something during the last review period.

    Send an email to the whole team at the end of each day, summarizing what you've been doing.

    --
    John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  3. Have More Needless Conversations by Bigbutt · · Score: 3, Insightful

    I'm fairly introverted (18 out of 20) but I also make time to walk around Operations (I'm a Unix Admin) and chat. While I'm not a sports person, there are folks who share the same interests. So finding out about a few guys who play guitar lets me chat about guitars (or bass). I get to poke at the guys who ride cruisers (I'm not quite old enough for a cruiser yet :) ) and share stories about my own touring rides (going to Alaska again next year). Several are gamers of one sort or another so there's some cross discussion there, even over in Engineering where there's a fellow Shadowrun gamer and another guy who plays Bass.

    Heck when I worked at IBM, one of the jobs was remote 100% remote (me here, a couple of folks in Rochester NY, one in Seattle, one in Austin, a couple in New Jersey, and a couple of guys in Boston where the contract was). I had a problem with it _because_ there was no interaction outside of work conversation.

    Sure, you're a working guy but networking, even amongst your coworkers is important.

    [John]

    --
    Shit better not happen!
  4. Re:First, learn the proper use of "exponentially" by Workaphobia · · Score: 4, Insightful

    Not to single you out when there are many other offenders around, but comments like yours remind me of something I don't miss on slashdot. You open up with an unsound criticism of someone's word choice ("exponentially" has an informal non-technical definition that does not equate to geometric growth). You close with a sarcastic putdown. You sandwich good stuff in-between.

    --
    Evidently, the key to understanding recursion is to begin by understanding recursion. The rest is easy.
  5. Managers.. by sqorbit · · Score: 3, Insightful

    I think many companies miss the point of good managers. I've had the positive experience of managing a small group of developers and they relied heavily on me to talk with other managers and upper management when it came to projects. I myself understand programming but am not a programmer myself, my background is based in networking and databases admin. I understood that developers needed time and resources to resolve issues or develop new products. It was my job to make sure the programmers had the resources they needed and also to make sure that upper management had a clear understanding of the time table and end result. This made the developers more comfortable and gave management the go between they needed to fully understand project needs. Everyone can not be great at everything, and if a developer is great at coding, but not so good at dealing with management why not have someone who understands be the communicator. Middle management often gets a horrible reputation for being a roadblock, but in some cases it can be exactly what is needed.

    --
    Sent from my TARDIS
  6. Start by asking for more specific feedback by MAXOMENOS · · Score: 5, Insightful

    You've been told that your communication skills need some work. Part of communicating is asking for, and learning how to receive, feedback. So, I'd suggest the following:

    • Go to the people who gave you the advice to improve your communications skills
    • Ask them if they can point to specific areas where your communication needs work, and to provide examples
    • Listen to what they say. Take notes - just bullet points - of the important stuff. Sub-bullet the examples, if provided.
    • When they're done giving you specifics, ask them if they might have pointers on where to learn more about improving those areas.
    • Dedicate real time - an hour a week at least - towards improving those areas.
    • Practice, practice, practice, every opportunity you get.

    DO NOT:

    • Get defensive
    • Retaliate
    • Brush off their advice

    Good luck.

  7. Respect by Bovius · · Score: 3, Insightful

    >I don't have to hold my tongue when someone is wrong

    I respectfully disagree. You should definitely speak up if something is wrong, and it's good that you're in an environment that allows you to. That being said, I suspect that the number one "communication problem" software developers tend to have is coming across as having an overactive ego, that your word is the divine truth handed down to the unwashed tech-illiterate masses, and that their opinions don't actually matter in the face of the cold, hard facts you bring to the table. I don't think this is the dev's actual attitude (most of the time), but it's so, so easy to come across that way. Coming up with ways to share an idea while making sure your audience understands yet doesn't feel talked down to is a skill I know a lot of devs could stand to learn. If your coworkers feel respected by you, that goes a long way toward improving communications.

    The other problem I see frequently is a general lack of visibility into what progress is actually being made on the seething morass of shifting dev priorities. Even something as simple as a daily/weekly project status update e-mail to the right people can do wonders here.

    (This question gets deep into greater issues of how much power tech people have and their perceived role in businesses and society, which is far too big a discussion to be had here. Short version: IT experts are witches).

    Full disclosure: I am a career software developer, and like to believe I do pretty good at the communicating with business thing.

  8. Be Proactive by HtR · · Score: 4, Insightful

    I had a similar situation once in which I was working away as a contractor, but the manager wasn't really aware of everything I was doing.

    The best advice I received, which came from an outside source, was to start emailing the team leader and the manager a quick "status" update every week. Just a quick email about what I was working on that week, what I accomplished, and any issues they should be aware of or handle. It worked very well, and it tended to cut down any interruptions from them wandering by asking me "how's it going?" As time went on, they learned to trust me more as a professional, and it became less of an issue.

    Now, I hate mandated weekly status reports as much as anyone, but if the perceived problem on their end is that they don't know enough about what you're doing, I would much rather start sending them email with the relevant information. Otherwise, you might find you have to start filling out detailed weekly status reports, attending regular status update meetings, or something else more painful that a quick email.

    --
    Have you tried turning it off and on again?
  9. Re:Beat them by Anonymous Coward · · Score: 3, Insightful

    all these years, all those posts, it was you

    this whole time it was YOU

    MODS PLEASE

  10. How to be a Star Engineer by SirGarlon · · Score: 4, Insightful

    The fact that you only talk to people when you need some from them is a problem.

    This.

    Years ago, my boss pointed me to a good article titled "How to Be a Star Engineer." (Apologies for the annoying format; if you're an IEEE member or university student you can download a PDF).

    The article essentially says communication skills and attitude are what differentiates star performers from the rank and file. Understand the people you're working with, what they need, and provide that. Everyone will enjoy working with you, and you will become well-known.

    --
    [Sir Garlon] is the marvellest knight that is now living, for he destroyeth many good knights, for he goeth invisible.
  11. A couple of observations by MyLongNickName · · Score: 4, Insightful

    My first manager always told me that I needed better communication skills. Mostly this was because she was incompetent and couldn't keep track of her own work much less those reporting to her. In hindsight, I do not blame her, but rather the organization that promoted someone beyond what their skill set could handle.

    At the same time, I did work on my communication and organizational skills. Since then I've earned five or six promotions and get consistently high marks in both of these areas. In my twenty years of a professional career, six in management, I've learned quite a bit and learned it can be distilled into just a couple of points

    1) Know your audience.

    This is the most important aspect of communication. My direct reports have learned (and I have told them) that I trust them and only expect a minimum of communication on a daily basis. I like status reports on a daily or near daily basis that let me know if you are on track. I also want to see reports when you see things going off track. Then we can sit down, go into more detail and I can do my job of providing additional resources or a manager's voice to get cooperation. If it is urgent, see me immediately. if not, it can wait for our 1:1. I want my employees to be able to work without getting sucked into a lot of meeting, be allowed to take ownership of their projects but then leverage my position when they need it.

    But that is just me. Some managers want to be in the middle of every technical decision. While I don't agree with this management style, if that is your manager, adapt to his style. If he likes face-to-face daily, then give him the meetings. If he prefers a daily email, go that route. If he is a drop-by-meeting manager (I hate them) then keep talking points by your desk so you are ready.

    How do you learn your manager's style? If he is good, he will explicitly tell you. Most managers are not good, however and don't receive any type of training. If this is the case, I'm sure you know who his favorites in the office are. Emulate parts of their style, or explicitly ask them how they deal with the boss. Also, occasionally, ask the boss how you are doing with communication. It will help reinforce that you are trying and he will generally view that favorably. Perception is at least half of the battle on communication...

    For non-boss coworkers, communication is easier if you are already communicating well with the boss. Daily statuses on projects via email is likely the route to go. Whatever you are sending to the boss, send a similar update to your team. Develop a standard template so busy readers can scan for what they are looking for.

    2) Be Consistent

    For each of my direct reports, I created a template for our weekly 1:1's. There are 5-7 items on each that I go through. Sometimes most of the items will be "nothing to report". Others, there are lots. But by being consistent, I make sure everything is covered. I do the same for those I report to, either directly or as part of a project team. If you go the route of daily email updates, make sure they are done every time and have a consistent format. This will help you to be efficient with your time. Then make sure you follow through each day or however often you decide to. This creates a healthy habit in yourself, keeps people in the loop and reinforces the perception that you are an organized team player.

    3) Get to the Point in EMail

    Folks are busy, so spend a few minutes and think through a problem before emailing on it. When I see a long email on a subject, I immediately assume the person hasn't thought it through themselves and is looking for me to solve the problem. Don't spend three pages writing an essay. Don't go past three back and forths on an email chain. If you really need someone else to help solve something and you can't express it in two or three paragraphs, have a conversation.

    Finally, a few minor points
    * When getting an assignment, repeat it back to the person who assigned it so they can confirm. In most cases, follow

    --
    See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
  12. Lost in your work by Princeofcups · · Score: 3, Insightful

    "I'm not painfully introverted or socially inept, but I get lost in my work and only contact people if I need something from them or they ask me a question."

    The people that get the best reviews are not the ones who work the hardest. They are the ones who impress their bosses and colleagues the most. That may sound a bit cynical, but it is the painful truth. Stop working so hard. Take a breath, look around, and relax a bit. If you are feeling swamped, then you need to set expectations better. Let everyone know that you are really busy, even if you are not. Try simple small talk, like "good morning," and "going to get some coffee, you want some." Treat your boss and people in authority with casual respect, that is, not stiff, but with deference. Take more breaks and run into more people. I learned a long time ago that in IT, perception is more important than results.

    --
    The only thing worse than a Democrat is a Republican.
  13. Re:or converse rather than proselytize by Tuidjy · · Score: 4, Insightful

    I do not identify myself as an atheist. Technically, I am agnostic, because I know that there is no way to disprove the existence of an omnipotent and omniscient entity. I have no objection to people discussing their theories about such an entity, and I will even admit that some are a lot more entertaining than others. On the other hand, I hate it when people try to use their religious beliefs as arguments for or against anything in the real world. "This man has to die because he is an asshole" is a valid argument, "This man has to die because my Holy Book says the penalty for what he's done is death" is not. Thus, I am only 'unconcerned' with theism and theists as long as they do not pretend that their religious beliefs are in any way relevant to me. As soon as that line is crossed, I become, indeed, an anti-theist.

    That said, could you please explain why the Atheist League should be called the Antichrist league, as opposed to the Anti-Kali, Anti-Mohammedan, or Anti-Pastafarian league? Sure, there are tons of different sects that profess the divinity of Christ - Catholics, Eastern Orthodox, Protestants, Mormons, members of the Unification Church, etc... But there are also a lot of sects that do not consider Christ divine, and frankly, I feel a lot more threatened by some of the latter.

    The guys who keep trying to bring me to Christ on the streets of Glendora are polite, clean, and well dressed. They bother me a lot less than people who think that I could be killed without spilling blood to fuel a religious rite, that I should pay higher taxes because I am an unbeliever, or that mocking their fairy tales is a capital offense.

    So, again, why should people identify as antichrists, instead of atheists if they have no more beef with Christians than they have with other, less... grown-up theists?

    --
    No good deed goes unpunished...
  14. If people think I suck, I do indeed suck by raymorris · · Score: 4, Insightful

    > > Understand the people you're working with, what they need, and provide that.

    > Worrying about what people think ... then you are still going through puberty and all the pubescent insecurity that entails.

    I've said things like that before. Every so often, I have to remind myself of the following:

    If your customers think you suck, you do indeed suck. You may have provided them with a wonderful solution to problem X, but since you didn't listen and ask questions you didn't know their problem was Y. For the problem at hand, your solution sucks, and your poor communication caused it.

    If you don't "worry about what people think" when it comes to your boss, you'll not know she thinks it's critically important that your application is very easy to use because the old farts in the C suite will be the primary users. Lack of communication = suck, for the purpose at hand.

    If the people report to you think you suck, they'll leave, after having no interest in getting your projects done and probably bad mouthing you (accurately). Again, the results suck because you're only interested in what you think.

    Being interested in what other people think, need, and want is the first requirement for a successful project. Not paying due attention to what other people think makes you an arrogant asshole.