Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Newsletter: How to communicate like a product engineer #10847

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

ivanagas
Copy link
Contributor

@ivanagas ivanagas commented Mar 5, 2025

Changes

Rough-ish draft

Would love high level feedback for now:

  • What's good
  • What's bad
  • What's missing

Checklist

  • Words are spelled using American English
  • Titles are in sentence case
  • Feature names are in sentence case too
  • Use relative URLs for internal links

Article checklist

  • I've added (at least) 3-5 internal links to this new article
  • I've added keywords for this page to the rank tracker in Ahrefs
  • I've checked the preview build of the article
  • The date on the article is today's date
  • I've added this to the relevant "Tutorials and guides" docs page (if applicable)

@ivanagas ivanagas requested review from daniloc and andyvan-ph March 5, 2025 03:13
Copy link

vercel bot commented Mar 5, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Updated (UTC)
posthog ✅ Ready (Inspect) Visit Preview Mar 12, 2025 5:36pm

Copy link
Contributor

@andyvan-ph andyvan-ph left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's good?

  • I like the focus on user-centric comms right at the start. We could probably go harder on that point.

  • I like the framing of we're sharing how we work and how it's not about frameworks etc. All the core points are good, though I think it's a little thin on specifics in some places – see inline comments.

What's bad?

Not so much bad, but I wonder if a Dos and Don'ts-style format might give this a bit more edge?

Atm, it's mostly about about what you should do and it's all pretty uncontroversial, but often the things we don't like / you should avoid are more interesting.

Like, this line really slaps:

"The opposite of this is just saying “this isn’t working” or “what do you think of this?” Low context communication like this puts all of the work onto the receiver, leaves more room for ambiguity, and is simply less effective.

But it's relegated to a footnote to the section.

The closest example of what I mean is one Charles did ages ago, where we did it with alternating truths and myths.

Would something like this but it's Dos and Don'ts work?

(Mental note: that's a good article we could update for the newsletter!)

Alternatively, maybe the format could "Avoid XYZ" where XYZ is a common bad communication habit, then we outline "Do this instead"?

What's missing?

  • An ending, but I assume that's because it's a draft.

- One change needing a review
- One general team announcement

This focus on information from users really sets product engineers apart from more traditional software engineering teams.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like I need more here. The graphic alone is very dense, it's hard to grok your meaning without doing a lot of work. A summary would help.


1. **All hands.** Where the most important updates are shared with the team. Q&A with James and Tim. Demos of what anyone built in the last week.

2. **Sprint planning.** A [bi-weekly review](https://github.com/PostHog/posthog/issues/28840) combination of retrospective and planning done by each team.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bi-weekly as in every two weeks, I assume? I always get confused by this.

Comment on lines 97 to 105
1. **All hands.** Where the most important updates are shared with the team. Q&A with James and Tim. Demos of what anyone built in the last week.

2. **Sprint planning.** A [bi-weekly review](https://github.com/PostHog/posthog/issues/28840) combination of retrospective and planning done by each team.

3. **Daily huddles.** Within small teams, each member shares what they did yesterday, what you’re doing today, and gets any support they need.

4. **Request for comments.** A large document related to a big decision that shares a problem, a potential solution, and gathers feedback. This is how we coordinate big problems across teams.

5. **Incidents.** When something bad and unexpected happens, anyone can start an incident where a channel is created, the problem is identified, and the team works towards a solution.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I'd like a little more detail on all of these. Maybe expand this section?

@ivanagas ivanagas requested a review from andyvan-ph March 11, 2025 20:26
@ivanagas
Copy link
Contributor Author

Alright updated to "Communication mistakes for engineers to avoid" to try to give it a bit more ZING + addressed your points

Still haven't figured out the conclusion though...

@daniloc
Copy link
Contributor

daniloc commented Mar 12, 2025

A thought on concluding:

if the headline frame is "here's what you're avoiding" then the conclusion could be framed affirmatively: here's what you become for avoiding such things.

Clear the table – things to avoid – then set the table with a picture of what you become?

@andyvan-ph
Copy link
Contributor

Some more random thoughts:

  • I feel like we could do with some really useful / good tips on written communication. Currently this has lots of good principles, but I'm not sure what someone would takeaway and say "I'll try doing this". Lior did this well in the issue about feedback: https://newsletter.posthog.com/p/why-you-suck-at-giving-feedback

  • As an example, could we pull together some hypothetical or real examples of "here's some bad communication" and "here's a better version" that contains the same information, but organized in a better way with all the context etc. someone would need to take action.

  • I'm always a bit suspicious of articles with 5 points. What other things could we highlight here? Random ideas:

    • Not being opinionated... I think there's something in this about how non-opinionated comms creates inertia. Can talking about "strong opinions, weakly held" here.
    • Lack of honesty about feelings... if something is bugging you, you should get it out rather than holding onto it
    • Not communicating urgency... e.g. I need this right now vs not so urgent but still important, etc.


2. **It's backed by a user experience.** We build features because users want them and their specific needs often guide our implementation. The experiences of users are often our best guide when we're deciding what to work on or how to implement it.

![Facts](https://res.cloudinary.com/dmukukwp6/image/upload/Clean_Shot_2025_03_11_at_10_43_31_2x_9726c09b98.png)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this meme feels a bit too intense / obscure to me


To give you a sense of what this actually looks like, a snapshot of the last 10 Slack messages in our `#team-product-analytics` channel include:

- Two bugs from support
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe we could elevate this a bit by showing this as a pie chart? could even a bit of an analysis of week of messages to break them down?

outcome would be a breakdown of percentage for types of comms, and how much of them were about customers.


## 2. Hiding communication in private

There is an old way of thinking that if you keep knowledge to yourself, you'll have more power. In well-functioning organizations, this doesn't work. It leads to silos and confusion. You don't need to hoard information, you're not a squirrel.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could be more explicit here and add some examples of how people do this, both deliberately and accidentally.

Comment on lines +89 to +93
1. **Data.** Messages often include the link to the query, insight, dashboard, or error trace. Say what metric you care about.

2. **Feedback.** A common sentence we see at PostHog is “X gave feedback that…” followed by a potential solution for that feedback.

3. **Experience.** We care about what the end user experience actually is. Examples and anecdotes from users are hugely valuable.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this feels like one point that would really benefit from examples – e.g. one good and one bad example perhaps?


This gives our communication further bang for its buck. It has helped us build a brand and trust with our users.

We realize this brand of external openness doesn't work for everyone, but that doesn't mean you need to hide information. Companies like Palantir, Pixar, and Apple are all secretive externally, but have internal openness. This has helped them build the massively successful companies they are today.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would like to hear more about these examples if possible. how do openness internally?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants