A few months ago, I decided that it was time for me to look for a new job. I must tell you, it's a very competitive and requiring process. I've already written about it here and here focusing on different parts. This week, I summarize the most important lessons I learned.
First of all, if you want to apply for a position, you need a CV to submit. You should remember that the goal of your CV is not to tell everything about your career.
Its goal is to make the recruiter call you. On average they don't spend more than 7 seconds on a CV, so you want to make it easy for them to spot the level of your experience, the technologies you're comfortable with and some of the most relevant details about you.
Such an important detail to share is your story. For example, let your evolution from a junior developer into a senior strike out of your resumé!
Don't just mindlessly apply for positions, unless your main goal is to get some experience with interviewing. Think about the characteristics of your desired position! For example, I knew that I want to
- work with modern C++
- work from home all the time
- have an above-average salary
- have a healthy work-life balance
If you know what you want to do, you can look for companies considering those criteria. It will seriously constrain the number of applications you make, but that's fine. You'll be way more motivated with the others and you'll know what you expect.
I used Glassdoor and levels.fyi extensively to learn about salaries I can expect, the general opinion of employees on the companies and also the interview processes. Based on those, I decided not to apply to some of my shortlisted companies because either the salaries were low, or the management seemed short-minded.
Once you know who you want to work for, check if someone can give you a referral. A referral will not help you during the interviews, the likelihood of passing them remains the same. On the other hand, a referral will almost always guarantee that the recruiter will give you an initial chance. When they receive hundreds of CVs for a position, standing out with your resume is difficult and you also need a bit of luck. When you apply with the referral of someone, you barely need the luck to get into the phone screening round.
But how to get a referral? Look around on Linkedin. When you click on a company's name you'll see which of your connections are working there. Ask them! If you have no connections there, you'll see your company or school alumni. Maybe you know some of them, just not on Linkedin yet... You know what to do!
If you really can't find anyone, go on Blind and ask for a referral anonymously. If you wonder why people would help think about three things:
- helping others is nice
- even if they don't know you, they will check your CV first
- if you get referred and you stay, the one who referred you might receive a nice little bonus. A real win-win!
Polishing your CV is both for the short and long terms. On the other hand, researching companies are not only for the short term. Take notes also for later job searches, maybe some companies will be still interesting to you in a few years.
Besides you might learn either during the research or during the interviewing process that while you'd absolutely love to work for a company, you're not ready yet.
Maybe they require a higher level of knowledge than you have and others mandate. Maybe they prefer some experience with certain libraries or frameworks that you don't have at the given point of time, but that you can gradually build up in your free time with some open source contribution.
If you learn about these requirements during the interview process, make sure that you ask about the re-interview policies to see if it's possible to come back within a year or two. With that, you show genuine interest and you can set up a preparation roadmap for yourself!
If you know that you want to work in a certain domain, even if the company claims that having a domain knowledge is not mandatory, it's not going to hurt you! I'm sure you can find a few hours each week to work on your new skills!
Consistency is key! What kind of student were you at university? Did you only study right before the exams? Or did you study from week to week? Even if the former is more fun, the latter is better for your grades and knowledge. Still, pulling in all-nighters to pass an exam was compelling.
Don't even think about anything like that when you look for a job.
First, you don't even know how many interviews you're going to have.
Second, as a student, it's likely that you had tons of time. Now as an adult, you have a job, you might have a family, more chores, and other obligations. You simply don't have the time to do an all-nighter when your work requires the same. Okay, I'm just joking with the latter, but I'm serious about the rest. You don't have the time to learn 8-10 hours a day.
Your life will be much easier if you start preparing for your next interview right now. Even if you're not looking for a change.
As the proverb says, an apple a day keeps the doctor away. While a leetcode a day, won't keep rejection away, it will highly improve your chances.
What I suggest is to spend maybe twice half an hour on coding exercises and twice half an hour on system design every week. Finding time for system design can be easier, because you can listen to many podcasts and videos while walking, cooking, cleaning, etc.
Once you get a new job, please don't stop. It won't be your last job, one day you'll be searching again.
Keep your skills sharp.
An inevitable part of a job search is rejection. It's very rare that you apply only for one company, you pass everything, you sign the offer and you lean back in your chair.
If that was the case for you, congratulations!
Otherwise, you faced some rejection, you probably lost some confidence, and you started to doubt your value.
Rejection is normal. You might be a very good engineer, just not a good fit for a given role. Or maybe you're a good engineer, but not a good interviewer.
To be fair, it can also happen that you're not a good engineer... still rejection is not personal, it's about what you offer.
And if it's the rare case when it's personal, think about two things.
- If there is such a mismatch, you wouldn't want to work there anyway, right?
- Did you share too many irrelevant (to the job) personal details about yourself?
Even if it's the second, it means that it wouldn't be the right place for you. Just keep looking.
But, before you continue your search, ask about the why. Why did they reject you? Often, you'll get some meaningful feedback.
What is important is to not feel hurt because of the feedback, but embrace it, take some notes and take action. For example, I really had to work on complexity analysis skills and the input I received from one of my interviewers helped a lot to pass the final round at another company!
In this article, I shared with you the 5 most important lessons I learned during my recent job search. Start with having a good CV, research where you want to submit it and don't be short-sighted, think about the long term! Don't forget that getting into a good company is very competitive and you must practice! Even if you regularly practice, you'll be rejected. Don't take it badly, the rejection is almost never personal. In any case, ask for additional feedback and grow!
Follow these pieces of advice and find your next job easier!
If you liked this article, please