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)?