I just got off an interesting interview with a potential client. It went ok. We had some intelligent conversations about WCF, Link, web services, a general work up. One questions that he kept circling around too left me baffled and struggling to understand what he wanted to here. He kept asking ‘How do you implement a feature.’
Typically I like the vague, open-ended questions. I felt like I could see where he was coming from. Some developer he’d probably worked with would over think a solution, gold plate it, and deliver it, and the end result was nothing that satisfied the specs. I know I’ve seen that happen to projects I’ve been on.
My answer, while I didn’t think was wrong wasn’t the answer he was looking for. I would write some unit tests that satisfy the requirements for the feature as best that I could. I would then create the classes that would be needed to pass those tests. I would then create and DB tables or fields as needed, or mock out any other dependencies that my code depends on. And wolah, feature implemented. Obviously there are some things you would do differently depending on your architecture or UI changes. But I think you could follow that methodology 80% of the time.
He didn’t like my answer. ‘Yeah but how would you implement a new feature?’ he would reiterate. I tried to rephrase or expand on what I was saying, but it didn’t seem to satisfy him. He rephrased his question a couple times and each time I couldn’t come up with something significantly different than what I had already told him.
So my question to anyone out there is ‘How do you implement a new feature’. What should I be doing differently? What am I missing?
