
Should I take this programming test to get the next interview round? - irishgeoffrey
I was asked to take this take home programming test to get to the second round of my interviews.  Im in two minds. Im actually against programming tests altogether.<p>I have 10 years experience and i think this will take more than 4 hours.  What do you think ?
What would you do ?<p>Please write a application to showcase your skills.  Use your creativity to develop a compelling web application that will allow customers to view a list of products and add them to their shopping cart.<p>The MVP should include the ability for a user to log in, view products and add products to their cart. The cart information should be persisted to MSSQL.<p>We would like the app to be built using C# and .NET.  Feel free to use web forms, MVC, or Web API as well as server side 3rd party libraries and JavaScript frameworks&#x2F;libraries.<p>You can spend as little or as much time as you would like on this project however we think 3 - 4 hours is reasonable and you can factor that into your design.<p>Please submit the full source code along with instructions to build and run your application.
======
slackingoff2017
As a developer that has made these tests, I hope you do it but understand if
you won't. We tried to start paying people to do these but it's too easy to
make arguments that this makes people employees so legal wouldn't allow it.

According to research by Google and others, the best correlated metric of a
successful software developer is IQ. Unfortunately it's hard to make a test
for this that doesn't discriminate against protected classes. So we settle for
the two second-best predictors. These are a work sample and structured
interview. Together these can predict maybe 50% of job success.

If you've been in a position that involves reviewing others code its apparent
that there's an extremely large spectrum of programming skill. We found work
samples to be extremely effective for weeding out people that we would need to
clean up after (damage quality metrics of our codebase). The upside for you is
that if they take work samples seriously you're probably going to be working
with more skilled developers.

When we added work samples to our interview process the amount of people we
had to retrain or let go for lack of development skills fell to nothing.
Before that it was ~30%. Some people are really good at bullshitting you :)

------
twobyfour
I bake this sort of project time into my job search in the expectation that
I'll have to do a handful of them. Personally I much prefer these sorts of
practical tests over "gotcha" whiteboard algorithm interviews. Then I just add
them to my github portfolio.

------
techjuice
From what I have learned from hiring others to join high profile and high
performance teams these coding tests are very valuable and helps the team get
a good look at what you do rather than what you say. A good benefit to this
is, that it fairly helps include all personality types (quiet, outgoing, shy,
etc.) and focuses on if they can perform an actual development project from
theory, design, and finally to production.

Once we started adding tests to our interview process the quality of people on
our team and time to adjust dropped dramatically along with a decrease in the
time between a hire and the individual leaving the company. Normally they only
left if they were moving to another location or had a big family change.

The task at hand is very simple, and helps weed out those that copy and paste
everything along with those with an engineering title that have not actually
been doing development for as along as their resume says they have. For those
with actual experience developing projects, launching to production and
maintaining them on a regular basis have a large capability to shine for these
types of easy entry tests.

I am guessing you are applying for a Senior or Principal level .NET Web
Developer role? If so this test, tests your knowledge of taking customer
requirements and turning them into a working prototype for review. It also
tests your database and web development skills with C#, MSSQL and many of the
various methods of developing web apps using standard web technology. The big
test will be the way the final product is packaged up along with it's unit
tests. If done correctly it proves you know how to conduct good deployments to
production and actually tested your work instead of just copying the code to
the server without packaging it up the .NET way.

You are basically being asked to use the regular full cycle of developing and
deploying a .NET web application. Many web developers do not know how to do
this and just copy their code to a web server without packaging, changing the
release types, unit tests, etc. I would recommend using this as a good way to
actually set yourself above other candidates that want the job by going
through the entire SDLC with a high quality MVP.

When you get to the good jobs (higher quality engineering standards in place)
normally the interview process is longer than your first job back when you
first started as they just needed programmers not people that could conduct
all parts of the SDLC and maintain large applications. Sounds like they want
you to be able to do the latter and not just a small piece of applications.

For my opinion on what to do, I always recommend doing these code challenges,
as they are normally a pretty good mental engineering stimulant and honestly
they have all been pretty easy and did not take 4 hours to complete unless I
was trying to add extra shine awww to it. Normal outcome was a call back a few
hours after they reviewed it with a really nice job offer wondering when the
earliest I could start with a signing bonus to seal the deal.

