Google’s product strategy: Make two of everything
arstechnica.com
arstechnica.com
What was most frustrating is that the decisions did not seem to be motivated by product superiority. The "winner" was not a better product, or at least this was not demonstrated. Instead the decisions were driven by whichever product better aligned with the internal political winds this week, such as the tension between the Nexus partner model vs the Pixel in-house model. These "strategy shifts" were often preceded by senior leadership shakeups, which were themselves frequent.
It was hard to escape the conclusion that the quality of my work was irrelevant. It was demoralizing.
For context, this answer on Quora[1] suggests that the product team does not report to the product manager and don't have to do anything they say, so the product manager has to convince people if she wants to get things done.
1: https://www.quora.com/What-makes-someone-a-great-product-man...
At Google, pretty much any of the engineers can go and get a job at another company whenever they want. So they tend to have access to internal mobility; Google would rather let them fill a different job at the company than have them quit. Thus, managers (either engineering managers or product managers) don't have a lot of coercive capability.
The path to success is to not be a manager who forces people to do your bidding, it is to be a leader who persuades your colleagues of your vision. At times the tool of command can be used, but it's best used lightly.
My goal is to be service-oriented: my job as a manager is to help my engineers be super-successful, and one of the ways I try to do that is by finding paths for the organization to build great software and leading my team and other teams to cooperating to build it.
For example, let's say there's a list of ideas and suggestions for new functionality and fixes for a product - How does it get prioritised? By consensus?
I can't help thinking that there's a risk that the priorities end up being the stuff that the engineers are most interested in working on - i.e. interesting problems and challenges get picked up enthusiastically, while boring, tedious bugs or usability fixes languish unresolved because nobody's particularly interested or enthused in spending time on them, when there's far more interesting/fun stuff to do.
As to how decisions get made: it varies. Sometimes there's some consensus, and sometimes management / executives make decisions without seeking feedback or even going against the input of the team. But it's then incumbent upon them to persuade and lead the org; if they do this poorly, they don't tend to be as successful in the medium or long term.
Again, Google isn't remarkable in this fashion, even if it's possibly something of an outlier: in any field of endeavor, you'll be more successful if you can persuade people to want to contribute to your mission rather than forcing them to do it. [Cue up the Antoine de Saint-Exupery quote re: longing for the endless immensity of the sea.]
This is a consequence of bad internal economics and incentives. Google PMs and engineers are incentivized to create new products and ship them by quarterly deadlines (perf/promo cycles) rather than align their teams towards a cohesive user experience. Thinking this way would occasionally cause teams to, gasp, not build a product they wanted to build. Everyone needs to ship something, ideally something new. After all, you don't get promoted for deciding not to build something. I've seen awful products/implementations go out the door and get killed or reimplemented soon thereafter. And people still list these as "achievements" on promotion packets (and they get promoted despite the product failing!).
The company is kind of trying to address this by changing promotion criteria, but it's culturally ingrained and won't change for some time.
Is this why Google announces sweeping changes every year at i/o and redesigns the Android UI every single year?
eg. use the dedicated search button on the phone, btw this button no longer exists, respond to the menu button, btw this button no longer exists, put menus at the top, put menus at the bottom, use hamburger menus, don't use them, use swipe navigation, use swipe navigation if it fits with your app, do things to ENCHANT and DELIGHT the user. According to the UI guidelines, clicking a button should cause the user to burst into tears of joy due to the delightful experience they have just had.
Is it because they need to appear to be producing new things all the time? If so, it'd also explain why some products get released to much fanfare (and applause from the BBC Technology news team it seems) and then get no updates, maintenance and get binned a few years later. (Many examples of this). The most annoying of these was the Talk replacement for Android (Hangouts) which got rid of features of Talk and still has an abysmal tablet interface and general bugginess ("Did you not get my call???" "No").
I am not meaning to be overly critical, but the constant change for the sake of change is wearying. I have been using Android since the G1 and every i/o they have redesigned the interface. The examples of "bad UI" and "bad text" are all from their own older versions of Android. It makes you wish they'd make their mind up.
I would love to know how many years of support does qualcomm guaranteed for their chipset driver updates. I remember reading this was an issue for Google updating the Galaxy Nexus.
The fact that things move around so much would be indicative of not being really sure how it should look (despite the UI guidelines), perhaps? If I was buying a car and the next version of the car the next year moved the dials to the other side of the dashboard or swapped whether the indicator stalk was on the right or the left of the steering wheel, you'd ask what the heck was going on. Yet this appears to be normal for Android.
I would love to blame my phone manufacturer for not getting updates, apart from Android was started with the Open Handset Alliance. It doesn't appear to be much of an alliance to me.
It's a daft situation. If you bought a laptop and could only install hotfixes and KB releases via Dell, yet Dell did not give them to you, would you be happy with Microsoft? Would you take their advice to just buy a Surface Pro from them? That would be unrealistic because it would ignore the massive market that is Wintel devices; rather you would expect Microsoft to only provide Windows to Dell if they agreed to provide hotfixes Microsoft gave them.
If you had a MacBook Pro and El Capitan would not run on it, yet you were aware of all the security holes in Mavericks and some in Yosemite, would you accept advice to just buy a new MacBook to get security fixes? Or would you expect Apple to backport fixes when they know that a sizeable percentage of customers are connecting to their App Store with older versions, given your purchase fee of the hardware?
The solution to not getting updates for a device is not to buy a new device.
Google boasts how many devices they have all over the world (see last year's io keynote) and how Android is everywhere, yet it failed to mention the important point about Android being everywhere: that it is insecure outdated Android that is everywhere.
Google know how many people are connecting with older versions (the Play dashboard tells you what percentage is running which version), so they should push out updates or mandate in their agreement with phone manufacturers that a timely update cycle should be followed, or the agreement would be terminated. There would be no other way to keep control or maintain a high standard.
I say this with a plethora of Android devices and with my dayjob of writing Android apps. It is a rubbish situation for security.
If so, they have access to a central repository - Google. Google could just refuse to give them the OS with Google apps unless the manufacturer/carrier pushed out updates. It would be in both party's interests to agree to do this - Google because it would stem the tide of insecure phones and the stench of dodgy apps being prevalent even in the official market; and for the phone manufacturer, updates and apps, and happy customers.
At this rate I am not going to get another Sony, that's for sure.
Google is slowly breaking up the OS into applications that it can distribute in the app store which smells a lot like someone trying to get around a contractual obligation using a technicality. There are legal agreements between Google and handset makers that can't simply be dissolved by threatening to revoke access to the app store.
Last straw was the Lollipop update for the Nexus 5, where it turned out a perfectly working device into a nightmare with memory leaks, mobile radio drains and camera freezes, where a daily reboot was actually mandatory. Their bug report tracker is full of complaints, yet they didn't do anything and are casually talking about M. Sorry, I don't have to wait a year, then pray if my current device is going to be supported, or just cave in and get a new device the new Android revision will enter the market with.
So until customer experience becomes a priority, I'm not investing a single cent or a second of my time in Android.
I know some one going for a promotion to a first level manager (PCG U) they used 10+ FTE's for a year and a million pounds to redevelop a system used by BT worldwide into the "approved" Oracle OWS platform.
Not the best use of a million pounds of shareholder money :-(
But they got the manage x people and have a budget of y pounds tick in the box.
Yes, it's wasteful, and yes, it's demoralizing as hell when you're the ordinary employee whose product just got canceled. But then, you should understand (at least at some level) that your work is meaningless when you go join a big company: the reason they're big is because their product is already "good enough" for millions of people.
Certainly, the market is fickle, but that is different than something political that is going on where you have no influence. It is completely conceivable that you optimized such that your product generated revenue far in excess of its costs, but that it is canceled for a (good) strategic reason.
Sure the difference is probably only psycholgical, but finding out that work you cared about was only a waste of time somehow feels more just if there was no market for it than if it had traction and the was shuttered for a reason you don't know.
In a startup (esp if it's your own), the psychological and emotional stakes are significantly higher. Also, there's no reason that politics can't find their way into a startup you're running. You just might not notice it because you've positioned yourself at the top of the tree of monkeys.
I consider it wise strategy when the project is high risk and its outcome very important.
I actually think making multiple prototypes is a good thing, it helps you understand things from more angles and see more possibilities about how a problem can be solved. But going and releasing both is confusing to customers and ultimately fragments your product line-up (canibalizing your sales) which is something Apple is desperate to avoid.
I think both Jobs' biographies detailed Forstall & Fadell's development, but I thought they knew about each other, working on Mac to Phone & iPod to Phone concepts respectively.
Give me back my color-coded GMail threads, ability to edit the subject without multiple clicks, and view features not hidden by submenus.
And that's just GMail, and that's just off the top of my head.
Yes, this is absolutely ridiculous. I have to look up the phone number using Google Voice plugin (which is nothing but a directory search now since Hangouts disables it), copy/paste the number into Hangouts, and SMS/call from there. It is completely unacceptable.
So a big company that is open to doing 2-3 similar things at once should be more likely to produce winners.
That said, as an ex Googler, I agree with others here that this is probably more an accident of internal dysfunction than a brilliant strategy. It might still work though.
Android Studio is based on IntelliJ which is a far more polished IDE.
And no wood behind things people actually want or use!
And the wood behind the ones we liked ended up all warped and weird!
Search also periodically rewrites parts of the search stack. Caffeine [1] was a complete rewrite of the indexing system, Hummingbird [2] is a near-complete rewrite of the ranking algorithm, Panda [3] and Penguin [4] were partial rewrites of the ranking algorithm, the serving system continually gets rewritten, and we redid the visual design every year starting in 2010 [5][6][7][8]. You'll notice that there was no 2012 redesign; it was canceled. That's what happens when the "new" search isn't better than the "old" search.
[1] http://googleblog.blogspot.com/2010/06/our-new-search-index-...
[2] https://en.wikipedia.org/wiki/Google_Hummingbird
[3] https://en.wikipedia.org/wiki/Google_Panda
[4] https://en.wikipedia.org/wiki/Google_Penguin
[5] http://googleblog.blogspot.com/2010/05/spring-metamorphosis-...
[6] http://www.theverge.com/2013/1/24/3904134/google-redesign-ho...
[7] http://searchengineland.com/google-launches-new-unified-desi...
[8] https://www.google.com/design/spec/material-design/introduct...
And how will Google be able to get onto the Whatsapp network and use their proprietary protocols?
If you assume the planner knows the right thing to do is that's actually a perfectly valid argument. It's actually pretty heartening to see the people leading Google don't believe this about themselves, though, because people who think that usually aren't correct.
Whether or not its Google's actual strategy, multiple parallel development efforts with different profiles (e.g., risk, timeline, etc.) is certainly a strategy, and one recognized in many works on lean software development.
If something is important enough to your broader business strategy, not hedging by taking multiple approaches, while devoting resources that could be expended doing that on other, less critical, efforts, may be the real waste of productivity.