Some ramblings of a technical interviewer for .NET software engineering consultancy jobs.
I have been subjecting software engineer applicants to technical interviews for some time now and want to give some pointers on how to increase your chance of getting hired. Pointers based on my personal experience as I see often people fail because they have yet to master basic interview skills.
I hoped that colleges and universities prepared students entering the job market, after all these year I have some doubts. I could write a very bitter article on the failure of our education system and act grumpy, but I wanted to be positive and give some advice in the hope it finds its way to candidates.
I have divided my rambling into 6 topics:
- The search
- The contact
- The invitation
- The interview
- The feedback
- The post-mortem
1. The Search
This is the time where I don’t even know about your existence. My company posted a job opportunity and you are browsing through job portals trying to figure out what is available and of interest to you. This is the moment you need to match two important pieces of information: who are we as company and what in the job description is aligned with your expertise, needs and expectations. By the way, a lot of these job portals give you advice and have checklists on how to apply for a job … be prepared before all else!
Off-course I want to give you more details on what we do and what the job entails at the day of the interview, but your and my time is precious. It make sense to already have a look at my company’s website and to browse our social media channels. We have a lot of people active in user groups. Connecting with them in an informal setting is the best way to get some insights. If you do not fully understand what the job is about, contact the recruitment department, they are more than happy to provide you with additional information. Google (or should I say Bing) is your friend! Google all the terms and acronyms you find in the job description if they would not ring a bell … be prepared before all else!
Don’t forget in ICT the job also searches you. Since all consultancy companies fish in the same pond the number of high-qualified professionals is limited. This means we will pro-actively connect with you. Having an idea for which company you want to work, will help these interactions … be prepared before all else!
2. The Contact
You are about to initiate the first contact. Typically we are talking about a CV (resume) and letter of motivation. Hold your horses young man (or woman)! Have you double-checked the content of your communication?
The need for a hand-written cover letter has gone in this day and age of e-mails. But a nice motivation e-mail gives you some additional points as it allows you to high-light some aspects of your CV. I don’t need a “Dear Mr.” and “Sincerely Yours” but you lose my interest with a “Hey you”, “Mate” or with “Kisses”, “xxx” and “Grts”. By all means use a spelling checker and punctuation is used by the non-barbaric part of the population (at the risk making some mistakes myself in this text). It is always a good idea to add information on how, when and where to contact you e.g. put this information in the e-mail signature. Try to organize a professional looking e-mail address a “email@example.com” will work but a “firstname.lastname@example.org” might end up in my trash folder … be prepared before all else!
The CV contains vital information to me. Any gaps, omissions or missing information raises alarms. But overall I’m looking for the following information and basically anything you feel comfortable to share:
- Your personal data:
name, photo, home address, telephone or mobile number, age, nationality, marital status, driver’s license
- Your professional social connections:
blog, website, Linked-in profile
- Previous positions in reversed chronological order:
Relevant positions including internships and student jobs
company, location, position, roles, duration of your position, project descriptions, technologies used, references (people that vow for you)
- Training and education in reversed chronological order:
institute or school (from high-school to college), location, degree, majors and minors, duration, title or certificate, indication of graduation honors, thesis project subject
- The languages you master:
indicate mother tongue or level for speaking, understanding and writing (use European language level indication)
- The technical and software engineering skills you have:
type of skill and the level
- Leisure and pastimes
Explain your interests besides software engineering
youth movements, students clubs, or voluntary work, the role and responsibilities, duration of your engagement
- Miscellaneous things you want to mention:
any publications or artefacts you’ve created
I have predisposition for people that were active in youth movements. I rather see someone graduating with a lower grade but having gained some real-live experiences. Youth movements teach you important non-technical skills e.g. collaboration, perseverance, leadership, responsibility …
The CV is one source I heavily use to prepare and tweak the interview. It is putting your money where your month is. Claiming to be a master in MS Office but failing to format your CV Word document decently, is not a good move. Listing an eye for detail as strong characteristic, but failing to see the broking link to your website will not earn you points. If you add a picture, make sure it is as professional as you can afford and is in line with the message you want to bring. So if the position is client facing you might want to think about not using a vacation snap and wear a decent shirt instead of your boiler suit … be prepared before all else!
Patient, you want to be, my candidate! If this is your first interview ever and you think this will be your dream job, wouldn’t it be wise to test your interview skills for the first time somewhere else? Compare it with an entry exam. You also like a test exam before doing the real thing. It is wise to consider taking some test interviews just to get the hang of it. Hey wait a minute didn’t you just said something about respecting your time? You are right, I hate to be at the short end of this strategy but fair is fair, an candidate needs to … be prepared before all else!
3. The Invitation
We have established intelligent life during the first contact. This means I have looked at your cover letter and CV and I think there is a match with the job offering.
This also means I did some background research. Don’t be afraid I’m not the NSI nor the FBI or have any link to an affiliated organization but I will Google you! So make sure your public information is clean. I understand we are not all saints and I also apply a work-hard-play-hard principle to my own life, but please remove the drunken bachelors party photos from your public Facebook profile or ask someone to un-tag you if you appear in them. I might call a company you have worked for in the past. I can talk to a reference you have given me. Don’t forget the IT community is a small community so your reputation precedes you. If there is anything you need to tell, it is better to inform before I have to ask it … be prepared before all else!
The invitation for the technical interview should contain a time, a location and person of contact (name and phone number). If you are missing any of these don’t be afraid to ask. If the location is new to you make sure that you know where you have to be. You could familiarize yourself with the route on a calm weekend day … be prepared before all else!
4. The Interview
Seize the moment and shine! This is your moment to prove the invitation was not a waste of time!
Dress to the occasion. Don’t overdress if you do not feel comfortable in a suit but remember you are applying for a consultancy job. This means in the future you will represent my company in interaction with my clients. I consider this a trial run. If you don’t bother to be decent for me what does that tell me I can expect from you in front of my clients? Are sneakers and jeans with holes really the best first impression? We can have a long debate on facial hair, tattoos and piercings. In the current society a lot is acceptable if it is well taken care of and not offensive in nature. For example a man with a ponytail is ok if he understands the concept of shampoo. Avoid running a marathon before you arrive and a taking shower has never hurt anyone … be prepared before all else!
Arrive on time. The “on” is an important aspect it means not “late” and not “early”. Travel early and go to a nearby tea-room. This allows you to perfectly time your arrival. Anticipate what normal traffic looks like. Google maps has a nifty feature where you can look at travel times for a specific day and hour. Unexpected things can happen but are not an excuse for bad preparation. If there are unforeseen delays make sure you have my mobile number and your charged phone with you and inform early rather late … be prepared before all else!
So you made it on time to the interview. Phew that is already an achievement!
Technical interviews are not an open bar, there is an agenda and a structure so I can have a fair and objective evaluation. You might not like it but I control that agenda. Too many candidates are eager to show their hobby projects. I appreciate that and there is a time and place for it, but it will not replace the technical interview. Don’t worry I understand that questions cannot go only in one direction. There is a moment reserved for your questions as well. With regards to previous positions and projects you mentioned on your CV, make sure you know your stuff and were honest about your contributions. You might have learned a few things when you were the designated coffee fetcher for the team but it doesn’t make you the technical architect. Alarms go of when a candidate claims to have worked a substantial amount of time on a project but cannot tell me any technical detail, lessons learned, issues and solutions of the project. You should be able to talk for hours on a subject you worked on. It will indicate the passion you have for your work and results … be prepared before all else!
We come to the core of the interview. What kind of technical questions can you expect? You are applying for a .NET software engineer job so the answer is straight forward. I will ask questions to make sure you have a basic understanding on how software is created (i.e. the process), on the building blocks (i.e. the technology), on the concepts (i.e. the theory behind it all) and on how we can apply Microsoft technology to realize this. In the end you have studied 3 to 5 years at an academic level so I want to figure out what you have understood, retained and if you can apply it. I expect this knowledge to be active so before your interview it is wise to flick through your courses and the stuff “you will never need anymore” … be prepared before all else!
To help you out, here are the high-level topics I will go through (yes all of them!) for .NET software engineers:
- Object oriented concepts
- .NET FW and core language constructs
- Build process and run time behavior
- Web pages and web services
- Desktop applications
- Mobile applications
- Data Access
- DB concepts and organization
- Network concepts
- Application architecture and code organization
- Security and audit trails
- Project organization and Agile concepts
- Functional analysis, modelling and methodologies
- Algorithms and logic thinking exercises
Every computer science degree graduate has encountered these topics during his study. Up to you to show me what you understood and retained. To help you prepare there are some great books out there. Before Microsoft had books per framework e.g. .NET core, ADO.NET. ASP, WCF, WPF, WinForms … I’m not so fond of the latest material as it remains high-level. The questions during the interview will become increasingly more difficult even beyond the level we are hiring for. This is to figure out how far I can stretch you. Remember to start answering from what you know and combine your knowledge intelligently. I will assist, give hints and additional information but if your answer is “I don’t know” I have very little to build on. Remember that with interviews, prepared candidates don’t need luck so … be prepared before all else!
Besides the technical skills I’m on the lookout for soft skills. Do you persevere when you get a though question? Are you able to explain something in a clear and comprehensive way? Specifically for Belgium I cannot stress enough the importance of language skills. Proficiency in English is a must. So if English is not your mother tongue I suggest you start reading technical blogs in English, Google in English, …. know basic technology terms in English (a Megabyte is not un Megaoctet, a harddisk is not eine Festplatte). For Belgium consultancy activities, you will not escape Dutch and French conversations in your day-to-day job. There is always room for improvement but some basic knowledge should be there. I’m mostly looking if you aren’t afraid to speak and if you can engage in basic conversations. Examples:
- You arrive at the reception desk and need to sign in: “I’m here to meet Mr. X, I have an appointment at 14:00”
- Explain an UI design: data, labels, buttons …
Activate your passive knowledge by reading newspapers or watch televised news … be prepared before all else!
5. The Feedback
So you survived the interview … It means you’ve noticed that you didn’t got an immediate feedback at the end of the interview. Why is that? It is to avoid impulsive decisions on my side. I might be biased by the last positive or negative answer or by a bad first impression. To give you a fair chance I want a bit of time to reflect. In the meantime I provide you with insights on what a career would look like. If you have questions, now is the moment to ask. You want to show your latest work and you mother baked cookies for me … be prepared before all else!
6. The Post-Mortem
In case there was no match between the job and you, don’t consider it as a rejection for eternity. It means that right now it didn’t work out and some of your skills are not at the level we require. I does not mean you don’t have the potential to close the gap and try again at a later moment in time. This is for you the time to ask for feedback so you can improve and self-reflect … “Never say never”!
So are you prepared?
… if you are a candidate that I’ll meet soon, kudo’s to you. It means you Googled your interviewer and are preparing! As token of appreciation use the cheat-code “I’m prepared before all else!” when you meet me. You will earn some bonus points.
CV and cover letter:
- Adding an objective (e.g. “Seeking for a position that will help me to grow my skill in the area of …”) to your CV makes sense if it is not trivial. We know your are looking for a new job. You can add it when you are considering a career change.
- Express your previous positions in actions and results. What have you done? What was the impact i.e. what changed you have enabled or realized? Did you grow in the role i.e. did you receive additional responsibilities over time.