Remix.run Logo
mike_hearn 3 days ago

> If the Google culture was at all obsessed about helping users, I wonder why Google UX always sucked so much and in particularly in the recent years seem to be getting even worse.

There was no beancounter takeover and it never was so obsessed. I worked there from 2006-2014 in engineering roles and found this statement was particularly jarring: "User obsession means spending time in support tickets, talking to users, watching users struggle, asking “why” until you hit bedrock"

When I worked on user facing stuff (Maps, Gmail, Accounts) I regularly read the public user support forums and ticket queues looking for complaints, sometimes I even took part in user threads to get more information. What I learned was:

• Almost nobody else in engineering did this.

• I was considered weird for doing it.

• It was viewed negatively by managers and promo committees.

• An engineer talking directly to users was considered especially weird and problematic.

• The products did always have serious bugs that had escaped QA and monitoring.

In theory there were staff paid to monitor these forums, but in practice the eng managers paid little attention to them - think "user voice" reports once a quarter, that sort of thing. Partly that's because they weren't technical and often struggled to work out whether a user complaint was just noise or due to a genuine bug in the product, something often obvious to an engineer, so stuff didn't get escalated properly.

This general disconnection from the outside world was pervasive. When I joined the abuse team in 2010 I was surprised to discover that despite it having existed for many years, only one engineer was bothering to read spammer forums where they talked to each other, and he was also brand new to the team. He gave me his logins and we quickly discovered spammers had found bugs in the accounts web servers they were using to blow past the antispam controls, without this being visible from any monitoring on our side. We learned many other useful things by doing this kind of "abuser research". But it was, again, very unusual. The team until that point had been dominated by ML-heads who just wanted to use it as a testing ground for model training.

avidiax 3 days ago | parent | next [-]

Every previous job I've had has a similar pattern. The engineer is not supposed to engage directly with the customer.

I think there are multiple reasons for this, but they are mostly overlapping with preserving internal power structures.

PM's don't want anecdotal user evidence that their vision of the product is incomplete.

Engineering managers don't want user feedback to undermine perception of quality and derail "impactful" work that's already planned.

Customer relations (or the support team, user study, whatever team actually should listen to the user directly) doesn't want you doing their job better than they can (with your intimate engineering and product knowledge). And they don't want you to undermine the "themes" or "sentiment" that they present to leadership.

Legal doesn't want you admitting publicly that there could be any flaw in the product.

Edit: I should add that this happens even internally for internal products. You, as a customer, are not allowed to talk to an engineer on the internal product. You have to fill a bug report or a form and wait for their PMs to review and prioritize. It does keep you from disturbing their engineers, but this kind of process only exists on products that have a history of high incoming bug rate.

martinpw 3 days ago | parent | next [-]

Engineers have a perception that most other roles are lesser and if only they were allowed to be in charge things would go better. I certainly used to be this way. When I was an engineer I used to regularly engage directly with customers, and it was great to be able to talk with them one to one, address their specific issues and feel I was making a difference, particularly on a large product with many customers where you do not normally get to hear from customers much. Of course once these customers had my ear, the feature requests started to flow thick and fast, and I ended up spending way too much time on their specific issues. Which is just to say that I've changed my views over time.

In retrospect, the customers I helped were ones that had the most interesting problems to me, that I knew I could solve, but they were usually not the changes that would have the biggest impact across the whole customer base. By fixing a couple of customers' specific issues, I was making their lives better for sure, and that felt good, but that time could have been used more effectively for the overall customer base. PMs, managers etc should have a wider view of product needs, and it is their job to prioritize the work having that fuller context. Much as I felt at the time that those roles added little value, that was really not true.

Of course agreed that all the points made above for PMs, managers, support having their reasons to obstruct are true in some cases, but for a well run company where those roles really do their job (and contrary to popular opinion those companies do exist), things work better if engineers do not get too involved with individual customers. I guess Google might be a good example - if you have a billion customers you probably don't want the engineers to be talking to them 1:1.

palata 3 days ago | parent | next [-]

> Engineers have a perception that most other roles are lesser

Do they? I always felt I was at the bottom of the chain. "Moving up" means leaving engineering and going into management.

> and if only they were allowed to be in charge things would go better.

Could this be an oversimplification? Engineers understand how the product is built because they are the ones building it. And sometimes they are exposed to what other people (e.g. product people) have decided, and they know a better way.

As an engineer, I am always fine if a product person listens to my saying that "doing it this way would be superior from my point of view", somehow manage to prove to me that they understood my points, but tell me that they will still go a different direction because there are other constraints.

Now I have had many product people in my career who I found condescending: they would just dismiss my opinion by saying "you don't know because you don't have all the information I have, and I don't have time to convince you, so I will just go for what you see as an inferior way and leave you frustrated". Which I believe is wrong.

Overall, I don't make a hierarchy of roles: if I feel like someone is in my team, I play with them. If I feel like they are an adversary, I play against them. I don't feel like I am superior to bad managers or bad product people; I just feel like they are adversaries.

wood_spirit 3 days ago | parent | prev | next [-]

It’s oblique but this puts me in mind of an old adage I recently heard about war: Of 100 men, one should be a warrior, nine should be soldiers, and 90 shouldn't be there at all.

I think this is true of software developers too: only in companies, the 90% don’t really know they shouldn’t be there and they build a whole world of systems and projects that is parallel to what the company actually needs.

librasteve 3 days ago | parent [-]

this

and I speak as one of the 90%

Rapzid 3 days ago | parent | prev | next [-]

This reads like it was written by a PM. You lacked higher level context and prioritization skills early in your career so the take away is it's best to divest agency to others?

There is a whole modern line of thinking that leaders should be providing the context and skills to give high performing teams MORE agency over their work streams.

avidiax 3 days ago | parent | next [-]

I think he has a point. These power structures exist for some good reasons as well.

The opposite thing (engineers engaging directly with customers) can eventually lead to customer capture of your engineering org. You shouldn't have a small group of existing, noisy customers directly driving your engineering to the detriment of other existing or future customers.

Microsoft had customer capture institutionally: the existing big corporate customers were all that mattered. It lead to rebooting Windows CE into Windows Mobile way too late to make a difference, for example. But it also meant that backwards compatibility and the desire to ship Windows XP forever were sacred cows.

There are also nasty games that can be played by soliciting negative feedback for political advantage.

Dysfunction can exist with any structure. It's probably best that there's some small amount of direct user feedback as well as the big formalized feedback systems, at least so that one is a check for the performance of the other. If the user engagement team says everything is good, but there are massive Reddit threads about how horrible the product is to work with and the engineers know it could be better, it's time for engineering to start addressing the issues alongside feedback to the user engagement teams.

majormajor 3 days ago | parent | prev [-]

There's not enough hours in the day for everyone to do everything.

> There is a whole modern line of thinking that leaders should be providing the context and skills to give high performing teams MORE agency over their work streams.

Yes, this is great for agency over implementation, because leaders do not have context to decide and dictate the What/How of implementing every single change or solution to a problem. And the implementers need to know the context to ensure they make decisions consistent with that context.

But "leaders providing the context" is very different from "everyone researching the context on their own." So where are leaders getting this context from? A not-very-differentiated pile of 1000 generalist engineers-who-also-talk-to-customers-frequently-and-manage-their-own-work-streams? Or do they build a team with specialists to avoid needing the majority of people to constantly context-switch in a quest to be all of context-gatherers, work-prioritizers, market-researchers, and implementation-builders?

andrewprock 3 days ago | parent | next [-]

There are many leaders that use information as a tool that serves their own needs.

They may have the context, but they are either too focused on their own job to share it, or actively manage dissemination so they can manipulate the organization.

In my experience, this is the typical operating mode, though I do not think it is sinister or malicious - just natural.

Rapzid 3 days ago | parent | prev [-]

Poor leaders gonna lead poorly.

mike_hearn 3 days ago | parent | prev | next [-]

Agree that this can be an issue but to clarify, I was finding bugs or missed outages, not gathering feature requests or trying to do product dev. Think "I clicked the button and got a 500 Server Error". I don't think random devs should try and decide what features to work on by reading user forums - having PMs decide that does make sense as long as the PM is good. However, big tech PMs too often abstract the user base behind metrics and data, and can miss obvious/embarrassing bugs that don't show up in those feeds. The ground truth is still whether users are complaining. Eng can skip complaints about missing features/UI redesigns or whatever, but complaints about broken stuff in prod needs their attention.

mixmastamyk 3 days ago | parent | prev | next [-]

An org can always go too far in the opposite direction, but this is not an excuse to never talk to the customer. The latter is much more likely, so the warning to not get “into bed” with the customer falls flat.

This is a common pattern here. Alice says 0 degrees is too cold, I prefer 20C, Bob chimes in “100C is too hot, it’ll kill us.” Ok, well no one said or implied to crank it to one hundred.

liveoneggs 3 days ago | parent | prev [-]

every customer complaint is N customers lost who don't say anything

"the biggest impact" isn't knowable so a bird in hand is worth more than whatever might be in the bush

majormajor 3 days ago | parent [-]

If you have M customer complaints, and each one risks a differently-sized N customers... you better try to triage that vs just playing whack-a-mole with whatever comes to a random engineer first. I've never seen engineers plow through a bunch of 0-or-1-customers-would-actually-churn-over-this papercuts because it was easy and it feels good - the customer mentioned it! i fixed it! - while ignoring larger showstoppers that are major customer acquisition and retention barriers.

Nothing is knowable in only the same way that plans are useless but planning is essential.

jordwest 3 days ago | parent | prev | next [-]

> Every previous job I've had has a similar pattern. The engineer is not supposed to engage directly with the customer.

Chiming in to say I’ve experienced the same.

A coworker who became a good friend ended up on a PIP and subsequently fired for “not performing” soon after he helped build a non technical team a small tool that really helped them do their job quicker. He wasn’t doing exactly as he was told and I guess that’s considered not performing.

Coincidentally the person who pushed for him to be fired was an ex-Google middle manager.

I’ve also seen so commonly this weird stigma around engineers as if we’re considered a bit unintelligent when it comes to what users want.

Maybe there is something to higher ups having some more knowledge of the business processes and the bigger picture, but I’m not convinced that it isn’t also largely because of insecurity and power issues.

If you do something successful that your manager didn’t think of and your manager is insecure about their own abilities, good chance they’ll feel threatened.

imperio59 3 days ago | parent | prev | next [-]

The sad thing is it doesn't have to be this way.

I worked on an internal tools team for a few years and we empowered engineers to fix user issues and do user support on internal support groups directly.

We also had PMs who helped drive long term vision and strategy who were also actively engaging directly with users.

We had a "User Research" team whose job it was to compile surveys and get broader trends, do user studies that went deep into specific areas (engineers were always invited to attend live and ask users more questions or watch raw recordings, or they could just consume the end reports).

Everyone was a team working together towards the same goal of making these tools the best for our internal audience.

It wasn't perfect and it always broke down when people wanted to become gatekeepers or this or that, or were vying for control or power over our teams or product. Thankfully our leadership over the long term tended to weed those folks out and get rid of them one way or another, so we've had a decent core group of mid-level and senior eng who have stuck around as a result for a good 3 years (a long time to keep a core group engaged and retained working on the same thing), which is great for having good institutional knowledge about how everything works...

azangru 3 days ago | parent | prev | next [-]

> The engineer is not supposed to engage directly with the customer.

I don't know if companies have finally stopped pretending to be "agile"; but if not, this is such a clear demonstration of how they are anything but.

globalnode 3 days ago | parent | prev | next [-]

Theres another thread on HN at the moment about legislation being written by industry and rubber stamped by law makers. What hit me about this discussion and that one is that there's a lot of self interest out there with very little scrutiny or auditing. It boils down to that basically. If we want to fix problems at the top there needs to be independent auditing, reporting and consequence for people that do the wrong thing. But we all know thats not going to happen so buckle up and learn to live with broken laws and broken software.

dawnerd 3 days ago | parent | prev | next [-]

Where I work we regularly bring in engineers to talk to clients directly. Clears up a lot of confusion when there’s something technical a PM wouldn’t understand. We still like to have a filter so a client isn’t trying to get the engineer to do free work. Having engineering isolated is pretty bad IMO.

majormajor 3 days ago | parent | prev [-]

There are very good less-cynical reasons. I've also seen companies with the opposite problem, where the engineers constantly shoot down real, important feedback brought by customer support in order to preserve the superiority of engineering over support.

If you have ten engineers and even just 100 customers, you have a very high number of conversational edges. Good luck keeping things consistent and doing any sort of long-term planning if engineers are turning the output of those conversations directly into features. "Engineers talking to customers but not making any changes" would be more stable, but is still a very expensive/chaotic way to gather customer feedback.

Additionally, very few of those single engineers have a full knowledge of the roadmap and/or the ability to unilaterally decide direction based on some of the customer feedback or questions. "Will this get fixed in the next two weeks?" "Will you build X?" etc. You don't want your customers getting a bunch of inconsistent broken promises or wrong information.

The best-managed orgs I've seen have pretty heavy engineering and user experience in their product and support orgs. You need people in those roles with knowledge of both how it's built AND how it should be used, but you can't continually cram all that knowledge into every single engineer.

A startup should start with the builders talking directly to the customers. But at a some point, if successful, you're going to have too many people to talk to and need to add some intermediaries to prevent all your engineering time going to random interrupts, and centralization of planning responsibilities to ensure someone's figuring out what's actually the most important feedback, and that people are going to work on it.

andrewprock 3 days ago | parent [-]

On the contrary, the best products are typically built by the users of the products. If you are building a product you don't use, it will be worse than if you used it.

Users should be everywhere, in and out of engineering.

moffkalast 3 days ago | parent | prev | next [-]

> User obsession means spending time in support tickets

That's really funny when Google's level of customer support is known to be non-existent unless you're popular on Twitter or HN and you can scream loudly enough to reach someone in a position to do something.

beloch 3 days ago | parent | prev | next [-]

"10. In a large company, countless variables are outside your control - organizational changes, management decisions, market shifts, product pivots. Dwelling on these creates anxiety without agency.

The engineers who stay sane and effective zero in on their sphere of influence. You can’t control whether a reorg happens. You can control the quality of your work, how you respond, and what you learn. When faced with uncertainty, break problems into pieces and identify the specific actions available to you.

This isn’t passive acceptance but it is strategic focus. Energy spent on what you can’t change is energy stolen from what you can."

------------------------

Point 10 makes it sound like the culture at Google is to stay within your own bailiwick and not step on other people's toes. If management sets a course that is hostile to users and their interests, the "sane and effective" engineers stay in their own lane. In terms of a company providing services to users, is that really being effective?

User interests frequently cross multiple bailiwicks and bash heads with management direction. If the Google mindset is that engineers who listen to users are "weird" or not "sane"/"effective", that certainly explains a lot.

multjoy 3 days ago | parent | prev | next [-]

It is an almost universal fact that dealing with retail customers is something that is left to the lowest paid, lowest status workers and often outsourced and now increasingly left to LLM chatbots.

While you obviously can't have highly paid engineers tied up dealing with user support tickets, there is a lot to be said for at least some exposure to the coal face.

eviks 3 days ago | parent [-]

> While you obviously can't have highly paid engineers tied up dealing with user support tickets,

You obviously can, that's one of the more visceral way to make them aware of the pain they cause to real people with their work, which sticks better, or simply serves as a reminder there are humans on the other side. There are even examples of higher paid CEOs engaging, we can see some of that on social media

agumonkey 3 days ago | parent | prev | next [-]

I love reading this insights in a corp structure. Especially the sociological aspect of it (like "• It was viewed negatively by managers and promo committees."). Thanks a lot.

jedberg 3 days ago | parent | prev | next [-]

> only one engineer was bothering to read spammer forums where they talked to each other, and he was also brand new to the team

This revelation is utterly shocking to me. That's like anti-abuse 101. You infiltrate their networks and then track their behavior using your own monitoring to find the holes in your observability. Even in 2010 that was anti-abuse 101. Or at least I think it was, maybe my team at eBay/PayPal was just way ahead of the curve.

mike_hearn 3 days ago | parent [-]

Well, the 101 idiom comes from US education, it's a reference to the introductory course. Part of the problem with anti-abuse work is that there's no course you can take and precious little inter-firm job hopping. Anti-abuse is a cost of business so you don't see companies competing over employees with experience like you do in some other areas like AI research. So it's all learning-by-doing and when people leave, the experience usually leaves with them.

After leaving Google the anti-abuse teams at a few other tech companies did reach out. There was absolutely no consistency at all. Companies varied hugely in how much effort and skill they applied to the problem, even within the same markets. For payment fraud there is a lot of money at stake so I'd expect eBay would have had a good team, but most products at Google didn't lose money directly if there was abuse. It just led to a general worsening of the UX in ways that were hard to summarize in metrics.

jeffbee 3 days ago | parent [-]

I seem to recall sitting in weekly abuse team meetings where one of the metrics was the price of a google account on the black market. So at least some of these things were tracked and not just by one individual.

mike_hearn 3 days ago | parent [-]

Yes, I think me and the other guy I referred to started that practice ;)

damethos 3 days ago | parent | prev | next [-]

Hey Mike! Alex from GR here. Good to see you around :)

abex3000 3 days ago | parent | prev | next [-]

>What I learned was:

>• Almost nobody else in engineering did this.

>• I was considered weird for doing it.

>• It was viewed negatively by managers and promo committees.

>• An engineer talking directly to users was considered especially weird and problematic.

>• The products did always have serious bugs that had escaped QA and monitoring

Sincerely, thank you for confirming my anecdotal but long-standing observations. My go-to joke about this is that Google employees are officially banned from even visiting user forums. Because otherwise, there is no other logical explanation why there are 10+ year old threads where users are reporting the same issue over and over again, etc.

Good engineering in big tech companies (I work for one, too) has evaporated and turned into Promotion Driven Development.

In my case: write shitty code, cut corners, accumulate tech debt, ship fast, get promo, move on.

fooker 3 days ago | parent | prev | next [-]

The beancounter takeover was after you left.

2014 Google and 2019 Google were completely different companies.

zelphirkalt 3 days ago | parent | prev | next [-]

If an engineer talking to users is considered problematic, then it is safe to assume, that Google is about as fast away from any actually agile culture as possible. Does Google ever describe itself as such?

polynomial 3 days ago | parent [-]

"data-driven agile"™

abustamam 3 days ago | parent | prev | next [-]

Having only ever worked for startups or consulting agencies, this is really weird to me. Across 6 different companies I almost always interfaced directly with the users of the apps I built to understand their pain points, bugs, etc. And I've always ever been an IC. I think it's a great way to build empathy for the users of your apps.

Of course, if you're a multi billion dollar conglomerate, empathy for users only exists as far as it benefits the bottom line.

hansmayer 3 days ago | parent | prev | next [-]

Thanks for sharing your valuable insights. I am quite surprised to learn that talking to customers was frowned upon at Google (or your wider team at least). I find that the single most valuable addition to any project - complementary to actually building the product. I have a feeling a lot of the overall degradation of software quality has to do with a gradual creep in of non-technical people into development teams.

p1esk 3 days ago | parent | prev [-]

Almost nobody else in engineering did this.

What you described is the job of a product manager. Are there no PMs at Google?

Xorlev 3 days ago | parent | next [-]

There are, and often times they're stuck in a loop of presenting decks and status, writing proposals rather than doing this kind of research.

That said, interpreting user feedback is a multi-role job. PMs, UX, and Eng should be doing so. Everyone has their strengths.

One of the most interesting things I've had a chance to be a part of is watching UX studies. They take a mock (or an alpha version) and put it in front of an external volunteer and let them work through it. Usually PM, UX, and Eng are watching the stream and taking notes.

javawizard 3 days ago | parent | prev | next [-]

Xoogler here.

When you get to a company that's that big, the roles are much more finely specialized.

I forget the title now, but we had someone who interfaced with our team and did the whole "talk to customers" thing. Her feedback was then incorporated into our day-to-day roadmap through a complex series of people that ended with our team's product manager.

So people at Google do indeed do this, they just aren't engineers, usually aren't product managers, frequently are several layers removed from engineers, and as a consequence usually have all the problems GP described.

stefan_ 3 days ago | parent | prev [-]

PM is a fake job where the majority have long learned that they can simply (1) appease leadership and (2) push down on engineering to advance their career. You will notice this does not actually involve understanding or learning about products.

It's why the GP got that confused reaction about reading user reports. Talk to someone outside big company who has no power? Why?

kmoser 3 days ago | parent | next [-]

I've had the pleasant experience of having worked for PMs at several companies (not at Google) who were great at their jobs, and advocated for the devs. They also had no problem with devs talking directly with clients, and in fact they encouraged it since it was usually the fastest way to understand and solve a problem.

lovich 3 days ago | parent | prev | next [-]

Almost every job in the US is primarily about pleasing leadership at the end of the day.

If companies didn’t want that sort of incentive structure to play out then they would insulate employees from the whims of their bosses with things like contracts or golden parachutes that come out of their leaderships budget.

They pretty much don’t though, so you need to please your leadership first to get through the threat of at will employment, before considering anything else.

If you’re lucky what pleases your leadership is productive and if your super lucky what pleases them even pleases you.

Gotta suck it up and eat shit or quit if it doesn’t though

potatoproduct 3 days ago | parent | prev [-]

Sounds like you just got stuck with a shit PM to be honest.