Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I don't follow why being an "expert" in D would make you "bored" of Q. If Q is simply a boring field to you, that's one thing (and the appropriate response is to quit and find something better). But it's not your employer's job to give you your dream assignment. If they need Q geeks and you're available, then that's what you're stuck with. That's what being an employee is all about.


As if geeks are so interchangeable like sprockets! I'm an expert in my field, I have a PhD in it, if someone asked me to do machine learning or data mining or image processing, it would be a huge ramp up time for me, say about 2 or 3 years to get to the point of expertise I have in my current field. It would be a boring 2-3 years, and something that I'm probably not very interested in. If there are other jobs out there that make use of my expertise and interest, why bother with something else?


why would you be bored learning something new?


Depends what it is. I'm actually trying to get into machine learning, but I'm not into databases or knowledge representation even though there is some cross over on my field. My point is that I wouldn't appreciate just being thrown into a new field without any say. I might transition to a new field over time as my interests evolve, or as part of some negotiation where there is a crisis need. But no, I'm not an interchangeable part.


It's not absolute, but relative. E.g. I'd learn some interesting things studying either databases, or rocketry, but I'm pretty damn sure I'd be more interested in rocketry.


Because I might have more interesting things to learn and completely not care about the topic I am told to learn.


One of the things I disliked about Google was the tyranny of At Google. If you didn't do it At Google, it doesn't count. You don't really know the first thing about anything unless you did it At Google. It's an extreme case of institutional arrogance.

This explains the blind allocation policy. If knowledge that is not At Google doesn't count, then there's no point in matching people with their expertise or interests, because a Noogler by definition doesn't know anything.

In July 2011, I did some research on the strategy of the Google+ Games team and saw that the going plan was doomed to failure and seriously risked such embarrassment as to kill the entire product. (Lots of Zyngarbage, preferential treatment to mainstream publishers.) I had some domain expertise from designing a game and spending a lot of time hanging around game designers. So it was pretty easy for me to come up with a strategy that had a damn good chance of actually succeeding. I posted it internally and got a huge amount of engineer support. The strategy was to establish a quality-centered community first by providing a platform for independent developers, integrate it with Hangouts, and become a center for the "German-style" board game sphere. The high quality starting community would establish G+ Games as cognitively upscale, creating a comparative brand advantage that would persist in perpetuity.

By the way, the Google+ Games engineers also got wind of what I'd been proposing and they supported me. It was as obvious as it can be to humans (obviously, no one can predict the future) that this strategy would work. I got a ridiculous number of emails from engineers telling me that I was right on and that they wished they were implementing "Real Games" instead of giving ridiculous preferential treatment to mainstream publishers (who were throwing us mediocre product because they didn't expect us to succeed). What got me in trouble was that a lot of high-level people didn't like that an FNG had so much engineer support.

I was a recognized domain expert, but not an At Google domain expert. There were no At Google games experts, because Google had never gone into the Games space before (and that's smart, because Google did extremely well on web search by being ideologically non-editorial, but for the games space quality is so damn important that you must be editorial.) So it came down to politics, because Google's At-Google bias rendered it incapable of recognizing domain expertise and discovering a correct decision.

Finally I got an email to the effect of, "domain expertise isn't relevant here, deal with it. Besides, you're only a SWE 3." Well, fuck you very much. I don't see why job titles matter when you're about to lose millions of dollars and would have been making as much had you listened to me.

A year later, I was proven right, but it doesn't matter in the least. Google+ Games is a non-concern, and I'm not a part of Google.

The lesson I learned from that ordeal is not to try to "save" a company from itself because you can't. You'll be seen as right, and possibly even lionized, long after you leave... but it won't matter in the least. Keep your head down, stay employed, and enjoy the middle-row seat to the show-- that "show" being the people in charge making fools of themselves.


I don't want to go dredging up all my own boring/painful stories but my experiences at Google were very much like yours. I do want to chime in on this one though, and warn anyone with experience that before you take a job at Google -- be aware that as far as they're concerned you know absolutely nothing. The main thing they care about on your resume is your GPA whether it was last year or 20 years ago.


Again, None of what you are saying seems to be a problem only at Google. These are really MegaCorp problems, and they apply to Google as well.

I knew even from the beginning even 5-6 years earlier, when there was immense desperateness among geeks to work there. It was only a matter of time when all MegaCorp problems will eventually plague Google.


> It was only a matter of time when all MegaCorp problems will eventually plague Google.

this is really interesting - what is the cause of all these problems?

Is it inherent in a hierarchical organization? Is it because you have people who are responsible for the output of others (a manager), but isn't able to actually control that output directly, but is only able to indirectly affect it (and not very well at that)?

I think this issue of "control" is central. Facebook and valve seems to have their structure right (at least, the engineering department). But both is still young and small.


Open allocation seems to have one drawback. You still do need (a few) managers and executives (not to order people around, but to keep track of the bigger picture) but it's hard to hire managers from outside into an open-allocation shop because typically they want promises of authority, and OA is directed through leadership rather than intimidation.

Most companies move toward the closed-allocation end of the spectrum because they perceive a need to do so in executive recruiting. Most executives don't want to take a position where they won't have the power to unilaterally fire people.


Regrettably rhetorical question: And this is not a useful filtering function for most of the executives you'd want to hire?

A company must be able to fire people (I've been in ones that went down the drain because the founders were too nice to do this, or at least do it soon enough), but this sure sounds like Lord Acton's "Power corrupts, absolute power corrupts absolutely."


+1, This problem is not unique to Google.


"The lesson I learned from that ordeal is not to try to "save" a company from itself because you can't..."

Agreed in most cases, but you once said that before:

http://news.ycombinator.com/item?id=4337057


It reads like the parent got brought in as an expert in D, not Q, and then got told to work on Q, which wasn't their expectation. You'd be unhappy at that happening to you, right?


My understanding is that people don't find out their assignment until after the hiring. Sounds like the Air Force: dream of flying jets, end up cleaning toilets. At least at Google one can quit.


It's one of the reason why every time a Google recruiter contacts me, the conversation starts with me interrogating them about what exactly they are able to promise, and so far all but one were able to give answers that made it worthwhile to accept an interview.

If Google had been the hottest place in the world to work, and I'd been fresh out of university, then maybe.


Depends on what he meant by "expert". If he meant he has PhD level expertise in D and that is his life's work, then it's completely understandable he wouldn't be happy doing Q, and would seek to do D elsewhere.

People tend to misuse words like "expert" and "fluent" though, when they're really not, but on HN odds are higher that they're using at least "expert" correctly.


There are some among us that won't do tasks we don't enjoy. Even if it meant that our pay was to be cut, we'd flock elsewhere to seek the fulfillment of being applied to a more meaningful duty. The key here is that 'meaningful duty' is self-evaluated and the organization's value of that position holds no merit or sway to the individual.


"it's not your employer's job" It's in their best interest however to do so, as replacing him costs money.


Yes and no. Replacing someone who can't possibly be happy with the work you have available is cheaper than keeping them on. It depends critically on the details of D and Q. If you get hired by, say, Facebook and refuse to do web development you're going to be a bad fit. The goof here may have been hiring him in the first place.

It's important for both sides to accomodate. But sometimes fits just don't work. If what someone wants to do isn't something you need, or if they aren't as good at it as the other people you have on staff, then the correct fix is just to part amiably. It's no more Google's "fault" than it is varelse's.


It's a matter of resource allocation.

If you hire lots of, I don't know, compiler specialists but you allocate them to write web apps we're all possibly worse off. The issue is, and what you're not cottoning on to, is that in a company the size of Google there's probably a team working on x for all values of x that could maybe use another member.

They're only tolerant of their resource allocation scheme because they probably don't worry about their employee acquisition cost.

With a company the size of Google, it'd be really interesting to deregulate their internal labour market (i.e. what Valve does). Let people switch all the time! If you need to prioritize one boring, yet necessary team allocate higher salaries to it.


If you hire lots of [...] compiler specialists but you allocate them to write web apps we're all possibly worse off.

Speaking from direct experience, faced with the job of developing a framework for web data entry apps, what I ended up doing was writing a dataflow language for data binding. Another ex-Delphi compiler developer, Danny Thorpe, ended up co-creating Google Gears. IMO compiler development is a great basis for a certain kind of thinking about solving problems; but I'm also biased.


Speaking as another compiler guy (ok, more into PL), there is a reason many of the top engineers at Google are PL/compiler guys (e.g., Jeff Dean, Sanjay Ghemawat)...think of MapReduce. However, we are also sort of dangerous as we see many problems as PL problems, and if the problems require specialized domain expertise beyond grunt programming, we really aren't that effective (e.g., machine learning) without being paired with those domain experts.


PL man to PL man, what would you say the prospects are for taking a brain soaked in PL, compilers and software-engineering research expertise outside academia? You know, for when they boot me out of grad-school with a so-called "degree" in a bunch of years ;-).


You have a lot of choices, basically look for anyone with big iron requirements (big data systems/infrastructure). Microsoft, Google, Facebook love PL people. Many startups would be happy to have you also.


Oh wow. Given that my university (Technion) has strong ties to Intel and Marvell, and substantial ties to the local branches of Microsoft and Google too, it sounds like life should someday be good. That'll be nice :-).

Actually, I was at a presentation today for new grad-students, and one of the older grad-student mentors helping to present mentioned that the coursework phase of grad-school is a good time to get a bit of industrial experience in the summers. Once I actually have real grad-level PL experience under my belt I'd quite like to go and see what it's all about.


Sorry for the novice question, but what does PL stand for/refer to? My best guess is programming languages [creating them] but I have zero confidence in it.

EDIT: Sorry, did some research and assuming its this: http://en.wikipedia.org/wiki/Programming_language_theory


Because programming languages is so tedious to write. Actually, what you are referring to is PLT, which is a bit different from PL implementation and/or design. Implementation is usually associated with compiler, although these days it could be garbage collection, palatalization optimizations, or something else. PL design are the people who design programming languages, like say Hinkley, Mats, Pike, ...and tons of lesser known people.


If Facebook hired someone who wants to work on their compiler and put them on web development I'd regard that as an extremely bad decision.


Wrong. Any company that wants to be successful has to allocate their employees to positions they will excel at. Not doing so is a gross waste of resources.


Its more nuanced than that.

A company might want to hire an expert in Q because having expertise in Q means they are of a high skill level, and thus is able to also do D very well. D might be very mundane, boring or inconsequential from the point of view of the employee (and whether it is in reality as well is quite moot at this point).

THe employee might _want_ to do Q, but D is what makes the company money. Hiring someone who does D (but may not come up with novel solutions for D), or hiring someone who does Q very well, and assigning him/her to D in the hopes that they do a great job - which is better for the company?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: