Friday, January 16, 2015

Sheila. Big tank lady.

I love cars. I really really do and while I realize that self-driving cars are the future, little beats navigating a curve at near optimum speed and listening to the roar of an engine. Proper roar. Not the bullshit artificial sound that's making its way around (*cough* BMW *cough*).

What are we talking about again? Yes...can you pick up chicks in a tank? Err...so what does Product Management have to do with cars?

Well, I was thinking about an analogy last night and given that every question can be a PM question (just go with it), behind any successful process, there's usually a PM or a team of PMs doing what's needed. Keep in mind that the title might not always be "Product Manager".

So what can a great PM do at a company like Ford or Porsche, especially when a new car is being developed. If it were me, I'd not only have to have great customer empathy but also know what's under the hood and make sure my team isn't doing silly work.

What does that mean?

Is the car safe while still being fun? (and this means different things to different segments). Do I know what that means to a potential 20 year old versus a 50 year old driver?

Do I show up at 6am to drain the oil and send a sample off to analysis, top off the oil and make sure the car is ready for my engineering team to run their test?

Do I study the statistics from the latest Brembo installation and have a set of recommendations / questions ready for the brake team before they roll in to work?

Do I make sure that the analysis on tread usage is complete and the tire pressure is optimum or tires/wheels have been replaced before the track drivers show up?

Have I been hounding the accessories team about the new AC that's 5% heavier than the old model and how I want a reduction in weight. Hello, this is a race car yo.

Do I see a threat from Acura in their new supercar and preemptively plan to crush them at the Detroit Auto Show that's scheduled to open in 8 months?

Am I aware of the auto regulations in Europe and intimately know how they compare with the ones in Australia and Canada?

Do I bring the donuts?

... and the answer to all the above questions is:

YES.

At any place, there's lots of work that's considered "boring" or "not sexy". What do you do as a PM? You take that stuff on so your team doesn't have to. You migrate dying hardware on to a VM stack. You maintain an ancient automation harness and think of ways to rewrite the whole thing. Then you do it.

You keep track of the big picture, you keep people in the loop and you bring donuts. You do what needs doing.


Wednesday, January 14, 2015

Adblock this

Design an ad server that returns relevant ads from a store of 100m unique ads. It must be fast and must scale across 1billion different pages and 1billion requests per day.

Why bother eh? Our users are going to block our ads anyway. I mean ads are annoying yea? With that, the interview swiftly comes to a close and you check if the closest bar has your favorite Scotch. Or something.

Here's Google's financial data from Q3 of last year: Q3 2014 Financial Data

Look at how much money Google pulled in. Yea, soak it in. Now, back to the question:

Questions to ask:

* What platform are we targeting? (Mobile, Desktop or both?) - with whatever platform, what's the display medium?
* What's the nature of the content that's being displayed (this affects the database choice, bandwidth considerations/network conditions)

Requirements:
* Be easy to use
* A web-service solution and a database solution (needs to be scalable, distributed)
- Flesh out delivery system more
* Database and web-server need to be able to handle a variety of ad formats and rich media
* Need to serve ads based on business rules / requirements
* Target ads based on user, geographic location / IP location, content and legal considerations
* Need to be able tune delivery based on results / feedback
* Determine ad-targeting
* Need 12000 ads displayed per second assuming an average duration. Double that if you assume a 12 hour day.
* Expose APIs, be connected to supply chains, ad. approval, audit, account management
* Be connected to a billing system

Technical Design:
* Would need to use key-value stores for high-volume, low-latency transactions
* Have aggressive cache-expiration unless you see clicks

Physical Architecture:
* <Load Balancer> <-> <Ad chooser cluster> <-> <Database cluster> <-> <Application server> <-> <Web Server>

Software Architecture:
Ad. Chooser <--- (Constraint Checks based on requirements) <-- (Read from DB) <-- (Influenced by Campaigns, business rules)
Ad. Inserter ---> (Audit) ---> Store in DB ---> Tie into Reporting System

Infrastructure:
Go EC2 or actual commodity hardware, fast networking

Ad. Chooser Design:
(Pool of ads) -> (Display medium: browsers, mobile apps). Goal: Maximize value of ads served. CPM comes into play.

Reporting:
Realtime, bulk

It's hard to know all the components (not sure I got them all) but you need to key components, the broad categorization. Think of who the user is and work back from them. How do you think this'll apply to Adsense?

Call the CEO a waaaahmbulance. He's not happy with his elevator.

"A CEO complains that the elevator in his building sucks - what would you do?" (You own the elevator company) - You cannot talk with the CEO to find out what's wrong, everything seems normal, the other people aren't complaining. Whatcha gonna do...whatcha gonna when the interviewer is out to mess with you.

I like this question. I do. The "solution" approach below is entirely original (you're welcome) and completely suspect. I like this question because if you read the first two lines, it doesn't look like a lot of information is given to you and there's a good reason behind that. However if you are like me and have had the luxury of a 16oz vanilla latte, a really pretty face 15 feet away and 20 minutes to brainstorm, you can start digging and "branch out".

Points to focus on / clarify:

  • Only complainer is CEO, everyone else seems fine with how the elevator worked. 
  • Is there only a single elevator?
  • This means there might be other people who have an issue but are keeping quiet.
  • What differentiates a CEO from non-CEOs? Their time is valuable, they don't like to be kept waiting or interrupted. 
  • Which floor is the CEO one? Is it the very top floor? If not, does the floor see more traffic?
  • As a segue, how do the VPs feel about the elevator? What floors house the VP offices? They do have VPs yea? People love being VPs. 
  • What time does the CEO come in to work? What time does everyone else? Look at elevator scheduling rules
  • Are there other companies housed in the building? Do non-employees use the elevator? Deliveries? Freight? 

Possible solution:

Give the whiny CEO a special card. When the CEO scans his card while waiting for the elevator, the elevator doesn't stop for anyone else and comes straight to the floor the CEO is on. Once in (no need for an additional scan), the floor selected is the next stop regardless of anyone else requesting the elevator at the same time.

In addition, when the "CEO bypass"is engaged, the elevator moves 10% faster given that weight safety requirements are met (usually are unless the CEO is moving with a large contingent). What's that? You want the CEO's office to be on the ground floor? Son, he's the freaking CEO and his office has an awesome view. Plus that's the only office with a personal restroom.

Other factors:

- Does the elevator play any music that the CEO hates?
- Do the freaking security guards smoke weed? Air freshener be annoying? Odor considerations.
- Is the entrance to the elevator too narrow and the CEO is obese...I mean big boned
- Are the elevator buttons too low for the CEO? Is the guy a giant? (or vice-versa)
- Does the CEO hate having to scan his card a second time (the above solution will address this). Or forget scanning, use radio frequency to detect when the CEO's badge is in proximity. 

Interrogation Time OR Say WHAT one more time (or Who, Why, Where, When)

This isn't a question/answer post which breaks the format and ruins everything here (Yes, this is the straw that broke the camel's back. This is exactly what's wrong with an otherwise pristine offering). Yesterday, I realized that pretty much any question can be a PM interview question.

Sample 1: How would you solve the traffic nightmare in Seattle?

Potential Answers:

  1. Machine gun turrets
  2. Build more roads, more exits
  3. Move to the Bahamas
  4. Trigger economic collapse in the entire region
  5. An actual answer that won't get you kicked out 

That question above would be a really nice question. As opposed to what you may ask. As opposed to you walking into your first interview and being faced with the following two questions (in that order):

  1. Do you have any questions for me?
  2. Give me one reason why we *shouldn't* hire you...
Don't forget your coffee.

PS: Describe what Marsellus Wallace looks like...


Tuesday, January 13, 2015

Why do you want to become a Product Manager

Context: I kind of am (and will always be) a Software Engineer.

My curiosity shifted from how things were being built to more of a “why things are being built”. At the time I didn’t realize that the area was called Product Management. I was the internal voice of the customer – I wanted to be more than that. I had a good view of the leaves and the branches and not only did I want to look at the forest but I wanted to make sense of what I was looking at. This is why I went back to business school: to get the tools to bridge the gap between where I was and where I wanted to be.

I like the area where business meets technology and I like speaking different “languages”. Interacting with my customers, engineers, marketing, legal, finance and customer support excites me. More importantly I communicate with them "in their own language".

Here's something I found online that sums up interactions with engineers (as a PM):

If you can’t convince engineers to work on your project, you can’t convince others to join you, and you can’t convince the market.

Or in other words, if you can't bring your own engineers on board, you have no business being or wanting to be a Product Manager (the whole product vision, influencing without authority, bribing the team with donuts and doing the boss's laundry comes into play here). 

PS: If all you're going to take away from this post is that my font selection sucks (copy and pasting from vim, notepad++, MS Word), you have a good eye. 

PPS: Wipe that smug grin off your face. Four eyes.

How would you reduce Gmail storage size?

Ask if deletion is an option. What does reduce Gmail storage size mean? Reduce per user quota? Free up disk space? Less data overhead in the DB? Clarify what exactly “reduce Gmail storage size” is without sounding like an idiot. 

For e.g., the question might be rephrased as 

"You have a 15GB GMail account and Google has decided to make all GMail accounts 10GB, what do you do now". Yea, yea that's dumb and Google won't pull that stunt but that's not the point. The point is to show Google that you aren't a pencil pusher.

Is there an option to provide offline downloads of e-mail before deletion? As in a very easy way (one click download – think of Facebook data download) instead of forcing users to use POP3/IMAP clients.

Is there an option to sort emails by size and/or date? [There is but this isn’t user friendly].

Is there an option to mass-archive e-mails? Text lends itself to incredible compression(needs to be lossless – RLE). However attachments might still be a problem (images may be lossy?)

Provide option to save e-mails and/or DOC attachments to something like Google Docs (unlimited space!). Offer conversion of non-support documents to documents that Google Docs supports.


Look into databases/backend with least data overhead?

How would you re-position Google's offerings to counteract competitive threats from Microsoft?

Question to ask: Are there any specific product categories in mind / would you like me to list out the broad categories:

Categories:
  • -    Web Search (Google vs Bing)
  • -    Mobile space (Android vs Windows Mobile)
  • -    Notebook space (Chromebook vs Surface)
  • -    E-mail (Gmail vs Outlook)
  • -    Chat services (Google talk vs Messenger)
  • -    Video services (Google Video vs Skype)
  • -    Cloud services (Google Cloud Platform vs Azure)
  • -    Browsers (Chrome vs IE/Spartan)
  • -    Mapping (Google Maps vs Microsoft Maps)
  • -    Online Storage (Google Drive vs. One Drive)
  • -    Productivity Apps (Google Apps vs Office 365)
  • -    Advertising (Adsense vs MSN + Aquantive)


Ask the interviewer what area(s) he/she would like you to focus on. Provide input on where you think there are genuine competitive threats. For e.g., Bing isn’t much of a competitor to Google’s Web Search. Why? Google cares about the user and works backwards. Microsoft on the other hand seems to focus on market share and revenue and somehow wants to reconcile that with a better user experience. Do you think this worries Google? Maybe but I don’t think it keeps them up at night.

There are additional considerations here. Google has Android to help in the search arena while Microsoft has the Xbox platform and their donations to schools (and hoping school admins don’t switch to Chrome on the kids’ machines). Google might want more “social integration” of their maps / maps API; point being that one should be aware of the context/environment.

If I had to pick one, I’d talk about browsers (harder topic) with Microsoft touting Spartan. Microsoft can in theory make it harder (not impossible) for Google to keep up with browser updates with their next version of Windows (be aware of desktop vs. mobile dynamics if you go here). An easier option would be enterprise productivity software.

Talk about Office 365 vs. Google Docs: You should know that over the years, a lot of office clones haven’t quite been able to replace (Desktop) office: StarOffice, OpenOffice, LibreOffice but Google Docs isn’t quite that. It doesn’t aim to provide an Office 365/ Desktop Office clone. However a consideration here is that customers who are used to the desktop version of Office might be swayed towards using Office 365 (instead of Google Docs). How can Google address this?

Is cost a consideration? Compare licensing costs of Office 365 and costs of Google Docs for enterprise (remember Office 365 gives users desktop version licenses).

Do some 4 P analysis here – mention the 4Ps
  • -    Product (already mentioned)
  • -    Price
  • -    Placement (what you need to focus on here)
  • -    Promotion

How would you place Google Docs to counteract competitive threats from Office 365? First, understand how Microsoft is positioning their current offering. Match that up with you think users will want / use.

Think of it from Google’s perspective. They work back from the user. Can Google afford to give away its offering for free? (I think so). Are there other considerations? (Look at Kingsoft, iWork – I don’t think they are legitimate contenders or at least scary enough to bother Google but they might be bothering Microsoft).

Look at platform support (Google Docs works as well on iOS devices now as it does on Android).

Look at schools (network effects, getting kids to use an application suite from an early age) for product placement. How would you encourage use of Google Apps educational institutions? (Provide these free of charge? Be wary of advertising to kids)

Look at how much functionality users actually use. Look at customer forums for requests, complaints. Look at analytics and reconcile your findings with the answers to the above questions. Finally, organize your thoughts (Start with the 4Ps + studying Microsoft's positioning once the interviewer lets you pick a category). I shouldn't really have to mention this but these are hastily scribbled suggestions intended to kill your brain.