I’ve recently been interviewing people for a software developer position. In my country software development is considered a well paid position, and a lot of people from different industries are making a switch to IT and software development, which I highly encourage.
However, I cannot shake the feeling that some of the people I’ve met over the course of the interviews do not want to do the work of actually changing their careers and learning new stuff. I have the feeling that some people just want to tell their friends that they are trying really hard to switch, but nobody in IT wants them because they have no experience and what not. For those people I’ve written a guide on how to remain in this category and make sure they absolutely never end up landing the job they’re interviewing for.
I’d definitely start by not updating my CV before sending it out. The fact that you changed your phone number is your own thing, nothing to concern the potential employer. They can do well enough with your old phone number.
Also, do make sure that you are sending your CVs in from a really cool email. E.g. if your name were “Jane Doe”, it would be silly to send from
[email protected] or
[email protected]. You want to send from
[email protected] – that shows your professional attitude. Ideally you have your name set up in your email provider, so that in the recruiter’s mailbox it looks like:
Queen B <[email protected]> Applying for a position of software developer
In the “new normal” video calls and meetings are getting more and more common. Make sure that, when you join a video call with a potential employer, that your name in that video call is something crazy like “Big bad m***”. I mean, if Samuel L. Jackson can have it on his wallet in Pulp Fiction, who says you cannot have it as your name in a Zoom meeting?
Do not use a spell checker when writing your CV. Having a spelling or grammar error here and there proves that you’re human and you make mistakes. Nobody would want to hire a person whose CV has no spelling or grammar errors as that might show that the candidate is detail oriented and wants only top quality output from their work. Employers are not into that.
Don’t even give your CV to your friends to proof-read it for you before sending it out. The fact they might catch some of these and help you is just another obstacle before you are able to contact your potential employer and get rejected. Don’t fall into that trap.
And, for bonus points, make the best spelling and grammar errors! Make sure your CV stands out from the bunch. For example, try writing your own name or the name of the city you’re from in lower case. This will surely make the HR department discuss your particular CV over lunch.
You opened a LinkedIn account in high school and never touched it since? Good! Don’t! Why would you make it any easier for your potential employer to gain additional information on top of that which you highlighted in your CV? Why would you make it easy for them to see any references you might have on LinkedIn? Don’t do it!
Also, imagine some creepy recruiter from the potential employer company goes so far as to go to your social network profiles like Facebook or Twitter or whatnot. Imagine how unpleasantly they’d be surprised if they saw you were a member of some development-specific groups or if you shared content about software development in general, let alone your own experience? They’d just think you were a geek and wouldn’t want to go near you!
And the worst thing you could possibly do is write articles on software development related topics. Having a blog is horrible, having a profile on medium.com or dev.to is even worse. Imagine, you can leave the impression that you not only are interested in technology, but also have the capability of discussing it in a clean and simple voice. You don’t want to show them you can do this, you want them to guess!
The evil software development companies are out there to steal your code and your ideas. That is their main business model, to find code that developers around the world have written, and then take it and make gazillions of dollars on it while not giving you a dime.
Luckily, you’re smarter. You don’t have a public code repository like GitHub or BitBucket. Then they can’t know. Then they can never see how you approach problems, how you work, what you work on etc. You fooled them.
We are all ladies and gentlemen here and we were all raised not to lie. So, when you tell your potential employers that you can do X and Y, it shows great distrust from them to actually ask if they can see examples of what you did. They should really go back and work on their manners, you’ve never been so insulted in your life.
OK, OK, you do not need to follow the step 2 to the letter. Never follow anything that a random person posts on the internet to the letter, unless it’s from Stack Overflow. If it is from Stack Overflow, then just copy, paste and change variable names. The idea of understanding the solution and thinking about how to apply it and where is out of this world. But, I digress…
It is OK to have a public coding repository like GitHub or BitBucket. Just make absolutely sure that you have nothing in there, or at least as little as possible. So, it should look something like this:
Also, make sure that, if you have any repositories there, that they are either blank, forked tutorial repos or just auto generated code from a template or a boiler plate. If you end up having any commit messages at all, make sure that they are as vague as possible e.g. “Committing files…”. Be careful, someone may actually be interested in what you were doing and go through these. Make sure to make their life as difficult as possible.
And, when you need to explain how come your GitHub looks like this, just use the “but all my work is under NDA” clause. The interviewers love that. It sounds really professional and classy and explains beautifully why your repository is completely empty while still making you look awesome. Make sure to have this one in your bag of tricks!
In a lot of places on the Internet you can read that supposedly people like honesty.
Interviewer: “What is your biggest flaw?”
Interviewer: “I don’t think honesty is a flaw…”
Candidate: “I don’t give a f*** about what you think!”
So you decide to give it a go. Even though you did decide to play their “I need to have a public facing repo” game, yours is completely empty. When confronted about it, you decide to go all honest like and say “I had no idea what to put in there, really.” As they say, the truth will set you free.
You did not want to make a repo with some tasks that you did while learning algorithms e.g. solutions to problems from Project Euler or Codility Training or any of a million sites used for developer testing. They’re going to give you a test task anyway, why show them this is something you already do? In the end, they might see it and even skip the technical task step in their interview process. You don’t want to do that, you don’t want to make them skip a step, that makes them really angry.
Of course, you did not want to make any pet projects showing what you know. Doing a TO DO list (or a TO DO list like) project where you could show you understand authentication, CRUD operations, data validation etc. is out of this world. Make them guess if you know it or not!
And, if you have broken all these rules and actually have a pet project up there, make sure you don’t do any of the following two things, as they are absolutely crucial:
If you decide to write a
README.md, you might actually help the people reviewing your code understand more easily what you tried to do, why you did it, what you learned etc. This might make you look like you’re showing off, don’t do it. Not only that, but they might get an impression that you’re a professional that likes to have maintainable and well documented code for others to be able to work with it more easily. Don’t leave this impression, if you do, they actually might expect you to document your code in the future!
And don’t you dare deploying it anywhere! If they want to run it, make sure they clone it, build it, prepopulate it with data if needed (without any documentation, of course!) and then run it on their own. Why should you make their life easier??
Be cool and write a cover letter. Companies love that.
However, don’t write a cover letter for that particular company! Write one generic cover letter that you will reuse for all companies. You don’t have the time to actually check out every particular company you’re sending your resume to and then modify the cover letter for each of them, do you?
Here are three best tips for a cover letter:
If you do decide to skip the tips outlined here and actually make an effort, then I feel bad for you, but I do have another piece of advice: skip a place where you need to replace the company name. Employers love to see a paragraph like:
“I looked at your website and CompanyX looks amazing. I love that CompanyX works in the area of space shuttle UI app optimization, I really feel that my attention to detail and perfectionism will help make CompanyX’s vision come to life.
So, I look forward to hearing back from you as I know I could be a really great fit for CompanyY!”
Go all in!
Imagine that every job interview were the same. OK, let’s be realistic, that isn’t possible. But imagine if some of them were at least a bit similar. Then you could think about the things that will happen on the job interview in advance and actually prepare for them. Too bad that doesn’t happen very often.
I mean, on your last job interview they started the interview by asking you to tell them a bit more about yourself. What are the odds for that to happen on the next interview? Right? Thinking about what your answer to this question is going to be and preparing it in advance is definitely a bad idea. It is a waste of your valuable time!
Similar goes for the projects you worked on, the tech stack you know about, the work you’re most proud of etc. OK, they did ask all that in the last job interview you went to. So there is no chance in hell that the next company is going to ask that as well! And thinking about how to connect what you’ve done in the past with what the company you’re interviewing does… that is just preposterous!
Just go in there in full improvisation mode. I mean, a job interview is a situation where there is little stress and anxiety involved and there is no way you’ll have stage fright or anything like that. Your improvisation will be awesome and it will look more relaxed than if you had practiced it in advance.
Again, the culmination of your improvising abilities might make you, like, basically, like, you know, sound like, like, you know, basically, like you were one of, like, basically, like, those surfer dudes, like, from bad American, like, TV shows or something. And, for top points, throw in a swear word or two while improvising (I have actually had candidates do this on job interviews I conducted!).
You’ve done a great job by not showing them your code so far, claiming it was under NDA and all that. And now they want you to solve a problem? Or, even worse, do a small task at home and send it to them? No way!
If they decided to give you a small algorithm-like coding task, tell them you don’t do that. Tell them that, when you get a problem you don’t know, you just google for it because somebody else has already solved it and there is no point in you solving it again. I mean, they are hiring you for the position of software developer, they’re not hiring you to think and solve problems!
If, on the other hand, they do present you with a small project that you should work on, reject that. Tell them you don’t work for free. That TO DO list project that they have asked you to do… it would be unfair to spend all your time doing that and not get paid, and then the company is going to use your code. It is all a part of their devious plan – they give the TO DO list project to every candidate they get and don’t pay for the solution. Then they use all that code to train an AI machine that builds TO DO list projects. And then, they take over the world with the TO DO list project AI based generator, one check-list item at a time!
Also – rejecting the technical task is like playing “hard to get” – they will be at your feet begging you to join their company.
Most of the interviews will end by the company asking the candidate “Do you have any questions for us, perhaps?”
You must not fall into this trap. Just look them straight in the eye and answer with a big fat “No!”.
There are people who make a mistake here. They answer with a “Yes!” and then ask a few questions. In all honesty, I doubt those people think of those questions right then and there. They probably research the company online before the interview and think of a few potential questions they could ask. Maybe about the project’s in the company portfolio or about the company culture or something like that.
Some people go even so far that they download or apply for a trial of the product the company makes, try to use it and come up with questions or even improvement possibilities for that product.
Doing this could make the people conducing the interview feel you are genuinely interested in the position. That you actually want to make an effort and bring value to the company.
Don’t be that guy. Answer with a big fat “No!” and let the awkward silence fill the room. You want to see how your potential employer deals with awkward silences, don’t you?
Following my 8 steps you are certain not to get hired! This allows you to keep watching Netflix from your couch while texting your mates how the industry sucks, how all software companies are assh***s and how the world is not fair to you as you are struggling really hard to make a change in your career.
Live the dream!