0

Effective Communication for Engineers - More Please

Profile picture
Senior Software Engineer at Taro Community3 months ago

Just watched this short course before work today, and found it very relevant. I'm a veteran developer. I'd like more content and wisdom on how to have the confidence to ask questions so I can onboard effectively when there is a steep power imbalance. I'm feeling pretty exposed in a new position as the information I need to get a solid foundation is not readily available, and my leaders technical writing is so brief as to be unusable for new starters (its expert writing for experts, not expert writing for the less knowledgable).

I know you said if you went into more detail it would be 20 hours, but seriously, that would be extremely valuable content for me.

The difference between a great place to work and a mediocre place to work is often the quality and willingness to of colleagues both senior and junior to communicate and share. The worst places are when colleagues on the same team don't really work together on problems and only communicate through PRs. Such feedback is too late IMHO and leads to waste and low motivation.

58
2

Discussion

(2 comments)
  • 1
    Profile picture
    Senior Software Engineer
    3 months ago

    I would suggest:

    • When working remotely and using communication tools like Slack or Teams: No hello! If you need something from someone, please go to the point directly. It's nice if you want to greet, but please don't greet and wait the answer, you could greet and include what you need at the same time. More about this: https://nohello.net/
    • Use video calls wisely: If possible, use chat as first option when possible. Ask yourself if a video call is really necessary. We are busy, and it's easier to respond a message than stop what we are doing, and enter to a video call just to answer something that could be a message or an email.
    • Take notes: if you ask for something, it's possible that it will be a recurrent question, so make sure that you take notes about the answer, so the next time you can check your notes. Bonus: If is a recurrent question across your team or organization, making a documentation could be a good way to address this. From a FAQ to onboarding or setup projects, depending the nature of the question.
    • Before asking: Depending on the context, it would be a good idea to do an effort trying to solve OR trying to understand what is happening, so when you ask your question, you could include what have you done. This is something that I like to do when a junior asks me something. Depending on the context, I usually answer: What have you tried so far? or what do you think? so I can transmit the mental process when you are facing something unknown. But yeah, this is contextual.

    More tips:

    • On my personal experience, when I have an onboarding, I learn faster by doing a small ticket or change, something relatively easy so someone that is starting can solve.
    • If possible, propose to do a pair programming. If is not possible because any reason, propose shadowing with another developer while is doing a task.
    • Transparency and honesty is cool: Sharing how you are feeling it's desirable and opens the communication with your team. Like in a relationship, if there is not a good communication, the problems will come.

    While this is something that have worked for me, I'm always open to feedback from the community

  • 1
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    3 months ago

    I'm so glad you liked the course - I'm literally working on an incredibly in-depth course about how to ask questions effectively right now!

    When it comes to crappy technical writing and documentation, my advice is to be the change you want to see. In general, I initially assume good intent: A lot of folks have bad, esoteric technical writing and communication because they don't know any better (and it is very easy to be in an ivory tower and not realize it). Do your best to set the example with stellar technical writing of your own and hope that spreads.

    One thing I will say though is that documentation in particular is often bad at top tech companies by design (so many wikis at Meta were outdated and messy). At a top company, the codebase will change lightning fast so it's unsustainable to keep wikis explaining how it works up to date.

    The ideal "antidote" to bad documentation is to do the organic thing and talk to your teammates. Onboarding engineers should have ample 1 on 1s and strive to build trust fast: [Masterclass] How To Build Deep Relationships Quickly In Tech