From time to time I'm on the employer side of a job interview for software development positions and similar. It is certainly an interesting experience. But it would be much more fun when the candidates came a little prepared. So here are a couple of things to ponder when you are heading for an interview:
- Don't worry about technology so much. Software development is such a broad field you can't know everything. I will be able to find some limits of your knowledge. In fact everybody with a couple of years experience will find those limits no matter who the candidate is. If you are any good, you'll find my limits too. It is not so important what you know, but what you are able and willing to learn. But there are some things you should absolutely know, because they are about yourself:
- Know why you are a software developer and why you want to stay one. What is it that fascinates you about software development? If you don't know this I'm gonna assume that you are not fascinated by software development at all. That's OK. I know lots of companies that are looking for exactly this kind of employee. I am not.
- Know what you don't know. When you are telling me you are an expert in X and I find out you aren't, this is a big minus. If you tell me you have a working knowledge of Y and I find out this is exactly the case it is a big plus. It is your choice to collect pluses or minuses.
- Know what you learned. As I said I am interested in your ability to learn. So be prepared to tell me what and how you learned during the last project, during the last year and during the last month. What have you read? What did you like, what did you dislike? And of course why?
- Know where you want to go. Do you want to become project managere? Do you want to become a teacher and mentor? Do just want to write code? When you tell me where you want to go, I can tell you if the job offering will match that. If you don't tell me, I'll vote for not giving you the chance to find out.
Does this sound harsh and arrogant? Thats becaus it is. One of things I want to reach is a higher quality of software development in my proximity. For that I'm more then willing to learn and to teach, but I'm not willing to waste time with people that don't even know where they are and where they want to go.