Amazon is More Interesting than Google
abtinforouzandeh.com
abtinforouzandeh.com
They decide that you are an elite engineer primarily
based on whether you went to an elite school. Elite code.
Elite engineers. Elite schools. Elite company. How very
elitist.
This whole "Google is elitist" meme is silly. They hired me as an SRE, and yet I didn't attend high school, went to a state college, and had something like a 3.2 GPA.Stop being so afraid of failure that you never try to succeed.
Would changing the OP's sentence to "Google is mostly elitist" help? (Genuine Question). You might (please note the emphasis on 'might') be the exception that proves the rule. Here in Bangalore, for example, it is known that Google has a strong bias towards IIT grads and academic performance.
Whether such a strong preference for such schools/academic scores etc should be labelled "elitist" is a different debate. Fwiw, my gut feel is that if you are a strong enough engineer, you can get Google to override this bias.
Iow, I am not sure school has anything to do with programming ability (it might be interesting to draw up a matrix of dev superstars and schools. hmm). Unlike Stanford or MIT, IITs don't do world class research. They have a good bachelors degree program. And Google Bangalore doesn't do "cars that drive themselves" style work anyway. From what friends who work at Google tell me, Google Bangalore doesn't have a(n internal) reputation (to put it mildly) of pulling off feats of superior engineering skill.
That said, I have zero issues with Google using any criteria they want to hire devs (just in case it wasn't clear earlier). I don't consider them "elitist" just because they do what works for them. In fact I don't even believe in the "elitism" concept. I think it is a largely empty word used to mean "they do things in a way that I find unsatisfactory".
Even if Google has a hiring bias towards IIT grads, the best way for a non-iit grad to get a job offer from Google (if that is what he wants) is to be a better engineer than the favored folks.
"Be so good they can't ignore you" as a wise man said. Good Advice.
You're probably right (and I say that as an IIT grad). Most of the people I knew there were significantly smarter than me but couldn't program their way out of a paper bag.
I believe it's more like given a choice between someone `who is most probably a good athlete and may or may not be a good footballer`, and another `who may or may not be a good athlete and may or may not be a good footballer`, you would go with someone who is most probably a good athlete.
The ideal way would be to test them on the soccer abilities, but the volume of applications a company like Google does, and the percentage of people who claim to be programmers, but aren't really good, forces the use of heuristics. It will be simply impractical to test candidates for the actual programming the job entails.
Also, IIT grads do well in traditional interviews. You are more likely to get a dynamic programming solution from an IIT grad for a subset sum problem http://en.wikipedia.org/wiki/Subset_sum_problem than from a normal college grad - not that it has a high correlation with programming abilities, but traditional interviews focus on these kind of questions.
I did my bachelors from a simpleton college, and I was considered a good programmer, because hell, I could code up a vanilla binary tree in C++(no string attached - a binary tree with inorder traversal - that's it) from scratch in a lab test in under 45 minutes - that was as hard a problem you could get to solve in a lab test.
I would have to be admit I will be negatively biased towards people graduating from that cadre of colleges. Not that they aren't good programmers there - it's just that you will have to dig through a lot of not-so-good to find someone good, and it's not a worthy investment of time.
The kind of questions that are asked on tests will make you puke. We had a AI course, and we were following AIMA(I believe you were maintaining the Java code at that time) - the questions that were asked on the first test were essay questions viz. "How do you design a better computer"(from introduction chapter which wasn't much about designing about a better computer), implementing A* search was considered outside the scope of the course(implementing anything from the book was considered out of scope)...I could go on an on, but you get the idea.
The same with IIT, IIT itself will do little to make the person better. Even my experiences with IIT'ians has not been uniform, a lot of them are good ... but not everybody.
Now the main stuff,
Academics is one thing, industry totally another thing. Academics assumes that you can memorize, recollect from the memory and invent. The industry assumes your can discover and deliver. In our times to be able to discover is far more important thing than ability to invent. Coupled with productivity is what makes this software so interesting.
If you are productive, hardworking, and discover and experiment quickly you can achiever far more than any guy from IIT or whatever.
In short, Education only takes you so far. After that its all upto your work.
In fact entire teams of HR thrive on being able to say "We havent found anyone yet." Despite HR, I 've managed to look outside the box and instantly gotten the kind of people I wanted to work with. They havent been blue-chip grads or people with 10 years of PPT pushing experience in a large firm. They have been people who have been enthused by a good problem. There is a ton of talent out there on the streets of Bangalore, they dont all have certificates, but many seem to have demos of products they have built. In my rule book, thats good enough. If you look for designers ask for an online portfolio, if you are looking for devs, ask for side projects, if you are looking for sales guys figure out if they understand tech well enough to sell. In short I need to see demonstrated value.
If you are big company, hire all the certificate holders and thank you for cleaning up the streets.
Recently we hired a girl, who has all brands next to her name. Hopped like 6 companies in 5 years. Endless projects to her resume and everything looks fine and dandy. After hiring her we figured she was fit for nothing. Every day she reads interview questions for about 1-2 hours. Makes calls to her friends. When asked to work, she just slacks around, force her too much and she throws in the 'harassing the girl' card. Now she wants all foreign travel opportunities to herself.
We know for sure she will quit in another 4 months, and she will get a good job too. Remember she is an expert reading those interview questions for an hour daily.
This is the regular crowd here in India that hops jobs too often. So its perfectly acceptable for the HR to ask for solid experience on a persons resume.
Unfortunately salary hoppers are so common among the job hopping crowd, that its sufficient enough to say the most and nearly all job hoppers are salary hoppers.
I just told you about what works for some of us. Sure it might cost us a couple of good people who don't have a side project, but all of the people we end up getting are the problem solving type.
Your job hopper story is sad, but company "loyalty" is a nonsensical concept to me. You should only ever be as loyal to the company as the company would be to you. For me that means I don't consider company loyalty for one second. That being said, leaving a place too quick (or staying too long) makes you look bad so you have to way that in. Never some stupid one-way loyalty.
Of course, the other extreme are interviews where they feel it's okay to ask you questions that make it look like they only hire "geniuses" who can tell you why the mirror reflects left to right etc ...
With the changing times, many startups are getting into the recruiting space and helping such companies as google choose credible candidates without the elite institution tag.
A developer might a good fit somewhere in the company, but that doesn't mean they'll do well everywhere.
I speak from experience: my SA-SRE limbo involved leaving SRE and landing in a role expected to bridge the kernel team to prod, by making their tests work on the things which involve Lots Of Machines (tm). That was a SWE job through and through but it did not give me the ability to transfer out of it until I went through the process last year.
Note that nobody was willing to pull rank and Just Fix Things. That was a sign to me that things had turned pretty bad -- forcing people to jump through hoops like that? Come on.
BTW, for SRE, the interviews are supposed to hit a range of things: sysadmin stuff, coding stuff, debugging/troubleshooting, and so on. At least, the ~100 or so I gave over the years I was there certainly did.
Note that none of the things I asked were "round manhole" type questions. I hate that stuff.
P.S. This is one reason why I'm glad they don't ask sysadmin questions to SWEs. I'm a really shitty sysadmin.
Google seems to want to give their employees the popularity contest atmosphere of an undergrad school so that the elite can feel smug and superior as they slave away in an effort to get the rest of us to click on more ads.
Yes, caste system. If you don't resemble the right sort of person at hiring time, you don't get the SWE flavored job. Managers will tell you there's no difference, but they are clearly missing the point.
If you ever want to transfer out of SRE, most of the jobs there are SWE positions. As a SWE-SRE, you're set. As a SA-SRE, you're screwed. See the problem now?
One secret I found working in Silicon Valley is that the SRE/SA types often got looked down upon by the developers, but were making more money.
Incidentally, I later found out they were underpaying me by as much as 20% compared to other folks in my area at the same level. That might mean that my no-op ladder change was an anomaly.
Refusing to apply to a challenging/rewarding job because one's afraid of being rejected is failure.
Defending one's choice with appeals to "elitism" is justification.
The attitude that you can't be 'successful' in life unless you start a company is really out of touch with reality, I'd argue that it takes all kinds for everybody to even have a chance at achieving their definition of success, and people that do not achieve your definition of success are not automatically failures.
Anyway, the post is largely silly. The OP goes into a rant on "I don't care about any of what Google does", then mentions Google+ and MapReduce. Yes, that's all Google has going on these days. Saying Google can't keep up with the world when Amazon can is beyond ridiculous. Hell, Google has defined a large part of the modern world and continues to expand on that. Honestly, I'm a larger fan of Amazon than Google, but Amazon IS TRYING to catch up to Google and only dabbles in a small percentage of what Google does. The OP only points out a few features that Amazon has that Google doesn't (or at least doesn't offer openly and freely to all). Going past that, Google's offerings extend so much farther than Amazon's that it's hard to even begin listing them. Want a 3D representation of the entire world? Google has you covered. You could make those statements for pages.
Why do we even argue about this silliness?
http://news.bbc.co.uk/2/hi/8455712.stm
It had nothing to do with 'government-sponsored censorship', in fact, google showed different results to Chinese nationals on the other side of the line and the rest of the world for specific queries for a long time.
"These attacks and the surveillance they have uncovered--combined with the attempts over the past year to further limit free speech on the web--have led us to conclude that we should review the feasibility of our business operations in China." http://googleblog.blogspot.com/2010/01/new-approach-to-china...
This is the only view, and the only thing approaching a value judgement, that can apply to a large (enough) company.
It's like befriending a wolf in the wild. It may lick your hand, and bark at danger, but it could easily take your hand off and no one would blame it for being true to its nature. In fact you'd be chastised for not treating it with the caution it demands.
The elitist part is, I think, irrelevant, difficult to prove and ambiguous. "Google has invented something very cool, but they won’t show it to you unless they think you are among the world’s elite engineers." Would it be better if Google was only willing to show the best of its technology only to beer buddies of the janitor? Then it wouldn't be "elitist" (maybe) but it still would be pointless.
The problem here is that Google's blog post does not discuss how "petasorts" benefit Google's users; an engineering feat, certainly, but why should we care? This sounds a little like Microsoft R&D of which very little ever came out (at least in proportion to the hundreds of billions poured into it).
In contrast, what Amazon does is always, always geared toward its users / customers. The thing is, Amazon HAS customers, and serves them well (they answer to email, even pick up the phone).
I don't think Google thinks about their users as customers.
Why should they?
A customer is someone who gives you money. Amazon is in the business of doing things for users in exchange for money; Amazon's customers are its users. Google, in contrast, is in the business of doing things for users to get them to look at ads. Google's customers are advertisers.
I'm a heavy user of Google's services. But I've never given them a cent. I'm not a Google customer; I don't see why I should be treated like one.
"To answer, we need to be careful in recognizing that the customer is the advertiser, not the user. Like in all advertising business models, the user is the product."
You are only as valuable as your eyeballs.
But Google, like any other large organization, isn't intrinsically elitist or evil or munificent or dysfunctional. These example adjectives are emergent properties of a company culture. GM is an interesting example of a company working hard to change its culture and by doing so change some of the adjectives people might use when describing them.
Most, but not all, though.
For example, AdWords is also (mostly?) targeted at small businesses, who are therefore customers but who are, for all practical purposes, considered users, and treated as such.
That's the problem, IMHO.
ClearType? Kinect? SongSmith? PhotoSynth? And F# for us geeks. MSR does LOADS of cool stuff.
Speaking of which, do you remember that about the same time that the Ipad came out (or just before then), Microsoft was demonstrating a touch surface for coffee tables?
F# might be the only item you listed that originated in the MSR division and has moderate success.
Anyways watch the video, its real good and worth watching for its own sake.
Google wants the best engineers to work for them; I'm pretty sure the same applies to Amazon. They're not going to let you near the bottom of the AWS stack without you proving that you're towards the extreme of the smart side of the bell curve and signing an employment contract with them.
Amazon provides its platform to anyone that wants to develop on it: last time I checked there was no obstacle in the way of signing up for AppEngine, using Google's many APIs to build a sexy looking searchable dynamic local social mobile website which you can then distribute via their webstore, or as a plugin for their browser or app on their mobile operating system. Maps are really cool and useful for that sort of thing. Perhaps you'd like to borrow their semantic matching technology and bidding platform to acquire some customers or make a little money on AdSense; that's not too difficult either and plenty of people have made millions on the back of both. Just want to make your mark on the web? There are many neat little things your average web-savvy teenager can get creative with like their web fonts. Their free code hosting and tutorials go a lot further than just helping you use Google services more effectively. Show me a successful online startup which has never used anything from Google and I'll show you a liar.
But yeah, web hosting is a little further from Google's core business than Amazon's or Rackspace's. Does that make them elitist and irrelevant? Tell that to the millions of people running searches every day with less barrier to overcome than buying a book from Amazon
From your username it seems as though you would not be in a position to compare the merits of appengine vs. aws, but as someone who has used both platforms I totally agree with the article. Maybe "working" at Google has a bit more "allure" to notahacker, but he is right on that Amazon has totally empowered a new generation of engineers in a way that Google has not -- engineers who want to build on their on, not just sit on fun APIs.
So I'll happily agree that when it comes to hosting web applications, Amazon has a much broader offering and actually attempts customer service, but I pointed out a whole load of other ways Google services empower independent developers. Including building operating systems, browers and other types of platforms which aren't on Amazon's radar.
To deny that Google offers developers much because Amazon's core competency AWS beats AppEngine beta to a bloody pulp is like saying Amazon offers consumers nothing because the experimental public A9 search engine bombed.
Heroku does not offer you even close to the same flexibility as AWS does, but it's still a pretty sweet product in the same way that app engine is.
It was interesting. But if learning these interesting systems doesn't actually result in efficiency - as demonstrated by the numbers showing up in my billing panel - then they aren't really interesting at all. I'm not interesting in pointless hoop jumping.
So now I'm learning how to port my GAE app to EC2 or maybe even Heroku (if I can reconcile that with the fact that I've spent the last two years persuading my Heroku friends that its expensive compared to GAE).
Wow, your MBAs got skills!
It's pretty obvious to me that for Amazon their public cloud computing offer is much more strategic than it is for Google, so if you want that kind of service AWS is most likely more interesting than GAE. But that's about that.
I really don't understand this post. The author's argument seems to be:
1. Google won't share its trade secrets with me
2. ???
3. Hey guys, I hear Amazon has some great cloud services you can pay for!
Amazon provides cloud services. Google doesn't (except for the GAE). I fail to see how this fact becomes personally insulting to this guy.
sigh
Google just tout they have XX and ZZ but only so-called elite can play with it or even just know more about it. It might end up being crap, no one else than Google engineers will know.
So... care to tell me how EC2 works? :P
The only way you are going to learn how these proprietary systems work are by working at Google or Amazon. What makes the EC2, S3, etc. APIs different from AppEngine or the 100s of other Google APIs there are? They're all just APIs to proprietary systems (well, except when writing apps for Chrome and Android). You are learning "how they work" only in the most superficial meaning of the phrase.
The difference is that the author read a Google recruiting ad and is comparing it to Amazon's publicly-available products. Yeah, they're different. Users don't care about petasort. Recently-graduated PhDs looking for work do. And that's who that copy is targeting.
"Nothing to see here: move along."
The point of the article is that Amazon also sells the web store itself. Google has interesting, proprietary software, but they don't sell search engines, sorting tools, or scalable web hosting.
http://www.google.com/enterprise/search/gsa.html http://code.google.com/apis/customsearch/
> , sorting tools
Okay, so they don't sell sorting tools. But to be fair, they've published a number of papers on different technologies which have furthered the creation of a number of tools, including sorting tools.
> or scalable web hosting.
Part of it is that Amazon is not a black box. I have read most of the relavent papers published by Googlers and Amazonians, and I feel like Amazon technologies are so much more approachable and generally useful.
Top level: both Google and Amazon have developed great technology that they needed to run their companies and then decided to make a subset of their technologies available to outside developers and companies.
Still Google does some very nice things for developers like Google Code, and little things like releasing Wave in a Box (which is great!) when they announced the termination of Wave services.
Check, check, and check.
Amazon also takes Visa and MasterCard.Maybe you forgot to title this "I like Amazon Web Services, not App Engine"?
Let's have some examples. You write, "They decide that you are an elite engineer primarily based on whether you went to an elite school." Yeah, OP? According to who? You? Maybe there's a place where it's acceptable to get up and air vague, unsubstantiated conjecture about something you don't understand, but in the real world, you have to qualify your argumentation. I might add that even if it is the case that Google hires primarily from prestigious universities, you are not accounting for the fact that they could actually just be better on average.
There are other examples, too, but rather than point out the withered editorial you serve up for literally the first 2/5ths of the article, I think I'll do us all a favor by pointing out that your first actual fact is that Amazon makes tools -- and that this fact appears more than halfway into the article. And more critically, that it is delivered without any real impacts. Even if Amazon delivers more tools, WHO CARES? HOW DOES THIS DEMONSTRATE YOUR POINT? And actually, while I'm here, what IS your point?
Strong claims demand strong evidence, and if you're going to drop a line like "But the world has changed, and Google can’t seem to keep up", then you'd better damn well be prepared to back it up.
I think the useful bits of your comment can be summed up as (your sentence) "Strong claims demand strong evidence" without all the accompanying histrionics.
Also I tend to post only when I'm annoyed, and I turn more into a speechmaker the more I get annoyed. It's maybe a weakness and I'll consider making a conscious effort if other people seem to agree.
EDIT: I'm going to mark this as the first time in my life that people in general disapprove of honest personal inventory. What it is that they would have rather heard (a lie?) is unclear.
The first is downright silly. Debate training helps you in a formal debate. It isn't meant to be the guide for generic speaking or writing. Do you speak at the dinner table or to friends or family "in the manner you were trained" for debate? That would lead to you being an interesting companion ;) (As an aside, whether your OP is a good example for "classical debating style" is open to question)
A debate is an artifical situation where "scoring points" with a variety of content lite tricks (e.g: attacking the person or his style, or his mannerisms vs his arguments) are valid tactical maneuvers. Scoring points is more important in a formal debate than exploring a topic or seeking nuance and truth. You see this in political debates all the time where substance is minimal, complex issues are reduced to soundbites and rhetoric and style dominate. Most normal life conversations, including internet conversations are not formal "debates". Especially here.
On HN, namecalling etc are frowned on. A sharp and insightful comment using the minimum of empty flourishes would serve you well here if you want to maximize karma reward. As a classically trained debater, you are no doubt used to changing your style to suit the audience.
As to "It is maybe a weakness", if you talk "debatese" in real life anytime someone makes an argument that annoys you , there is no "maybe" about "it is a weakness".
You also implicitly asked for people's judgement on your writing style ("I'll consider making a conscious effort if other people seem to agree").
Consider the downvotes to be feedback on your writing style and your defense of it vs "disapprove of personal inventory" (leaving aside the question of whether HN is the right forum to make personal inventory).
Debate is about scoring points via dubious tactics? Says who? You? I don't mean to be a burden to talk to, but while you're presenting the noble argument that HN community is a pack of discerning, objective truth-seekers, what you've said is patently and unquestionably wrong, and if you get upvoted, then the real message that I should take away is that such dubious and pandering tactics are only acceptable in contexts where the community agrees with you a priori.
> Debate training helps you in a formal debate. It isn't meant to be the guide for generic "speaking or writing". Do you speak at the dinner table or to friends or family "in the manner you were trained" for debate?
You're wrong, and this is wrong. The point of debate is to learn to build consensus in an audience in a variety of scenarios. If you're talking at length, or writing an essay, you will change what you do to be more effective in those cases. If you are answering questions in cross examination, or shouting over someone in a crowded room, then you will again alter your presentation accordingly. And generally, if you were trained properly, then you will have developed a specific communication style for a huge swath of activities that require it.
Including conversation. Including letters. Including posts on the Internet. If I'm wrong, it's in practice, not form, and to dispute this, you have some heavy lifting to do, particularly in the first passage I note in this post. The fact that you are well-spoken and well-adjusted in the community is certainly appreciable, and while your advice is probably not completely wrong, that doesn't make you right either.
You responded to an entirely reasonable, good-natured post with impressively sniveling pedantry. So rather than try too hard to be constructive, I'll give you simple but important advice. Just, you know, chill out.
Reply: "Here's why your argument style sucks."
You: "Hey, you're wrong. You're really wrong! You don't know what debates are. I'm going to talk to you like a child. By the way, you're wrong."
Yes, you certainly sound like someone interested in listening to constructive criticism. I've gotten into heated debates on HN before (with plenty of downvotes) but there is a certain level of respect people have for each other here. You sound like someone who is talking down to folks, which is an unacceptable way to argue in general, particularly when you're entering into a crowd that has made it a point to be respectful at all times. The nice thing about HN is you basically can check your ego at the door since anything you've managed to achieve in your life has surely been overshadowed by no small number of others who are reading this site.
The OP may be right, but I'm afraid they do a poor job of providing clear examples of why Amazon is really more interesting than Google. They do manage to name one, but that one turns out to not be very important.
So, what are some examples? You write, "They decide that you are an elite engineer primarily based on whether you went to an elite school." The problem is it's pretty subjective what counts as an 'elite' school. It could just mean that, on average, Google hires from more prestigious universities, but this doesn't really prove elitism since it's likely they hire folks from many other universities as well.
Here's an example of a difference between the two companies that I think does serve the OP's point: Amazon is a toolmaker. This is mentioned, but the OP fails to really explain why this property really serves to make Amazon a more interesting company.
Overall, there are some pretty broad claims about the two companies in this post, and I'm not seeing a strong argument for why we should think Google is in 'catchup' mode as the OP claims. If you're going to say something about one of the worlds most valuable companies playing catchup, you definitely need strong evidence if you expect people to agree with you.
--
No personal attacks, less words, and more impact on the mind of your reader. (I just wrote this quickly, so please excuse its lack of brevity and any other obvious mistakes!)