1. Red Flags in Tech Interviewing

RED+FLAGS.jpg

Episode Description / Notes:

Have you missed or deliberately ignored Red Flags when interviewing, because you REALLY wanted to get the job?

Interviewing is like dating - you gotta get out there and look for your special someone, while they are out there looking for you. You gotta suss out what the other person is like BEFORE you shack up or settle down with them.

We all know that Tech interviewing can be weird, and that no two interviews can be alike. The Red Flags for bad interviews are pretty universal though. Don't miss them because you're wearing rose-tinted glasses!

Keep on eye on these Red Flags so you don't ended up ever landing a bad job again!

Episode Script:

Welcome to this episode of SpeakingSoftware. I'm your host Philip, and together we're going take another look at the soft side of Software Development.
Today's topic is one in our series on Tech Interviewing! We'll talking about Red Flags in Tech Interviewing

Lets get right into it!

—————

I think people should interview often – even if you’re happy with your job. It gives you an insight into the current state of the industry, what you and your skills are worth, and can also be a great reminder that maybe the gig you have might not be so bad.

Unfortunately, Tech Hiring is in the really weird place where no-one can agree on the same approach to it and everyone (including me) has some really strong opinions about how it can be improved. We’ll leave that long ramble for another day though!

Today I specifically want to focus on Interview Red flags. Basically, no matter what way a company decides to conduct Software Developer/Engineer Interviews – these are near-universal heuristics that even if you get the job – you’re more than likely going to end up having a bad time.

Lets recap on interviews:

Interviews go both ways! Its as much for you to evaluate them, as well as for them for evaluate you. People forget this – it’s not a one-sided thing. This isn’t like interviewing for a job in your local supermarket at 17. You’re providing a highly technical set of skills – you’ve a lot of power here! Its like dating – you gotta get out there and see if there’s someone out there for you. And they’re out there looking if there’s someone out there for them

Remember: Everyone is on their best behavior – gives a false sense of safety and security. It’s up to you to suss out what the real person is like before you settle down or shack up with them. If you’re seeing stuff you don’t like know when they’re supposed to be at their best; how bad is it going to be when they have fiscal/contractual control over you? You can always walk away before it gets too serious.

What do I mean by serious: You’ve signed something, maybe you’ve handed in your notice already or you become too invested with hope taht you’ll get the position. You can stand up and say “I’ve given this a bit of thought and it seems like we’re not going to be a great fit for reach other. Thanks for your time and best of luck filling this role.”. Then Leave. Ask to be shown the door if you required, or hang up, or whatever.

There is no consequences to a bad interview. You’ll never be blacklisted. Any threats of “You’ll never work in this industry, etc...” is all just hot air.
Its better to dip early before you’ve invested your time and become to emotionally attached to getting the job.

This isn’t going to be one of those list that you find on a buzzfeed blog or regurgitated from some other sources. These are all from my actual personal experience over the last decade. I’ve seen these signs and learned the hard way over the years. I’m telling you about it so you don’t have to go through them! Every one of these has a bit of a story, but for the sake of brevity we’ll just stick to the facts!

So, Red flags. Let’s split the list into 2 Sections:

  1. Interviews designed to test your Soft Skills

  2. Interviews designed to test your Hard Skills

Red Flags for Soft Skill Interviews

The emphasis is on speaking, dialogue, experience and cultural fit. You’ll be asked about your experience, projects you worked on, problems you solved, maybe how you’d handle a hypothetical situation, maybe your personal philosophy on development, management, etc...

  1. Money / Salary Range isn't talked about during the first call. Not normal to see in a job listing (to stop scalping vulture recruiters) but should be addressed as early as possible during communication. I guarantee that after the 5-6 steps that if you get the position, you’ll be low-balled. The tough part is you’d be emotionally invested at this stage and you may have invested significant time

  2. Uncomfortable situations.

    1. people being rude, lying or committing a social pas- like obviously answering emails/doing work while pretending to listen to you. So Rude! I’ve made time for this – you should too!

    2. One-sided Conversation, where they ask you questions, and let you respond. And then wait, in case you have more to say. No feedback. No rapport. No conversation. Disengagement. Bad sign.

  3. Interview(ers) (non-hr) who don’t know the projects or processes you’ll be working on.

    1. It means you’re not talking to (or being interviewed by) the right people

  4. All process and no people

    1. They bring you into a room, give you a questionnaire or technical test and then say something along the lines of “Back in 30 mins” or “Leave with john at the front door on your way out”. Shows they do not value your time. There’s no reason it couldn’t have been done via email and saved your time.

  5. Hypothetical Situations, Alternative questions and back-patting

    1. Some companies are famous for them. You know the type! This ‘outside the box’ types - like “How could you find the weight of an Airbus 380 if it’s full of ISO-sized Rubber Ducks who are in turn filled with champagne, without using your hands or legs?”

    2. If the person asking is enjoying themselves watching you get more frustrated and they happen to be anywhere in the hierarchy above you – you’ll literally be working in hell. There is literally no value to these questions. At all. Ever. You will never be in a situation of intense pressure in a Software company where you have to think of an esoteric solution within 2 minutes with such limited options/strict restrictions and having everyone saying “NOPE!” ad smiling wider as you begin to cry from frustration.

  6. Correctors and Clarifiers

    1. This might bring back memories of an old teacher or professor who got you down! You know the type - they correct the words or phrasing you use (even though they know exactly what you mean). Really nitpicky stuff like saying ‘S-Q-L’ vs ‘Sequel’, or saying ‘function’ instead of ‘method’. They’ll stop you and throw you off your roll for the most ridiculous.

    2. Strong sign of someone trying to dominate in a social setting, while trying to appear knowledgeable – but they don’t have the in-depth knowledge to back it up. Low-key bullying behavior! They’re frequently wrong, and even gentle/polite attempts to correct them can lead to hostility.

Red Flags for Hard Skill Interviews

These can again be in person or virtual. Can be one (or a combination) of the following formats: Pair-programming, White-boarding and/or a Technical test (usually take-home).

  1. Pair-Programming

    1. Not using the actual Dev tools and having to use some weird tool for pair programming. The thinking behind this is that you can’t cheat with the IDE. For me – knowing the tooling can be equally as important as knowing the code. Especially if it can save time! Example: Emmet (emmet.io) shorthand plugin for generating Html, or say Resharper for Visual Studio. You’ll never be in a situation where you’ll be writing code without an IDE, so this doesn’t really represent anything.

    2. Usually paired with Automated Answer Validation. Unfortunately this only validates the correctness of your solution, but not the ingenuity of it or the speed of it. This can be frustrating as during the interview situation everyone is nervous, and the most common issue I’ve seen on both sides of the interview is having an array index of by 1. The answer can be wrong but the entire solution can be perfect and well-optimised; bar 1 character.

    3. No discussion. Its becoming a supervision session and not a pair/collaborative session. Its a 2 way street. This persons could be on your team, or your superior. They need to bring their technical know-how to the situation, and it can be a great Learning experience for both parties involved. If you’re not getting a chance to display your knowledge or if you ask clarification question and just get a dry – “reread the requirements” – then you shouldn’t waste your time.

  2. White-boarding/Presentation session

    1. These are Designed to Check you under pressure. The REAL idea is testing public-speaking, presentation and general ability to explain ideas and concepts. If a company uses it as a stress test, something is wrong. You’ll typically be asked to architect a system in 5 -15 minutes with no prep. The irony is the company might have taken 5-10 years to arrive at their solution. You’ll be asked questions along the way. A good company will ask clever ones that require you to change your approach. Have you considered how it would work as a distributed system?, etc...

    2. Its normal they’ll have a bad-cop/devil’s advocate there to ask tough questions, but it can get too much like when some heel consistently try to trip you up. Difficult questions like: how does that scale? Can you do it in O(n) or O(log n)? They’ll usually has a shit-eating grin when asking. Consider that this person could be your line-manager or on your team.

    3. Massive red-flag – factor into your decision making!

  3. Take-home Technical test

    1. You can't open-source your solution. By that I mean, stick it on your github or whatever. They don’t own you or it and they should be fully aware of that from the get-go. I’ve been threatened ‘legal’ would have to get involved because I would be apparently revealing company secrets - For a company I don’t work for nor ever worked for, nor ever signed an NDA for.

    2. When the test is an obvious production feature/bug, or clearly something they’re going to add to a commercial project. This is just taking advantage. Like they can bring 10 peeps through the interview process and get anywhere from 10-40 hours work form each for free.

    3. Ridiculously long tests e.g. a 10-20 hours test given on a Monday morning and due Friday evening. That’s 2-4 hours a day for 5 days…And that time is by their expectations, not yours! Bonus points for ridiculous requirements

      1. I have been asked for Restful API, with OAuth Authentication, and Odata enabled endpoints, and a front end to see who did what, for admin users only. Also a small web/mobile app that lets s user log in, pulls back the data and does some charting.

    4. The wrong person assessing it.

      1. Bad sign would be only checking the Output Application/Reports, etc... If only the output is are assessed, but not the code that made it – red flag. The efficacy and simplicity of a solution is just as important as the output. Get you LinkedIn-detective goggles on and find out who will be reviewing your solution!

    5. No scoring metric. E.g they expect you do to A, B and C, while D, E and F are nice-to-haves.

    6. No follow up? I would expect they’d have some kind of follow up call regardless of whether I got to the next round to just walk over the solution. E.g. “We liked this, we didn't like that, that's a good pattern, why did you do this here, etc...”. It gives you some closure, and demonstrates they actually properly evaluated your work.

There we have it - a plethora of Red-flags.

The summary here is is you’re seeing behavior that seems one-sided, or strange – take note, and don’t just gloss over it. Don’t miss a redflag because you’re wearing rose-tinted glasses. You interactions with the company during the interview process can really be a great insight into what horrors await you if you were to work there.

Now, lets be real - If you see these things happening – it might not be the end of the world. As we said that the start – the Tech interview process is broken. Not all interviewers are corporate robots – some of them are people too – and they can be nervous! Make up your own mind. Do your research outside of the interview too. The interview is not the only information source. Look at Glass door for interview experiences and questions. Look at LinkedIn. Find people in the team or department and see who they are and what they’ve done. Check out their blogs, github, etc... assess the strength of your peers, hiring manager, etc... If you’re being asked to work on an ML team and everyone’s linked in talks about something completely differant – you may be set up with false expectations. Check Facebook, yelp and google for feedback on how the company operates.

Hopefully the next time you interview, you’ll know if you or they are trying to waste your time, and you’ll be in a better position to know whether its worth your time and energy to proceed.

—————

Feel free to reach out to me if you have questions or queries. As well as the Social media accounts (Look for SpeakingSoftware) you can message me on Anchor.FM or just email me directly via speakingsoftwareshow@gmail.com - I’d be delighted to help in any way that I can and try answer any questions that you might have.

Thank you for listening! Don’t forget to subscribe if you haven’t already.
A Rating, Comment or Share will go a long way towards keeping this going and allowing me to bring new content to you.

We’ve been Speaking Software. Catch you next time!

Previous
Previous

2. What you DO and DON’T need to be a Software Developer