×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Are Contests the Best Way To Find Programmers?

timothy posted about a year ago | from the be-the-19th-caller dept.

Programming 260

Nerval's Lobster writes "Tech firms are engaging in several non-traditional hiring methods, from programming contests to finding the right people via algorithm. One of the more popular methods: set up a coding challenge or programming contest to bring out interested parties, with the top prize being a trip to the sponsoring company's headquarters to interview for a job. Look at what Facebook is doing in this area, sponsoring several Kaggle.com programming contests to find the best programmers; it also makes use of the site InterviewStreet to screen potential applicants. In theory, any company can build and run a contest online. But is it really the best way to go about hiring a programmer (or any other tech-minded employee, for that matter)?"

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

260 comments

Contests are the best way... (5, Insightful)

olsmeister (1488789) | about a year ago | (#43653747)

to find programmers who like contests.

http://www.linuxadvocates.com/p/support.html (-1)

Anonymous Coward | about a year ago | (#43653769)

Dear Linux Advocate,

Money doesn't grow on trees. And, Linux Advocates is growing. Naturally, we anticipate operating costs and hope to be able to meet them.

But, any amount you feel you are able to donate in support of our ongoing work will be most surely appreciated and put to very good use. Your contributions keep Linux Advocates growing.

Show your support by making a donation today.

Thank you.

Dieter T. Schmitz
Linux Advocates, Owner

http://www.linuxadvocates.com/p/support.html [linuxadvocates.com]

Re:Contests are the best way... (4, Insightful)

dkf (304284) | about a year ago | (#43653839)

to find programmers who like contests.

or who like gaming contests.

Re:Contests are the best way... (4, Funny)

i kan reed (749298) | about a year ago | (#43654017)

to find programmers who like contests.

or who like gaming contests.

That is to say future business leaders.

Re:Contests are the best way... (3, Insightful)

jellomizer (103300) | about a year ago | (#43654029)

Is it the best way.
Those are closed minded questions. Contests are a good way to find a particular type of developers. Normally the developers who write code that is Quick, and often elegant in its solution. However they usually fail on code that is is easier to maintain, or requires bigger picture development.

I use to be a hot shot developer and over the years I have cooled down and changed my tactics. Everyonce in a while I get into arguments with the new kids about how to do things, I tend to bring up adding hooks for those "Oh By the ways" that come up. For some cases I propose not to strictly type particular class elements and use more generic templates, or just use an enumerated array vs an other class. Just because I know the nature of what the Oh By The ways have without knowing what they are going to be. But it often requires adding extra detail, or sending different types of data, not in the specs. So instead of a rewrite of a class it is just a slight modification.

Re:Contests are the best way... (5, Insightful)

Anonymous Coward | about a year ago | (#43654103)

Because the best programmers don't take time to thoroughly analyze the problem, look for process alternatives, look for opportunities to adapt existing code base and propose integrated solutions. They just jump right in a create a quick, one off and specific solution.

Re:Contests are the best way... (5, Insightful)

David_Hart (1184661) | about a year ago | (#43654105)

to find programmers who like contests.

...and who have time to participate in contests

Re:Contests are the best way... (2)

DudeTheMath (522264) | about a year ago | (#43654775)

My mod points seem to have vanished early; I thought I had two left for today.

This is exactly my first thought. I like contests, but I've got a family with other obligations that, for example, prevented my participation in the recent Hillsborough County Hackathon right here in Tampa (as reported [slashdot.org] on Slashdot).

Re:Contests are the best way... (5, Interesting)

Anonymous Coward | about a year ago | (#43654317)

"Wanted: highly intelligent but deeply insecure attention seekers woefully ignorant in the larger ways of life. Must be easily manipulated and enthusiastically embrace indentured servitude for life (or until we deign to discard their burned-out husks). Will pay big shiny baubles and provide free desk, chair and leg iron benefits. Those with any self-respect or business acumen need not apply."

counteroffer (1, Insightful)

udachny (2454394) | about a year ago | (#43653789)

How about some programmer sets up a contest, where interested companies can compete for that programmer (an auction maybe)?

Re:counteroffer (0)

Anonymous Coward | about a year ago | (#43654897)

That's standard practice already. You interview several places and let them bid against each other if you get more than one offer. At the end of that you can accept whichever offer you want.

Winner! (0)

Anonymous Coward | about a year ago | (#43653819)

Contests are a great way to find people who can win contests.. And, as we all know, Racing for an answer is obviously the best marker for finding the great programmer.

Honest, and a bit more objective (1)

Anonymous Coward | about a year ago | (#43653825)

It's honest (that you are competing with other, perhaps qualified, candidates); and a bit more objective, in that you don't have HR weeding people by the wrong metrics.

It's also a blantant attempt to get people to work for free.

NO (5, Insightful)

Anonymous Coward | about a year ago | (#43653837)

No experienced competent software engineer would ever enter one of these code contest. If you need good engineers try offering the best compensation and the best working conditions.

Re:NO (5, Interesting)

ShanghaiBill (739463) | about a year ago | (#43654565)

If you need good engineers try offering the best compensation and the best working conditions.

Pro tip: Providing bad engineers with good pay and better working conditions doesn't make them into good engineers.

Good pay and good working conditions will allow a company to be more selective about who they hire, but they still need some way of selecting the good ones. Many companies fail badly at this. I have worked for several that paid well, and ended up with salaries that were negatively correlated with competence.

Re:NO (0)

Anonymous Coward | about a year ago | (#43654821)

If you need good engineers try offering the best compensation and the best working conditions.

Pro tip: Providing bad engineers with good pay and better working conditions doesn't make them into good engineers.

Good pay and good working conditions will allow a company to be more selective about who they hire, but they still need some way of selecting the good ones. Many companies fail badly at this. I have worked for several that paid well, and ended up with salaries that were negatively correlated with competence.

Exactly. A contest will only let you hire someone for their first job. After that, you have to figure out how to keep them. There are plenty of companies out there that know how to find a programmer. Many don't know how to keep them. IT doesn't take long for a savvy person to determine their worth. The most these companies can hope for is some one who comes from a background that doesn't understand salaried work. I know, it happened to me and I make a point of telling new programmers exactly that.

Re:NO (0)

Anonymous Coward | about a year ago | (#43654723)

Most of the competent software engineers (representing the industry's top talent) are already employed. Poaching them is difficult, expensive, and risky.

Some of them are unemployed, of course, and some of them are employed but looking. However, since they are talented and in-demand, that percentage is small. Filtering the set of applicants down to these is also difficult, and doesn't always succeed (you wind up with the job-hoppers who interview well but don't perform well, or the loyal ones who have deep knowledge of one specific industry or business which doesn't translate well to your industry and business, making their ramp-up time lengthy and expensive).

So, even though there is a potentially high payoff to getting top talent (they are superstars once they are onboard, ramped-up, and incentivized to be loyal), the odds against succeeding are high, and the costs are high.

It makes far more sense to try and pull the cheap-but-full-of-innate-talent self-starters out of the teeming masses of unemployed or mismatchedly-employed middle-tier-talent software developers. Hopefully they can be made into top-tier talent that you already own as they gain experience, or they can remain cheap enough that they are worth keeping even though they aren't on top.

Re:NO (1, Interesting)

Cammi (1956130) | about a year ago | (#43654891)

Noticed they said "Programmers" not "Software Engineers", there is a HUGE difference between the two. Programmers are peons who design nothing, just code what they are told to code. Software Engineers design the applications/software from the ground up, has a game plan ready AND programs. These companies only want Programmers.

Hmm.. a reality show in the making? (1)

Anonymous Coward | about a year ago | (#43653863)

Reminded me of this reality show called Hell's Kitchen where the winner gets to become new head chef

No, because (0)

Anonymous Coward | about a year ago | (#43653875)

People do not buy, marry, or hire based solely on objective criteria. In fact, most of those objective criteria really become subjective after they pass through the lens of the people doing the buying, marrying, or hiring ("yes his algorithm was O(N-squared), but I liked the way he structured his code and added those unit tests..."). I've seen this before.

maybe, maybe not (4, Insightful)

ganjadude (952775) | about a year ago | (#43653879)

I believe that this is a good way to bring in young talent, people in college or kids who dont have a formal education but are self taught and need a shot.

I dont expect this to be a good method for bringing in top level experienced workers however.

Re:maybe, maybe not (0)

Anonymous Coward | about a year ago | (#43654169)

I believe that this is a good way to bring in young talent, people in college or kids who dont have a formal education but are self taught and need a shot.

  I dont expect this to be a good method for bringing in top level experienced workers however.

It serves it's purpose. If you want experienced workers they will have references. The contests are there because formal education isn't up to par when it comes to computer sciences.
If you hire someone based on formal education alone you are more likely to end up with a person with an inflated ego but can't code for shit. (Yep, sadly universities allow those people to get through.) If you hold a contest you will know that the person at least knows how to compile the software.
If you want skilled programmers without having to go through too many contenders then you hold a contest where formal education is the minimum requirement but then you might miss out. It's better to just increase the difficulty.

Re:maybe, maybe not (0)

ShanghaiBill (739463) | about a year ago | (#43654783)

If you want experienced workers they will have references.

Yes, and the number and quality of those references will be completely uncorrelated with ability. Over a thirty year tech career I have been involved in hiring hundreds of people, I have found references to be pretty much worthless. Why should their previous employer care if you make a bad hire? If they are a competitor, they could even benefit from it.

Time factor and software context (5, Insightful)

PseudoCoder (1642383) | about a year ago | (#43653895)

Maybe I misunderstand the nature of these contests, but what I produce in 4 weeks is different than what I produce in 4 days. I have to make serious trade-offs that will impact the software design significantly and will not reflect what my vision would be for the "big picture" goals like clarity, maintainability, modularity, safety, error handling and all manner of best practices.

I wouldn't want a prospective employer to judge me based on the stuff I can churn out in a flash, unless that's the nature of the work they have in mind for me.

Re:Time factor and software context (0)

Anonymous Coward | about a year ago | (#43654241)

I wouldn't want a prospective employer to judge me based on the stuff I can churn out in a flash, unless that's the nature of the work they have in mind for me.

So interviews are out? Or do you want a 4-week interview? 4 days sounds like a great way to judge the person's ability to get the job done within a time constraint without the handwaving or on-the-spot nature of an interview, if this really is a 4-week problem. If it's a simpler, totally reasonable 4-day-or-less problem, why do you need 4 weeks?

Re:Time factor and software context (1)

Charles Duffy (2856687) | about a year ago | (#43654715)

So interviews are out? Or do you want a 4-week interview?

I'd think that looking at my github account would make more sense.

If it's a simpler, totally reasonable 4-day-or-less problem, why do you need 4 weeks?

Because working on a big project can require kinds of discipline that small projects don't, so hiring someone to work on big projects based only on how they perform on small ones is a good way to get mislead. Note that I said "only". In-office code screens are essential; they just aren't sufficient.

Re:Time factor and software context (1)

Ashenkase (2008188) | about a year ago | (#43654885)

on-the-spot nature of an interview

Yep, the last thing you would want to do is actually "talk" to a candidate.

Re:Time factor and software context (2)

geekoid (135745) | about a year ago | (#43654395)

Any company looking for programmers the can churn code out in 4 days and not care about quality isn't an organization I want to be part of.

Who has time? (5, Insightful)

serviscope_minor (664417) | about a year ago | (#43653897)

I'm not going to go out on a limb and claim to be one of the best programmers.

However, I don't have time to do programming constests with my day job being rather busy. I generally give a lot to that job so I'm not going to spend time coding when I get home on the weekend.

I'd imagine that I'm not particularly unique in this regard.

On the other hand, you wil find good programmers who have no time commitments other tha coding, so I guess it does work out well.

Re:Who has time? (4, Interesting)

i kan reed (749298) | about a year ago | (#43654049)

Now, if I were in charge, what you just said wouldn't be a reason to not hire you. There are lots of good programmers who don't have time for extra programming, but the best programmers, in my experience, are those who really enjoy it, and will take on small projects for fun from time to time.

Re:Who has time? (2)

bad-badtz-maru (119524) | about a year ago | (#43654157)

Is your first sentence a boolean logic test and you would've hired him?

Re:Who has time? (1)

i kan reed (749298) | about a year ago | (#43654251)

Sort of. Double negatives have value in communicating certain complex ideas in the space of first order logic. Not for all people like GP not would hire the OP. There are other ways of semantically communicating the same idea, but that's the way I chose this time.

Re:Who has time? (0)

Anonymous Coward | about a year ago | (#43654569)

but the best programmers, in my experience, are those who really enjoy it, and will take on small projects for fun from time to time.

Two things:

1) Programmer is ambiguous. Best CODERS != Best Software Engineer. Most companies want the latter, who aren't always 23 and live alone.
2) Those with small projects are probably engrossed with them and aren't looking to do random contests.

Something is wrong with this picture. (4, Insightful)

wcrowe (94389) | about a year ago | (#43653915)

Let's see if I've got this right: there is such a shortage of programmers in the U.S. that we have to raise H-1B visa limits in order to supply them, and yet companies have to create hiring contests in order to screen the overwhelming number of applicants?

Re:Something is wrong with this picture. (1)

cyberjock1980 (1131059) | about a year ago | (#43654115)

I agree with your logic. And while I don't share this opinion, but aren't these large companies wanting to raise the H-1B visa limits because of allegedly poorly trained/inexperienced programmers? If this is truly the case then I could see why raising the visa limit AND screening applicants via hiring contests would still be a logical solution.

Re:Something is wrong with this picture. (5, Interesting)

geekoid (135745) | about a year ago | (#43654451)

" but aren't these large companies wanting to raise the H-1B visa limits because of allegedly poorly trained/inexperienced programmers?"\
no. They want highly trained and experienced people to work for cheap.

We have plenty of programmers in the US, but we have the gall to want to be reasonably paid.

Re:Something is wrong with this picture. (2)

Nidi62 (1525137) | about a year ago | (#43654143)

Let's see if I've got this right: there is such a shortage of programmers in the U.S. that we have to raise H-1B visa limits in order to supply them, and yet companies have to create hiring contests in order to screen the overwhelming number of applicants?

Well, you have to see what exactly the best programmers have on their resumes so you can tailor job opening announcements to specifically avoid them so you can claim a shortage so you can bring in that H-1B holder at a fraction of the price. Either that or just tailor the contest so that no one wins, and claim that this indicate there is no one in the US qualified for the position.

Re:Something is wrong with this picture. (0)

Anonymous Coward | about a year ago | (#43654279)

Maybe they have a stack of applicants. That does not mean they are any good.

When I graduated 20 years ago. I sat in a lab cranking on a program. Someone came in asking rudimentary questions about C. This was a graduate student. I asked them 'how many languages have you learned so far'. 'Well this C thing is the first one'. I expect it is still possible to get thru college with 0 coding and be a 'programmer'.

Now to the company they are looking for experience. They however are unwilling to give people that experience. So the training will be minimal and they will want you to 'hit the ground running'. When the reality is, even for offshore, you spend 2-3 months training anyway...

Re:Something is wrong with this picture. (0)

Anonymous Coward | about a year ago | (#43654227)

Applicants aren't necessarily competent just because they apply. The challenge here seems to be to extract the small number of worthwhile employees from a large pool of incompetent applicants. If the small list happens to be 50% foreign, then you need to get H1Bs. There could be too many H1Bs, but your argument doesn't show that.

Re:Something is wrong with this picture. (1)

dkleinsc (563838) | about a year ago | (#43654231)

A quick look at the economics dictionary would tell the story of why there's a shortage of programmers.
Shortage (n): Not able to buy something at a price you are willing to pay.

Re:Something is wrong with this picture. (2)

Njovich (553857) | about a year ago | (#43654557)

Actually, it's the other way around, in layman's terms it is 'Not able to buy something at a price you are willing to pay.', in economic terms, what price you are willing to pay is irrelevant, if you are not willing (or able) to pay the price that it costs, you are not considered part of the demand side of things. Look it up. Of course, in no way am I implying that this is a free market with perfect competition. Most journalists or HR staff are not really economists of course...

About this case: The reality is that if you place a job advert for a programming job, you get lots of totally unqualified people applying to your position. Many of them lying about their skill. Sometimes skillfully lying about their skills. Many of those you would never ever let touch your own projects. Finding a way to weed out the crappy applicants is a real world problem for real world people in IT that are not always so different from you or me.

Re:Something is wrong with this picture. (2)

Rakishi (759894) | about a year ago | (#43654427)

Shortage of competent programmers. There is a difference. A guy who spend three days reading a "java for dummies" book may be applying for a programmer position but he isn't a competent programmer.

Someone wrote a bit back that 70% of their applicants, who passed the HR screening I believe, couldn't even code fizz-buzz. As in couldn't code it at all, not even badly or not even mostly.

Am I missing something here? (1)

gottahavea (867879) | about a year ago | (#43653917)

What is the 'industry standard' anyway? If we're going to have one how about 0.0001. One error in 10 million lines. I mean, if we've got 0.66 for the linux kernel and its say 7 million lines thats 4620 errors. Now do the same math with x zillion LOC for (add you favourite: Windows, Oracle, ...) and its rather frightening.

Re:Am I missing something here? (0)

Anonymous Coward | about a year ago | (#43654275)

It would appear that you replied to the wrong article, and are thus completely off topic.

However, considering the general level of quality found in Slashdot comments, I wouldn't imagine that anyone will actually notice. (At least it's better than reading about HOST files.)

Re:Am I missing something here? (0)

Anonymous Coward | about a year ago | (#43654281)

What is the 'industry standard' anyway?

If we're going to have one how about 0.0001. One error in 10 million lines.

I mean, if we've got 0.66 for the linux kernel and its say 7 million lines thats 4620 errors. Now do the same math with x zillion LOC for (add you favourite: Windows, Oracle, ...) and its rather frightening.

Wrong thread ;-P

Contests ARE the best way... (0)

Anonymous Coward | about a year ago | (#43653923)

... to decide anything.

Line them up at the start, fire the gun and watch them go! See the leaders drive the struggling second-raters noses into the dirt!. This is a great country, and it was built on being the best at everything. Don't settle for second-best - 'cause second is a LOSER!

Re:Contests ARE the best way... (0)

Anonymous Coward | about a year ago | (#43654421)

If you're not first you're last! Shake aaannnnd Bake

The best way to find programmers (4, Funny)

The Evil Atheist (2484676) | about a year ago | (#43653927)

Interview question #1: Explain why you hate C++ Interview question #2: Justify why you repeated soundbites about C++ and not formulate your own explanations Interview question #3: Explain why you like Java or C# better Interview question #4: Justify why you didn't know that C++ can also do those things

Re:The best way to find programmers (1)

CTalkobt (81900) | about a year ago | (#43654301)

Interview questions that start with a false premise are usually places to avoid.

Re:The best way to find programmers (1)

nedlohs (1335013) | about a year ago | (#43654321)

1. I don't.
2. I didn't.
3. Java is better at some things, C++ is better at other things. I assume C# must be good at something but I know nothing about it.
4. I didn't say it couldn't.

Obviously I don't want to work at a company that has complete morons making hiring decisions, so no I really don't care that I failed your interview questions.

Re:The best way to find programmers (0)

Anonymous Coward | about a year ago | (#43654499)

no I really don't care that I failed your interview questions.

... or maybe you passed with flying colours!

Re:The best way to find programmers (2, Funny)

Anonymous Coward | about a year ago | (#43654343)

Interview question #1: Explain why you hate C++ Interview question #2: Justify why you repeated soundbites about C++ and not formulate your own explanations Interview question #3: Explain why you like Java or C# better Interview question #4: Justify why you didn't know that C++ can also do those things

  • #0: It is useless syntax sugar over C.
  • #1:You would not understand anything else then 'soundbite'.
  • #2: Java and C# are proprietary crap that only amount to event more high-fructose syntax syrup.
  • #3: C is sufficient for any project. OO is a design, not a language.

Let me ask you one question; Why didn't you start numbering your questions with zero?

Re:The best way to find programmers (0)

Anonymous Coward | about a year ago | (#43654351)

Is the answer to all of the above questions 'Reflection' or 'Garbage Collection'?

When do I start?

Nope (0)

Anonymous Coward | about a year ago | (#43653933)

You end up with a hyper competitive monocultur. (brogrammer culture)

NO! (0)

Anonymous Coward | about a year ago | (#43653941)

i doubt it. these contests generally encourage a programmer to quickly hack a program together while discouraging them from factoring out code correctly, creating useful abstractions, and even considering documenting source.

don't participate! (0)

Anonymous Coward | about a year ago | (#43653951)

I've seen the ridiculous ads from companies that want you to solve a programming challenge before you can apply. these tend to be the companies that also expect you to do overtime without compensation. after all, they are performing a first test already whether you are prepared to work for free!

They'll just leave. (0)

Anonymous Coward | about a year ago | (#43653985)

Why hire the best programmers? They'll just leave for another company after a few years. Hire the ones that are grateful to have a job, they'll stick around.

This can't be the best way to program (1)

Thomas Dalbo (2840609) | about a year ago | (#43653995)

Seriously, I'm putting the blame on Hollywood for this one. Contests are just like the SAT - you have to train for it. It's a specific type of programming, and I don't think it necessarily brings the best coders. The snacks are always a great plus though.

Sure (0)

Anonymous Coward | about a year ago | (#43654015)

..If you're after kids with enough free time to worry about your contest, rather than pros who spend their time solving actual problems.

Depends on What You Need (2)

Nethemas the Great (909900) | about a year ago | (#43654023)

It kind of depends upon what you need. Contests will find puzzle solvers, those that would work reasonably well doing research. Contests however, will not be very effective in finding the "big picture" folks that are needed to develop clean, robust architectures. I suspect they may well select against them. You will also almost certainly limit your applicants to college kids, and/or recent graduates looking to establish themselves not those that have already proven their abilities.

nope (4, Insightful)

JustNiz (692889) | about a year ago | (#43654043)

....all those competitions do is find the fastest programmers.

Fast usually means hacky. it definitely does not equal good, but unfortunately many managers dont understand that concept because they all subscribe to the "make it fit in my microsoft project plan" mindset.

Sadly, In this culture, poorly engineered and buggy software and the corresponding very costly rework have just become accepted as unavoidable even though its actually not.

Its actually much cheaper in real (but unfortunately largely hidden) costs to take the time to get it right before you deliver to the customer.

I'll take the programmer who loses these competitions because they took the time to do a robust job thanks.

Re:nope (1)

Zero__Kelvin (151819) | about a year ago | (#43654473)

I almost agree with you. I'll take the programmer who would have lost because they took the time to do a robust job, but didn't because he didn't waste his time and focused on something productive instead.

Re:nope (0)

Anonymous Coward | about a year ago | (#43654559)

Companies do not want manageable or robust code.
You deliver on time and according to specification with the price that is negotiated.
The customer will always want something to be fixed. For example they might have failed to specify that the software should work on the latest windows version.
Now the customer will have to choose between the cost of you cleaning up the program or hiring someone else to rewrite it form scratch.
As long as fixing the badly written and hurried code doesn't take longer time than rewriting it the customer will be better off staying with you than finding someone else to rewrite it. (Unless they realize that they want more things that they didn't think of yet.)

Re:nope (1)

Anonymous Coward | about a year ago | (#43654825)

You clearly don't have any experience with such competitions. You usually get zero points in these competitions if your program does anything wrong and you get a penalty every time you submit a wrong program - if you are even allowed to resubmit after that. In most cases, the more significant challenge is not typing stuff out on the keyboard quickly. The challenge is in figuring out a solution that is simultaneously efficient enough that it can be accepted and simple enough that you can implement it correctly within the deadline.

The kinds of people who win these competitions are highly intelligent, they are world-class experts on algorithm design and data structures, they are able to write code quickly and with few bugs, they are good at thinking of corner cases and coming up with tests for those and they are able to identify bugs very quickly. It's no wonder companies want to hire these people.

You are right that programming competitions like these do not measure the ability to write code that is readable to other people. There is no guarantee that these people can get along with other people or communicate effectively. The competitions do not involve finding a good design for a large system. These skills are not measured and therefore neither are they penalized - there is no reason to think that competition winners would be worse at these things than average. If you are smart enough to win such competitions, you are likely a quick study who can learn new skills rapidly.

Definitely better than HR (0)

Hentes (2461350) | about a year ago | (#43654055)

It don't know if it's the best, but it definitely tells more about coding abilities than questions like 'what is your biggest weakness?'.

Not great programmers (1)

Zadaz (950521) | about a year ago | (#43654087)

Contests only gather a weird, smallish subset of programmers who are good enough to win a contest, but who have the spare time[1] and will[2] to enter a contest. [1] This means they have little internal motivation because they're not otherwise working on something that inspires them. Good employees have internal motivation, bad ones need Management to whip them, which is what you'll get here. Instead find those who contribue to open source projects or who spend free time giving stellar information to the programming community. (Blog posts, Stack Exchange, etc.) [2] Again, motivation. What are they really trying to get by competing in the contest? Can you, as an employer, provide that same motivation on a regular basis? Probably not. So once again you'll get a pretty great programmer who underperforms.

Re:Not great programmers (1)

Pinky's Brain (1158667) | about a year ago | (#43654625)

Dunno if that level of self motivation is necessary a good thing for a large company, for which it's impossible to really bind employees emotionally ... seems to me self motivated people will also be more motivated to search out opportunities and jump ship faster.

Depends on what your company does (1)

Begemot (38841) | about a year ago | (#43654133)

If your company can offer the combination of difficult tasks, aggressive schedule and high benefits, go for it.

Otherwise you don't need the IT recons, deltas and rangers. They would die of boredom in your place. Let them go to cool startups, googles and facebooks, for the challenge they're worth.

The real best way to find a great programmer (1)

argoff (142580) | about a year ago | (#43654187)

You see, between all the proprietary crap messing with peoples heads, and all the technology egos, and those daytime prisons they call public schools, it becomes really hard to find a good programmer.

IMHO, the best way to find a great programmer is to find some high-school kid who hasn't been corrupted by the public school system, who can think analytically, and who has a good attitude, and train him.

Let's continue the lack of dignity for IT (5, Insightful)

bstarrfield (761726) | about a year ago | (#43654217)

Programmers and related IT folk are the absolute bottom of the corporate barrel - below custodians, below security guards, below the cafeteria staff. Only programmers / analysts / sysadmins / etc. are expected to take 6 month "contract-to-hire" positions. Only IT professionals can work in a job hierarchy with very few, if any, opportunities to advance to senior management. Mainly only IT professionals are told to take salary cuts, work extra hours, and train their successors due to outsourcing.

And now you want a contest to decide who to hire? Do accountants, operations staff, finance staff, and marketing have contests to see who will be hired? Even in sales you're hired for a position - you need to meet your quota, but there's none of this patently demeaning treatment of IT professionals as mere expendable cogs in the machine.

So what if you win the contest? Are you expected to perform at that amped up level every day of your work career? Are you supposed to quit when some new young buck / buckette does better in the contest next year? Is your education, prior experience, ability to work with others totally irrelevant? And damnit, do you have any sense of dignity in your job?

I've worked in IT for 15 years. During that time I've seen friends from undergraduate days and graduate school days move steadily up the ladder while nearly every person I've worked with in programming are stuck in the same ruck - everyone's a "Senior Engineer" or "Architect." And now we can look forward to job duels? Coding against each other endlessly in a competition to stay gainfully employed.

Don't accept this garbage. Being a productive employee is far more than just the ability to spew some excellent code in a contest. We have to make our field a profession, not a joke.

Re:Let's continue the lack of dignity for IT (2)

Viol8 (599362) | about a year ago | (#43654447)

"During that time I've seen friends from undergraduate days and graduate school days move steadily up the ladder"

Why care? Management is for a dead end "career" for losers who weren't up to their original roles and greasy pole climbers.

Programming is a profession. You wouldn't ask a top surgeon why he hasn't been "promoted" to a management position so why would ask a programmer the same question?

Re:Let's continue the lack of dignity for IT (0)

Anonymous Coward | about a year ago | (#43654571)

Dude where do you work? It sounds like it sucks there. From my experience the only time you see 6 month contract to hires is when you are caught in the sewer of dealing with techincal recruiters. If you go the route of being hired full time you can avoid that trap and not get stuck with the stimga of coming in from an outside source. At a certian point in your career you should be able to build a good enough network of contacts so where if you need a job all you have to do is go to happy hour with former coworkers or call up old managers and send out feelers. If you were a good employee you shouldn't really have that much of a hard time getting someone to bite.

As far as not advancing to senior management. Not everyone in every other field like accounting, etc get promoted into managment either. A company isn't going to risk promoting someone to management if they don't think they can handle it. I've seen guys from the IT field move into management as they go along. But along with anything else theres a lot of IT guys that don't have to skills to be a team lead let alone be promoted into C management or above. But that could also be said about people in other career fields as well.

And where I have worked I've never seen talented guys asked to take paycuts and if they did I never seen one that couldn't get another job in a few days if they were dissatisified.

Look at Pwn20wn at CanSec West (1)

GPLDAN (732269) | about a year ago | (#43654243)

Pwn20wn is probably the high bar for programming contests. Charlie Miller can walk in there and drop a 0-day for Chrome on the judges and walk out with a check for $100k. Is this not the market at work? Is browser sandbox security now such an integral part of the internet security landscape that it warrants the need to pay, and pay fruitfully for the knowledge of how these exploits work? A young guy, maybe 18, nobody heard of, with no real internet 'cred' from Eastern Europe, who had no real degree or CS education, walked in with an IE9 exploit that defeated DEP once it broke out. It also worked around address randomization.

Unless that guy shows up and earns his rep that way, what's he going to do? Just start a blog and put the exploit code on it?

I would argue that these programming contests are pure market forces, about as pure an application of the free market as one will see on the world stage.

It's teamwork, stupid (2)

accessbob (962147) | about a year ago | (#43654247)

Yes it is important that the candidate can program and can problem solve, but its not often that individuals analyze, design, code, and test an application, you work as part of a big team.

Further, a team of egotistical coding superstars is never going to be an effective team. Dull plodders who have an attention to detail are as important as the superstar programmer. You have to have a mix.

So yes, there may be a place for coding challenges, but a good coder is not necessarily a good analyst, a good tester, or a good integration guy.

And given the above, the only tests I'd want to see are those conducted at the company where you can ask "Why that way? Why not this way? What if I needed these changes now? How would you scale that idea? How could you best document that for the testers? How could you make that easier to integrate with this?". It would be difficult to get any of that out of a coding challenge.

Yeah, it's a great way to judge... (1)

Assmasher (456699) | about a year ago | (#43654367)

...their:

          Experience
          Work ethic
          Ability to work with others
          Software ENGINEERING capabilities (not to be confused with 'programming')
          Et cetera...

Debugger Programmer Or Startup programmer Or Fun? (0)

Anonymous Coward | about a year ago | (#43654405)

Debugger Programmer.
Work Age 24 till 30 or 27 .Stop become analysis,then become project manager.And the new cycle continue. Bugs and bugs repair.
Workplace environment : government contract
Salary : very minimum.
Start up Programmer
Work at youngster Age, do what ever they like.might get profit.
Salary : can be 0 can be millionaire
Fun Programmer.
Not ask do the job,but wanted to solve current job with programming. Does mean have CS degree.

Bidding (1)

sesshomaru (173381) | about a year ago | (#43654493)

In Bioshock Infinite, Fink allowed potential to employees to bid on jobs. "Who can do it in 30 minutes?" I have 30 minutes. How about 15, who'll bid 15."

Utopia.

Although some might think it's insulting to a professional to have to bid for a job and pay for the bid with free work, I feel that this innovative thinking tells you what a wonderful place Facebook would be to work.

Good way to screen, not select (3, Insightful)

SpinyNorman (33776) | about a year ago | (#43654539)

Decent programming skills are a requirement for a software developer, but only one of many skills required. Given how many people lie about their experience and fail *VERY* simple interview programming tests, having a programming test screening procedure wouldn't be a bad thing, but only to drop the worst, not to automatically hire the best.

Congrats, you "won" a job! (0)

Anonymous Coward | about a year ago | (#43654563)

Now you're going to want to work 80 hour weeks to keep your prize job.

Check the fine print (1)

AllenABQ (987944) | about a year ago | (#43654581)

All code submissions become the property of the company sponsoring the contest.
Brilliance in your programming does not equate to a job offer. After all, we already got the work we needed done out of you.

stupid (0)

Anonymous Coward | about a year ago | (#43654635)

People who enter contests are naive. Even if they were to give 1 million dollars away, the only winner is the company. You see stupid contest junkies, you just made the company probably millions of dollars on a problem they were trying to solve. You just did it for free, because it's very unlikely you won. Collectively you just gave them thousands upon thousands of valid code snippets they will copyright, for free. Every contest I have every seen has a clause similar to "All your code are belong to us!" Collectively you have also just given the company a list of possible employees that will be willing to be taken advantage of, are willing to do things for only a pat on the back, in essence a bunch of pussies that won't stand up for themselves.

Re:stupid (1)

gweihir (88907) | about a year ago | (#43654709)

Indeed. And there have already been contests used to get some algorithm implemented on the cheap, with nobody getting the job afterwards.

Does not work (1)

gweihir (88907) | about a year ago | (#43654695)

The effort on the side of the programmer is far to big. This means you will only get desperate people and people that cannot manage their time effectively. Not good. If you want programing samples, pay them.

Missing the point (1)

Okian Warrior (537106) | about a year ago | (#43654731)

Apparently many of the posts on this thread come from people who didn't look at the contest.

This is not a programming contest in the sense that they are asking people to create a program. It's a data mining contest where they are asking people to solve a data mining problem.

Yelp [yelp.com] is a business directory that allows people to post reviews. The programming challenge is to create a program/algorithm/method to determine how many "this was useful useful" votes a review will receive. Presumably they want this information to inform their reviewers on how best to write a review - what to avoid, how to phrase, &c.

Winning the contest isn't writing the program per-se, it's making a better prediction algorithm than anyone else.

Also it's a long-term contest (8 weeks) instead of the "overnight hackathon challenge" you might be thinking of. You can make several submissions and get feedback for how your algorithm is doing, and how it stacks up to other teams.

Also also it's a team effort. You can enter solo or as a team.

The job offering is for a data scientist at Yelp, so it makes sense that they are looking for people who can manipulate data.

The job listing doesn't have the typical "must have 4 years experience in XXX" listings that everyone hates. It states:

.) A passion for big data, and creative ideas for what to do with it.

.) The algorithms and data structures experience to make your ideas workable.

.) The coding experience to turn those ideas into reality. We use Java & Python. You don’t need to be an expert, but experience is a plus and we will expect you to learn them on the job.

.) A background in Machine Learning or Information Retrieval.

.) Minimum BA/BS degree in Computer Science, Math, or related degree

.) A love of delighting people with local knowledge.

Everyone complains about the HR "minefield" that sorts candidates by requiring useless or immaterial experience instead of raw coding ability. This is a new type of job search that doesn't have these problems.

This doesn't appear to be what everyone thinks it is.

What a prize (1)

jpschaaf (313847) | about a year ago | (#43654813)

top prize being a trip to the sponsoring company's headquarters to interview for a job

Last time I checked (a bit over a year ago), the normal cost of that "prize" is to spend a few hours on making an updated resume. Granted, I may be on the lucky side of having the experience needed to open doors, but I suspect that as a rule skilled people find more convenient ways to get doors open.

That stated, if the potential job had a particularly impressive salary, I might change my mind.

For College Kids, Yes (0)

Anonymous Coward | about a year ago | (#43654847)

The problem with online contests is the way it nebulously attracts 'everyone'. Who is everyone? Aged ??-???, varying skill levels, and varying interests. Presumably the contest can weed out the programmers who aren't interested in the job's subject, but the other two areas are tough to control.

I'd rather trust something like the ACM's ICPC. It's targeted for college kids(undergraduate) and has restrictions on level of education and age. That way, you know that there isn't a team that has a disproportionate amount of experience compared to other teams, and you can reasonably say that the people in the teams ranked 1-10 in a region are far better programmers than the people in the teams ranked 150-160 in that same region. It also occurs over the course of 5 hours(maybe more, I forget), which lets you see how kids approach particular problems, but the questions are also designed so that a 'hacky' perspective is usually counter productive. Sitting down, thinking about a solution, and *then* writing the code is far more rewarding than jumping into the code.

Also, the ICPC is run by the ACM: our very own professional society! Not some HR department that's counting buzz words.

The ICPC, from my experience, was also very good at abusing hard programming problems like the TSP and towers of hanoi. In the actual competition you might receive 8 questions but you might only answer 3-5, so selecting which ones to answer is important. Their questions will reference hard problems in an attempt to discourage programmers from selecting that particular question, but in reality the scope of the problem being presented is significantly easier than the NP version. Being able to remain calm and understand what's actually being asked is a good quality that the top teams have.

Contests should be the entry point, but not the long-running metric for a programmer's ability.

Nope (1)

Opportunist (166417) | about a year ago | (#43654851)

Sorry, but such contests are ridiculous at best.

Who will enter such a contest? Probably young programmers without much experience who have the time to actually do such ridiculous "tests", who view the whole thing as a big game show. I can't use game show candidates, I need people I can TRUST. Not people who'll play the price is right today and jeopardy tomorrow. I need people who also have the ability to stand up in a meeting and declare that they will NOT bend over and take it from marketing or accounting, and I highly doubt someone who submits himself to such humiliating ordeals has the guts and spine to face them.

If that's what you're looking for, a spineless gambler who views your company as some sort of game or toy, go ahead and use such methods to find your candidate. Please tell me if you do so I can short your stock.

Depends. (1)

Dcnjoe60 (682885) | about a year ago | (#43654867)

Are contest the best way to find programmers? It depends. If you are looking for programmers who can write use once, throw away code that doesn't have to be maintained, then the answer may be "Yes." On the other hand, if you are wanting programmers who can write code that can be maintained by somebody else five years from now and easily modified, then probably not.

Will your contest winner be able to readily adapt to your entity's coding style/standards? Will your contest winner be able to adapt to your client's needs (and if it is for internal coding, then your internal customer's needs). And finally, will your contest winner, be there for the long haul or will he/she get bored and look for the next puzzle/contest, leaving you high and dry?

But would you want to work with them? (1)

ZeroSerenity (923363) | about a year ago | (#43654875)

A contest isn't enough to hire somebody. If you want the best, you need somebody who can do more than just code. People skills are what set apart wizards from the efficient.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...