Dropbox is hiring a Web Engineer(dropbox.com) |
Dropbox is hiring a Web Engineer(dropbox.com) |
Preface: I am a virtual recruiter.
Employers have found success at shrinking their candidate pool when adding even the slightest text in their copy when it comes to ability requirements. Some of my early jobs required skills and qualifications I never achieved or experienced; but I landed the job because my resume was slammed pack with solutions, and details of problem solving (as opposed to creating a resume that told the hiring manager nothing more than what my daily tasks were)
Dropbox may have plans to groom this web engineer into a larger role within the organization, and that often works well within organizations; providing the avenues for upward mobility. However they'd do themselves, and their potential job candidates a favor by indicating this up front instead of effectively discouraging great prospects the opportunity to apply simply because of a degree requirement that will lead to a career trajectory that far overshoots roles and responsibilities listed.
A four year degree in computer science for someone to be a web developer and an end-user support technician is asking for overqualified candidates who will very likely get more attractive offers later on down the road. But that's not to say Dropbox wont make their stay worthwhile, overqualified or under.
Shameless: I'd love to reach out to the DB team and talk about this.
Some people apply to job postings with the assumption that the requirements are only a rough guideline, while others apply only if they exactly meet the qualifications.
When you hear hiring managers complaining about how they put up a job posting for a Perl developer with 5 years of Perl experience, but got 100s of applications from people that are fresh out of college and haven't even heard of Perl, hiring practices like the ones you advocate are at fault. If job seekers can never know when to trust that the qualifications being asked for are really the ones that employers want, then there will always be a disconnect.
obviously if you are an amazing engineer without a degree, of course come talk to us. arash, my cofounder and the slacker that he is, does not have his bachelor's degree :)
so hope you can give us the benefit of the doubt that we didn't intend to exclude qualified people
asks someone who barely has the UK equivalent of a high school graduation (because he was programming for his first startup at 16), no degree, and had a very successful engineering-orientated career so far
I already had been doing front-end stuff for several years. I wasn't any less able to perform the job than the CS graduate peers who started in the same role the same time as me.
11 years later, I've not done badly for someone with no formal CS training.
I have a BS in CompSci, and I don't feel like I needed to get it to do quality web programming. Design patterns, AVC, etc were all things that I learned outside of my degree.
http://siteanalytics.compete.com/box.net+dropbox.com/
no thanks.
Check their quantcast figures and you see a drastically different picture, with box.net way ahead. But in any event, page views probably are a very bad measure of these sorts of companies.
btw my post isnt trying to suggest either company is > than another, lets not get into that.
What's with the CS degree _requirement_ too? You don't really need 4 years of algorithms, data structures, operating systems, etc. to do what they want.
Meh, do not want.
As for the CS degree requirement, not having one myself I run up against this all the time. A good company will be able to test for equivalent capabilities. A CS degree from DeVry in 1995 is probably not the same as one from Stanford in 2006. But by setting it out as a requirement, you're sending a message to candidates. They don't want a programmer that stumbles about their job. They want one with certain analytical skills and a calculated approach to their job. No, you don't need a CS degree necessarily. But you probably want to be familiar with the material that having a CS degree would suggest you are familiar with.
No hiring manager worth their salt would turn away an exceptional candidate because of a lack of formal education unless there were some very specific professional requirements (e.g., you're hiring a professional engineer in countries that recognize them and you need somebody with a B.Eng. degree).
As for the CS degree requirement, no candidate worth their salt would send their resume to a place knowing that they lack the first item on the requirements list. You need to make it clear that you read and understood the post before applying (a.k.a. following simple directions).
They didn't put it under "nice-to-have", they didn't tuck "or equivalent experience" at the end. It's the first bullet on their "minimum-requirements" list.
I do not have a CS degree either, but I believe I can code with the best of them and I can rock their front-end world (I do not want this job though).
Had I been seriously looking for another job, I would have simply ignored their post and moved on regardless of compatibility because of that one liner.
My aesthetic skills are weak, and I am pursuing other goals long-term (much closer to the hardware), but do people think it would be a worthwhile tool to help prop myself up in the short-term?
So is HiiDef, creators and operators of Flavors.me, Goodsie, Dashboard.me and more!
Django, JQuery and/or *NIX administration.
We are distributed around the east coast of the United States, Canada and Australia. Everyone works on multiple sites simultaneously, making for a uniquely challenging and constantly changing work environment.
Email: jonathan@hiidef.com
I just can't figure it out, and it is bugging me. (Guess I won't get the job...)
there is an entire section dedicated to jobs at yc companies, it is not off topic
Anyhow, there is one spelling mistake on the second line under "Nice-to-Have's." IT should be proficient and not Profiient.
Not a big deal really but might turn away some language nazis.
I'm a very happy user of Dropbox's free products and I'm glad to hear they're growing.
I mostly don't have an agenda other than I don't take this internet stuff nearly as seriously as everyone else, and just want to use it as a medium of expression before it becomes too hard to do it. Whether that's writing, music, code, or just making funny sites poking fun at obnoxious blowhards, I'm enjoying it while I can.
Not only that, but lots of his projects are relevant to HN... mongrel2 seemingly started out as a fun little "how can I put these things together" project, MulletDB is similar, etc.
I guess he found thre DropBox job too "sys-adminy". I think this is a big problem, companies hire all programmers when they should really be hiring more sys-admins (and testers). Hackers don't want to be sys-admins or testers. Hire people who do want to do these jobs.
For example, peetercooper's obsession with me probably means he has a little drawer where he keeps a picture of me under his socks so he can look at me late at night. He's a weird little dude.
See? You can take any public persona, and since nearly everyone is these days with the internet, and say anything that's obviously not true, or mostly true, or a parody.
But, it cuts both ways. In order to say something about me, you have to then become a public persona, which means you're also fair game, and, well, I'm just better at this than most people. :-)
function countdown (num) {
for (var i = 0; i <= num; i += 1) {
var make_cb = function (n) {
return function () {alert(num - n)};
}
setTimeout(make_cb(i), i * 1000);
}
} function countdown(num) {
if(num < 0) {
return;
}
setTimeout(function() {
alert(num);
countdown(num - 1);
}, 1000);
}
Note: I'm aware that the dropbox version shows the first alert without any delay, whereas this waits a second before showing anything. This is slightly different behavior, but arguably acceptable. function countdown (num) {
for (var i = 0; i <= num; i += 1) {
setTimeout(function (i) {
return function(){ alert(num - i); }
}(i), i * 1000);
}
}
countdown(5); function countdown (num) {
for (var i = 0; i <= num; i += 1) {
let (j = num - i){
setTimeout(function () {
alert(j);
}, i * 1000);
}
}
}Traditional closure closes over the current variable values of a frame environment at each creation of an inner function instance. A new frame environment is cloned for the function instance with all the current variable values sealed. That's why it's called a closure; it's closed, sealed, that no one has access to it except the particular function instance.
Javascript cheats in its closure implementation. It doesn't create a new frame environment for each inner function instance, instead just references back to the parent's frame environment. Thus all inner function instances share the same frame environment. Any code in the parent function or in any function instance modifying a variable will instantly affect all the function instances. Closure has lost its meaning in Javascript. It should be called Shareture.
>>> map(apply, [lambda:i for i in range(5)])
[4, 4, 4, 4, 4]
* (mapcar 'funcall (loop for i from 0 to 5 collect (lambda () i)))
(6 6 6 6 6 6)
It's just that the looping constructs don't introduce a new binding, but modify the existing one. >>> map(apply, [lambda j=i:j for i in range(5)])
[0, 1, 2, 3, 4]
* (mapcar 'funcall (loop for i from 0 to 5 collect (let ((j i)) (lambda () j))))
(0 1 2 3 4 5)Grokking what's going on here is one of the more important parts of using closures without introducing unexpected bugs.
I found stuff I learned in my CS degree helped me understand closures in JavaScript for example, and the compilers course I did has helped out with a bunch of things.
The thing is - they do. Everything I was tested on in my interview was pretty analogous to something I've faced in my job. If you don't know your server's language, how will you write code that interfaces with the client-side software you're writing? If you don't know how to design programming languages, how do you evaluate various templating systems on the server side or JS libraries on the client side? If you don't know Big-O notation, what'll you choose when faced with the choice of attaching event handlers to each child in a DOM tree vs. using event bubbling and dispatching on the particular target? (Never mind that most Google interview candidates don't know about event bubbling in the first place and wouldn't be able to write a tree-walk if their job depended upon it.)
I'm a web UI engineer. My last two days at work were spent writing a JIT with LLVM for a templating language. Google Wave is all based on implementing operational transforms (a grad-level CS concept) in JavaScript. Maps has a fair share of computer-graphics concepts embedded in it.
You don't need to understand CS to do a web UI, but that limits you to the same type of web UIs that other people have already done. Pulling JQuery or Prototype snippets off the web and sticking them together. There's a whole other level of performance and flexibility you get by understanding the fundamentals, which most web developers completely ignore, and then they wonder why they don't need CS concepts.
function countdown(n) {
if(n >= 0) {
alert(n);
setTimeout(function() {countdown(n-1);}, 1000);
}
}alert(num--);
LoL.
EDIT: On second thought, does anyone even know if the scenario I mentioned above is plausible? I changed the alerts to console.logs and I'm finding it pretty damn impossible to not get the expected results using the "cheater way" even for large values of num.
And no, I don't think the potential problem you see is much of a problem at all. The function will keep executing even if the timers fire. As long as the timeouts execute in order and the countdown function is able to queue them in less time than they take to execute, it will work.
People like you however seem to like to only focus on my humrous rants as if that's all I've done, but whatever, I'm having fun and making awesome shit while getting to play guitar so if it pisses of a whiner like you then rock on.
<devil horns>
People like you however seem to like to only focus on my humrous rants as if that's all I've done, but whatever, I'm having fun and making awesome shit while getting to play guitar so if it pisses of a whiner like you then rock on.
That's a bilious response to "He did a good job of promoting himself through controversy." People like me? I made a neutral statement (even if it's incorrect), not anything malicious like "Zed's a loser because of X." This reminds me of the last time you thought I was attacking your character after a similarly neutral comment: http://news.ycombinator.com/item?id=1292335
Several months ago, you had a similar response on Twitter that involved a "quit talking smack or let's meet up and 'sort it out' in person" response after I made a casual quip in response to your then-latest rant. I e-mailed you an apology as a gesture of good will, to which I got no response.
You appear to interpret neutral comments as attacks or passive aggression. They aren't - at least from me. Or perhaps you're having the same back and forth with 1001 other people, I don't know :-)
Are these reactions because a page on my site ranks #4 for your name on Google and is packed with negative third-party comments about you? http://www.rubyinside.com/zed-shaw-goes-nuclear-on-our-commu... .. You've mentioned online comments affecting your job prospects before, so it's just a wild guess. If it is, I'll delete the negative comments and change the headline or something, because these responses are worrying and sure, I'd rather focus on the cool things you're up to than have this old "stuff" bubble up every few months.
I have, as a tech lead for a software company. I don't know how other places do it, but there's simply not enough time in the day to read every single resume/cover letter that you get.
You post a job-ad and you're drowning in resume`s and cover letters in less than 30 minutes. I also want to say that 80-90% were under-qualified and most of them didn't even follow simple instructions in the ad.
You won't believe the amount of cover letters saying things like "I have never used Linux, but I've been working on Windows for X-XX years", when the job title was "Senior Linux Systems Administrator".
When we put requirements, we really meant them. We never inflated the requirements or asked for the impossible (28+ years experience in PHP).
Our process went kind of like this: 1) Scan cover letter quickly to weed out incoherent applications 2) Scan resume (again quickly) and look for minimum-requirements 3) If 1 and 2 were met put resume/cover letter in the "good candidates" folder 4) If "inbox" is not empty, go to step one, otherwise: 5) Go back and read cover-letters/resumes in more detail
The one exception would be if something in the cover letter or resume caught our attention, we'd then read it in detail then and there.
For all I know, DropBox might have a serious need to have this position filled by a CS graduate. I doubt it, but it's a possibility. Another commenter here said something about planning to have this position evolve into something more "intense" in the future where a CS degree would be seriously needed. That's a legitimate "theory".
All I was criticizing was that the job requirements do not warrant a CS degree, and that they are probably turning away possible good/great candidates.
Would you reject me?
I guess your answer says a lot about the type of hiring process you have. But if I were the hiring manager, my immediate reaction would be "Fuck the posted requirements, this candidate has demonstrated that he's more than qualified for the job." The same goes for any other significant achievement. The requirements are there to give prospective candidates some idea of what we're looking for, but the ultimate trash-or-interview decision involves the whole package. If a candidate shows strengths in areas we didn't anticipate, so much the better. If they're missing one of the requirements but nail the rest, I'm not going to turn them away for that.
I've never been drowned in resumés so maybe my opinion would be more along the lines of yours if I had been. It's a job seeker's market up here in Toronto. I think the most resumés I've had to deal with for a particular position is a couple of dozen. When I was hiring I would only post the job ads at places like JoelOnSoftware's job board. I'd never post it on Monster as I consider places like that to attract too many poor quality candidates.
I just ignore the requirements - mostly - and if the job sounds interesting, I'll send them a note saying why it sounds interesting and why I believe I'm qualified. Let 'em reject me later, once they've got a bit more information, or vice versa.
I am indifferent on Shaw, the man, but from what I have seen of him, he only discusses controversial ideas.
He was never the face of Dropbox, not a founding member, doesn't sit on the board, and absolutely has zero visibility wrt Dropbox. Inquiring about his fate with them and his employment status (and digging for gossip) is nothing but prying on the man's privacy, and making his career a public spectacle for his gleeful adversaries.
Sure, he brought this upon himself for being opinionated, but let's cut down on the tall-poppy syndrome here. The man is entitled both to his opinions, and his privacy.
Your comment is a good warning against making generalizations about people's behavior considering you spent the next three paragraphs doing just that ;-)
he only discusses controversial ideas
Seriously? Zed Shaw loves to rant about people. Ranting about people brought him into this tiny, niche internet spotlight in the first place. And have you even looked at http://oppugn.us/? Apparently not. > small minds discuss people.
Are you really claiming that anyone that talks about people is a 'small mind?' When my daughter gets older (old enough to talk) and I ask her how her day was, does that somehow lower my intelligence and make my expertise suspect? > average minds discuss events
If your building is on fire, does it lower your intelligence to talk about it because it's not abstract enough?There's no familial or social need, or any self-preservation need, to gossip about Zed Shaw.
Or maybe I am wrong, maybe gossip and backstabbing are perfectly on-topic here. Dunno.
Of course not, when your daughter is young it is entirely appropriate to talk about things she and her friends of done, or what her favorite actress or pop star has done. I think the "small minds discuss people" was referring to older people with a potential for more important discussions, and what they do in fact discuss.
Then again, posting on this particular HN post doesn't say a lot about my large-mindedness either, so I'll just shut up now. :)