Beautiful Job Description: Intrinsically Motivated Full Stack Product Hacker
codeascraft.etsy.comCute, but maybe a little too out cute.
> You are prone to quixotic behavior.
They are looking for people who are prone to irrational, unrealistic behavior? It makes for nice prose but I have a feeling that some of the personality disorders that could be described by their phrasing wouldn't be particularly welcome.
> Full-stack.
What stack?
No really, you're hiring me for the full stack. What is the stack?
Would I ever be writing a line of CSS? Or JavaScript? Or Ruby? SQL?
At least they say "Largely PHP" a little bit later, but that makes me wonder just what their definition of full-stack is.
I appreciate pleasant writing for the sake of it, but there's a lot of information they could have imparted but chose not to. I wonder if they'd respond favorably if I actually replied in kind. Do they really want quixotic behavior? Is being scant on technical details an OK thing for a technical job posting?
I'm tempted to send a cover letter talking about how the best CSS (would I be writing CSS?) is made with oil paint and that I wear a tea cozy for a hat. I could claim to have independently discovered punctuation and talk about how I navigate code by wind chime.
re Quixotic Behavior: We want people who are comfortable taking a stand on an issue and going off on a mission to solve the problem. Not every great idea seems reasonable before people see it working.
re Full-Stack: We're looking for people who design and build full systems from low to high levels. Some have made their career working just as a front- or back-end hacker. We want to meet people who wouldn't dream of letting someone else take half their work or who would be comfortable throwing part of the problem over the fence. People that are a good fit probably don't care that much about what the stack is beyond some reasonable constraints.
If you end up sending that cover letter there's a chance that we'd all be amused enough to read your resume.
> people who wouldn't dream of letting someone else take half their work
As someone who is routinely doing full stack development this phrase worries me. To be honest I'm more than happy to give someone half my work if they are talented. Are you making this point because...
A) The overhead is so low that you want "full stack" people to keep margins low (so by wouldn't dream you actually mean wouldn't expect).
B) You want people that are willing to silo themselves, not incorporating exterior feedback or following direction from someone that may have a better handle on the given task.
Wanting someone that does full-stack is nice, but do you REALLY want someone like that and WHY. I mean, this sentence "you don’t flinch at the idea of writing largely PHP for a living" flies right in the face of everything else. It is like saying the following:
Do you dream of creating time-tested architectures? Do you spend nights dreaming up the next great cathedral or monument? That's cool, so we want you to put in our bathroom tile.
You are asking for a dreamer, an innovator, a creator, a designer and an architect to .... primarily ... write .... php .
With that said, it is written very well and etsy is a pretty cool company so I'm sure you'll get plenty of hits.
At the risk of being rude, that additional description leaves it just as open-ended and confusing.
Is everyone at Etsy amazing all every part of your stack?
Suppose I've done most everything except zero database work in my life, should I apply? Or is that not full stack enough?
What if I've done everything but high level design work? Not full stack enough?
What if I've done everything including design work but realized I'm not that good at it, so I hired out design for my projects? What if I determined the reverse with low level database stuff?
What if I have written the full-stack of a few webapps but always used Rails, and haven't ever touched any of the low level bits?
What if I've done only database and web design and have never really touched PHP? Or did PHP but never did any JavaScript? Good enough?
I know what your reply to me is going to be, you'll say by all means, apply, etc. But that's not what I'm trying to point out here. I think that your listing and subsequent clarification might suggest to many that all of the above are inadequate, and I imagine you may be turning off several (very good) candidates that doubt their own full-stack-worthiness, merely on account of the term here being so nebulous.
In other words, to any given pair of eyes that fall upon the ad, all they know is that you want everything.
Full-stack here seems to be about mindset not skill set.
I have a different criticism: it's hard to own the stack without being empowered to change it, to make wholesale changes. And that's hard to do as software grows and ossifies, as deployment gets more uncertain. To do full stack right you need to limit team size, I think.
But is the stack LAMP? And is the "P" Python, Perl, or PHP? What database are you using? etc.
The point is that we're not looking for specialists in any particular language.
To cure the curiosity, however, we're largely running on Linux, Apache, MySQL, PHP with many other tools thrown in the mix.
Question for HN, how do you generally feel about the 'Intrinsically Motivated' requirement?
I'm deeply motivated about a great many things that are important to me, but helping to implement or maintain someone elses idea isn't one of them.
For a price I'd be happy to turn up and give you eight hours of hard work per day. I take pride in my work, am passionate about improving my skills and would do my best to translate them into tangible benefits for your organization.
But my motivation for doing so would be mostly based on a financial arrangement, in other words, extrinsic. Does that someone like me shouldn't apply for a job posting like this or am I misunderstanding?
Recently I saw a post that quoted
The first you control, code quality, integrity, professional communication with team mates etc. The second is not entirely within your control and should not lead to anxiety.Derive your self-worth from the process not the output.Anyway, I would want to hire someone like that - more intrinsically motivated, than someone who is focused on building Facebook for dogs for an IPO.
I would pay good money, but not expect commitment to the mission, just commitment to intrinsically good code and practises.
That's my take
On a side note, now I understand why HN doesn't allow comments on job postings. This is a tough crowd.
It's not a tough crowd at all, the comments are all extremely reasonable and should be insightful to the job lister.
HN really should allow such comments, it would often help companies get feedback about why they are not finding the people they think they need.
But the comments have identified possible problems with the posting and have information about the company (complimenting the work experience there and explicitly explaining what technologies they'll use).
Well, I enjoyed the classics references. Had to look up Manichaeism (http://en.wikipedia.org/wiki/Manichaeism)
If I am intrinsically motivated, why would I work for somebody?
Because you can get behind what they do.
I like making things for people. At Etsy, for example, I like that the sell side of their audience are independent makers. I could easily imagine doing some user interviews, discovering something in their experience that can be improved, and then going out and making it happen.
Working with others can be preferable to working alone in that it's a lot easier to release something that helps a large audience. Because I'm not an idiot I would insist they pay me fairly, but my primary motivation would still be helping the users.
One can be intrinsically motivated and still need a steady income.
Etsy is a terrific company for development, especially for continuous delivery and how to build great systems. Their tech blog is excellent: http://codeascraft.etsy.com/
Yes, a beautiful job description. However, for me these two statements are inherently contradictory:
"You consider critical thinking to be among your core competencies."
"But technology is a means and not the ends for you, and you don’t flinch at the idea of writing largely PHP for a living."
I interpret this as "think critically, but don't criticize the technology choices we have already made."
Yes, technology is a means, but that does not mean that it's something to just mindlessly accept. This is particularly true in the realm of software where there are so many technological possibilities to choose from.
Well, they've ostensibly put tens of man-years into their architecture. I don't think any amount of critical thinking can change it significantly...
I'd never preemptively judge what could be done with an architecture without looking at it first. There are always creative possibilities, so if their is something wrong with their technology choice (not saying there is), then I wouldn't preemptively rule out being able to do something about it.
Of course, maybe sarcastic presumptuousness is what they are after? Why not send in your resume?
Oh, I'm sorry, I didn't realize my estimation was binding.
You saw a job posting and assumed that they treat their technology choices as unassailable and immutable, and I pointed out that it may not be economic for them to change their entire codebase. You seem to have turned this discussion into an argument about their codebase having a problem and requiring action. Who's being presumptuous?
"You seem to have turned this discussion into an argument about their codebase having a problem and requiring action. Who's being presumptuous?"
You are, and in a very ironic way. I never said their codebase had a problem. I don't know anything about their codebase. It might be just peachy.
Look at it this way. What if someone was hiring you to build pyramids by lifting each stone using only the narrowly prescribed box of using your own power (since "that's how we've always done it" say), they might also say that your focus on horses and pulleys was a wasteful obsession about means instead of ends and that you shouldn't flinch about dragging each stone yourself all day every day. They might think you are just wasting your time tinkering when you should be moving stones instead, but the truth is that your means are the only human way to reach those ends.
But again, their codebase might be perfectly fine. The thing is, I don't like to be told that I have to accept that it is before I've looked at it myself. They can have a really good hacker who will keep his head down, pump out code, and not question past decisions, or they can have critical thinking, but not both.