How it usually begins
The time has come. Again. Gloomy Monday morning makes you feel like you don’t want to leave the bed ever again. It gets even worse when you remind yourself that in an hour you will be sat in front of your computer fighting your way through the project that completely does not interest you. Or, even worse. You will have to support some legacy code that makes you wanna cry. You know you’ll run into problems. Eventually, you will become so stressed or angry about your job that it will start affecting your personal life, workout routine, or personal projects. Sounds familiar?
This means it might the perfect time for finding a new dev job. Finding a new dev job – sometimes this is exactly what you need. I’ve had a lot of different jobs (mostly as a web developer but not only) and, I would love to share a few important things I’ve learned along the way. I sincerely hope that you can benefit from my experience and smash your next job interview!
Keep in mind that I am not a career advisor, and I do not encourage you to either stay at or leave your current job. You are taking full responsibility for all of your decisions and actions. I am simply trying to offer my perspective based on my experience (which can be wildly different from yours).
Understand your “Why?”
This is the most important part of the entire process. Image yourself walking into the room where your boss is already waiting for you (perhaps, a virtual one these days). You sit down and drop the bomb. Unless your boss already knew what is going to happen, the questions you are about to hear are “What?! Why?!”. Can you answer it right away without making it sound weird?
It is very important to understand why you want to leave. You probably already have a pretty good idea why you want to change your current position, but could you easily explain it to someone else? Are your reasons strong enough to make you stick to that decision and to keep you from regretting it the next day? Maybe you don’t want to change your job entirely but just some parts of it? The way you explain your decision to your current employer might have a huge influence on your future position. It may also burn that bridge down, right to the ground. Bridge you might desperately need in the future.
Paraphrasing, Stephen King said that if the idea for a new book sticks with you, somewhere at the back of your brain and it keeps resurfacing it means there is a potential in it. The same thing goes for a lot of different things in life. So, if the idea of leaving your job sticks around for a while (might be a month, might be a year) it’s a pretty good indication that something is going on. This is a great indicator of what we feel because it puts things in perspective. It is safe to assume that over the course of the last few months, you likely experienced all kinds of moods and emotions.
If after a period of few months the idea is still there, you can assume that it was not caused by some temporary feeling or something that just got you upset for few days. It means that there is something that bothers you and it is not going away until you do something about it. Ignoring it might make things much worse.
Sit down, make a list of things that are bothering you and come back to it in few days. See if it still sounds reasonable when you read it out loud. It might turn out that things you’ve put down can be easily fixed by talking to your boss and changing a few bits in your everyday work. As a result of this, you might find that few little tweaks will save you the hustle of changing the job and you can be happy again. If this isn’t the case hold on to that list. Practice what you want to say. Make sure you can convey your thoughts accurately without getting emotional. Just remember to keep it professional.
Prepare mind blowing CV
For some reason, most of the CVs I had a chance to look at were bland and unattractive. Often in a form of a very simple, and a hard to read word document or some funky pdf without any structure or logic. These things not only do not stand out but they encourage the recruiter to skip them without giving them a proper look. You might be a programming superstar but what good does it do for you if no one knows about it?
On the other hand, there are things called “creative CVs“. Often in form of a one-page website or some mini-book or even a poster. Much better than a word document but it is very easy to blur and hide away what is important – which is you. You don’t want them to focus on the cat running over the rainbow towards the pot full of snacks which happen to be placed right next to mention of your most important achievement. I think that even for a graphic designer making a CV look like a Dominos flyer is just too much. This is still a document and while it allows you to be a little creative it still should remain a professional form of conveying information about you and should contain only what’s important. If you want to show off, prepare some portfolio or a project on Github.
Just to be clear – no one pays me for this. I used a website called NovoResume. I had to pay for the access for the entire month but I simply treat it as an investment into my future. They have cool themes and designs which do make your CV stand out right off the bat while still keeping a professional tone. They also keep your CV (at least they do at the time of writing this article) even when your subscription expires. You’ll just need to renew it to be able to download the CV again. Finding a new dev job can be a breeze when you use the right tools!
Prepare something to show
Often your future employer will ask you to do a “little task” to prove that you are as skilled as you say. Nothing wrong with that, per se. It’s not too bad if they say you can do it next week and just drop them a line when it’s done. The nightmare begins when you’re asked to do it right then and there within the next 45 minutes. I don’t know how you feel about this but I don’t like when someone is standing over my shoulder and waiting for me to finish a task. It’s counter-productive and it’s not how real life looks like. In real life (even in the office) no one looms over you when you work. You have access to documentation and you are left alone so you can focus on work.
There is a way to avoid all that unpleasantness. Prepare your project on Github. It doesn’t have to be a full-blown commercial project. It can be something you work on just for fun or something you want to turn into a business someday. As long as there is some good code to look at you’re all set. Trust me. About 90% of companies I worked for asked me to do some sort of test which I ended up not doing, at all, simply because I always have plenty of my work to show on Github. No one wants to do the test. This is an easy way to save yourself and your future employer the trouble of doing and reviewing the test task.
It doesn’t have to be a project. Create a blog and amazing things will happen. It doesn’t even have to be a blog strictly about programming. Take my example. I write about personal things as well as about web development. After posting my first entry on this blog I was approached by Polish Laravel Meetup and asked to talk few minutes about what I came up with. I bet you can already see how quickly having a simple blog can turn into a huge benefit for your future career. Not to mention that it is a great way to work on yourself and develop all kinds of skills.
Prepare yourself and find a new job first
Sound pretty obvious. However, it is easy to make a hasty decision. If you are changing the job you might as well pick the one that suits you. Take your time. Browse options. Go to few interviews where you know you would not accept the job anyway and try to tell them some big (within reason of course) number when they ask you how much you want to earn. This is especially useful if, for you, money is hard to talk about or negotiate. What is the worst thing that can happen? They say “no”. That’s it. No one is going to scream at you. No one is going to hit you.
It’s a very easy way of boosting your confidence before going to the interview you care about. Once you feel like you are ready to take on some serious interviews take your “Why?” with you and just give it a shot. You can be sure that your new employer will be curious to know why you want to leave your current place of work. If you are doing the interviews via a recruitment company there is a good chance that the recruiter will give you some hint as to what to expect.
One last thing to mention here – do not pretend to know something you don’t! Can’t overstress that. In case you already don’t know that – if someone asks you a programming question to which you don’t know the answer and you are trying to make something up, that’s obvious straight away. Don’t try to make an idiot of someone who is trying to give you a job. Furthermore being able to honestly admit that you don’t know something and you need to learn more about it is one of your biggest strengths!
Finding a new dev job (especially if you have some solid experience as a programmer) is not that hard. Finding the right one is harder. No amount of research can prepare you for a job that turns out to be a total miss. Be honest, don’t be rude, and don’t stay where you are not happy. You have only one life and there’s no point in wasting your time in a place that makes you unhappy.