TL;DR; Find the job, get obsessed, get an offer, begin the journey.
Before you consider a job in any company, big or small, you need to make clear for yourself what you really want in your personal and professional life. Understand what you are valuing and what expectations you’ve got from your future employee. I need to be true to yourself on why you are changing the job and why not to try and improve the existing one. Please have all “Whys” answered.
It may be even one of those prominent ones like Amazon, Google, Netflix, Facebook or Microsoft (including GitHub and LinkedIn). It does not really matter for me. The only assumptions I am making are that it is extremely hard to get into a company and the bar is pretty high as well. There is a prerequisite to joining a company — you have to really want to join that gang of people. You must be obsessed about joining. This is the secret nobody tells you :) That it! (If you got it, stop reading now!)
If you are obsessed and a little bit smart you will find a way and you will get started on the way. However, “There is no instance of a nation benefitting from prolonged warfare.”.
If you know the enemy and know yourself, you need not fear the result of a hundred battles. If you know yourself but not the enemy, for every victory gained you will also suffer a defeat. If you know neither the enemy nor yourself, you will succumb in every battle.― Sun Tzu, The Art of War
Here are the proven steps you need to land your dream job:1. Understand well the company, products and possibilities. For example, read Glassdoor, talk to current and especially past employees, ask friends, read books about the company and blogs describing how it is OR how it was hiring. People who left are talking more willingly. Attend meet up held in the company’s offices.2. Have clear for yourself what and why you want this particular job and this particular company/product/team. Make sure you match culturally. Be aware that teams inside the same company may vary a lot. Get patient.3. Find a set of positions you may want to work in that company, considering technologies, products etc. Understand the requirements of that position, understand the requirements of the office/team and especially understand the requirements of the company, including its cultural values. Write down on the wall the cultural values. You will need them for the preparation later.4. Make clear it is what you want long-term and you are ready to spend a lot of time preparing for the job interviews, rapidly onboarding when you join and smashing it afterwards. This is a long-term game.5. Understand the interview process from the CV screening till the offer phase. Interview and research the success criteria, be ready to fail once to pass the second or even the third time. Failure is just an obstacle and not a stopper for you my friend. And remember
“Build your opponent a golden bridge to retreat across”.
6. Bring the gap between expected requirements and your current skill-set: study like nuts (include English if you are not a native speaker), practice and build practical skill set. I find interview preparation very useful for an up-skill, in general. “Opportunities multiply as they are seized”7. Test 1: find a referral and let them submit your CV for a position. With a referral you dramatically increase your chances.
while (!referral) {searchForReferral();}
8. You need to understand well the company values to frame all your answers in the light of them. For example, if a company has a value “Think big”, all your solutions should think about this in one way or another.9. Test 2: practice the interviews: coding, technical/design, cultural, situational and behavioural questions. Practice again, practice with video, practice with friends until you are confident to practice more :) There are tons of resources available. Check the books list and sites below.10. Remember: Interviewing is an easy part, training is where all hard work is done. It is true in life and it is true in the interviewing for a job.11. Test 3: prepare a set of questions to highlight your passion for the craft and interest in the product, your job and the company. Understand what you need to know to make the final decision about the job. Make sure people see your deep thinking and curiosity. However, be ready to change your opinion about the company during the interview process.12. Have clear to yourself what you want, so that you can negotiate well. Check the book “Never split the difference” and remember
“So in war, the way is to avoid what is strong, and strike at what is weak.”
13. Use other companies as an interview practice. 14. Create your own product and learn on it, it will help you be different.15. Other approaches to land a dream job: make or join a startup and make your dream company acquire it :) Sound much easier than done.
“The supreme art of war is to subdue the enemy without fighting”.
16. Most of big companies have platforms/marketplaces to build on, create something of need for people and it will help you land a job as well.17. Not recommended way, but a way: join a competitor, but make sure that there is no non-compete agreement, work your ass off and after some time you would know what it takes to land a job in your dream place.18. Ignore others when they discourage you. Accept feedback and push towards your goal.
“Know yourself and you will win all battles”
19. Do remember that there is no the best company. Everything is changing, including companies, people and YOU.
const leo = new JobCandidate();
const potentialCompanies: Array<Company> = ['Amazon', 'Netflix', 'Atlassian', 'Google'];
const companiesToApply = potentialCompanies.filter((company: Company) => {return companyMatcher.match(leo, company);}).filter((company: Company) => {return !referralFinder.hasReferrals(leo, company);}).filter((company: Company) => {return skillsMatcher.findAny(leo, company.openPositions);});
Thank you for reading and I hope this short article will help you!
The books to check:
Never Split the Difference
The books to prepare for a coding interview
Useful sites:https://leetcode.com/https://www.hackerrank.com/
Quotes:
Sun Tzu Quotes (Author of The Art of War)_758 quotes from Sun Tzu: 'Appear weak when you are strong, and strong when you are weak.', 'The supreme art of war is…_www.goodreads.com