So you’re hiring a software developer to bring your beloved concept to life; this is an important decision. Unfortunately, it can be easy to miss the equally important questions you should be asking him prior to signing your life away.
Most clients are sure to ask the technical questions that ensure basic know-how; but what about the myriad other components that make a good developer? Ignoring them might mean time and money wasted – this is all too often the case.
Our expert General Manager, Fahad, has insight on the matter that he’s happy to share with you; he’ll help you safeguard your project, ensuring you get the best value out of your resources.
Think outside of the box.
What would you ask a developer if you were to hire him for a project that would really weed out the bad ones? There are many questions to be asked of a developer during selection; I always suggest that any client think on a different paradigm during an interview.
Q: Tell me about a significant software development project that failed. Then, tell me why it failed.
I personally believe every developer has experienced at least one failure in his life. Failures are never mentioned on resumes, but they’re the parts of a career that give us more insight on one’s deficiencies, and in turn, the lessons learned. Failures, just like accomplishments, reflect experience. Once we’ve learned failures, we can compare the present state of his career with his past, as well as with our requirements. One great parallel that I like to use is, we’re not only asking a warrior how he won a battle but also how he lost; how could he have done better?
Q: It may seem counterintuitive, but I always ask at least one question that speaks to a developer’s personality; it may even be extremely touchy so that I can evaluate his level of patience.
Software engineering is a complicated game of patience; mindfulness. A peaceful soul always comes up with better results than an aggressive one. In one past instance, I’ve asked a developer about his medical history. Four times. In another, I had a debate with someone as to why he hadn’t gotten married. These questions are asked based on situation and personality, not meant to be insensitive or rude but instead to gauge his or her ability to handle contention. We work in a client-centric industry; modern developers need the fortitude and humility that will enable them to work with anyone in the world.
Q: Always ask for an instant technical response. (Based on your particular set of requirements.)
This is a practice that helps us to evaluate a developer’s ability to think critically; runtime analysis, making a WBS (Word Breakdown Structure). This isn’t just about his ability to think fast and provide passable responses; either he’s going to go with the feasible solution or the ideal solution. Based on his response, we’ll either think, “This is someone who can communicate who we want to represent our company,” or we don’t move forward.
Q: What types of projects or technologies does this developer feel uncomfortable working on, and why?
This is a pretty interesting question; it tends to bring to light any potential future issues and helps us make sure he’ll want to do what we need him to do. We get maximum productivity from an individual if our work plays on his interests; otherwise, he’ll likely burn out at too rapid a pace.