I am a software developer about a year out of college, and I'm not exactly experienced in the realm of "technical" interviews (I wasn't overly picky about my first job...). I'm hoping somebody can help me figure out whether what I experienced is typical or not. This may very well categorize me as "ignorant"... hopefully not.<p>I was recently contacted by a small startup company in the Bay Area (found me via LinkedIn) looking to hire a web application developer. I'm currently employed at a reputable big company, but the idea of joining a startup and playing a bigger role in the creation/creative process was (and still is) pretty appealing. I figured there was no harm in at least continuing with the process.<p>The first thing they wanted me to do was send them some source code. I understand that to be completely normal. I sent them a few domain, controller, and service classes from a web app I had created. They said it looked good and wanted to move forward.<p>Next they asked me to complete a coding challenge that required creating a web app (in a week's time period) that has functionality similar to Twitter's primary services... user creation, message posting, user following, displaying all the messages from users being followed, etc. They required some portions of Ajax as well. They asked for the app to be hosted on a server, and they wanted to see the source code. They requested Java, Spring MVC, and mySQL. Pretty typical. I asked if Grails would suffice. They said yes. Cool.<p>I thought the "challenge" was interesting and went about working on it during my free time outside of the day job. Upon finishing it up, I deployed to a home server and sent them my github link.<p>A few days later I got a response asking if I could have completed the challenge "without using any ruby code" which was weird since there's no ruby in Grails. Maybe a common misunderstanding... Rails... Grails... sounds similar. I emailed them hoping to clarify things, and I have yet to hear back from them (been a couple weeks).<p>So is that sort of coding challenge common for software interviews? I feel like I may have been conned into doing some free work... having just thrown them the source code and all. I mean it wasn't a ridiculously complicated application, but it definitely would take some know-how to get it done.<p>So am I stupid for just sending them the source code? Am I stupid for thinking they'd use what I created (ego check)?
It's typical for companies to ask for coding samples or even have you write some simple programs to cover some concepts they are interested in (i.e. a take home test).<p>They could have been more courteous in case they weren't interested in proceeding with you.<p>However, I wouldn't worry about them using your stuff. If they aren't able to solve the problem you solved on their own, they have other problems to worry about.<p>Might be a good learning experience for you, better weigh the ROI of doing what a recruiter is asking you to do.
Yes, it looks like these guys were not pretty honest. I had similar challenge (one week "test" assignment that was a part of a bigger project), but I was paid for my time and then continued to work with employer. But don't be upset - if they can't distinguish between Grails and RoR they are unlikely to create sufficient product in their startup :)
Code samples, a small test, interview 1, interview 2, offer is pretty standard.<p>But that 'small test' is usually 45 minutes to an hour of programming, not a weeks worth of work.<p>You're not stupid for thinking they might use what you created. How did you license it on github?