1. Study…a lot
Top tech companies don’t hire people who can’t perform. It’s that simple. If you think you can skirt through on your personality, fancy degree, or a decked out Github, you’re sadly mistaken. Most companies will ask you complex questions on algorithms, data structures and system design. They not only expect you to solve the problems correctly, but they expect you to solve them in the way they would solve them. There are a ton of great resources out there on interview preparation curated by people more well versed than myself. I’ll link the best I found below.
2. Never schedule two interviews in a row
Interviews can be extremely taxing. The focus required and the stress you experience is far more draining than you realize. Get good sleep. Eat a balanced breakfast. After your interview is done, go home and relax or head to the gym to burn off the stress.
I broke this rule and it cost me a job offer. I had an onsite scheduled at 9 in the morning. 30 minutes after it was scheduled to end I had a final-round technical phone screen with another company. I finished the onsite, grabbed a sandwich from the deli, and headed home. When I sat down to take the call at my kitchen table, the fatigue hit me all at once. My brain felt like mush. I couldn’t think. I ended up bombing the phone screen even though I was asked a simple question I solved before. Don’t do this.
3. Skip the wordy cover letter
The presence of a cover letter did not change my response rates on my job search applications. As the number of applications I sent out rose, I ended up doing away with cover letters altogether. If there was a text box where I could add a cover letter, I jotted down a few sentences about who I was and what technology was my jam.
Most recruiters don’t have time to read your two-page cover letter, so make it short or leave it out altogether.
4. Reframe your work experience
If you zero experience as a software engineer or web developer you may find yourself frowning at the Job Experience section of your resume. I urge you to take a second look at your roles and be creative in the way you frame your past experience. Think of skills you’ve gained that may apply to the role you are seeking. If you worked as a financial planner, push your experience with using financial software programs and tweaking them to improve business outcomes. If you worked in a lab as a scientist, talk about how you defined and batched automated tests.
If you are having trouble finding any relevancy at all, push your personal projects or freelance experience. Employers want to see that you have the ability of to apply your technical expertise to arrive at creative solutions.
5. Focus on what you can bring to the table
In your communication with potential employers throughout your job search, remain focused on stressing what you do for their organization. How will you solve their problems? Make their job easier? Selling yourself is a skill that takes some time and effort to develop. All too often, quiet and “humble” people come off as self-deprecating and unconfident. The flip side is also bad. Nobody appreciates arrogance and egotism. Learn to walk the line. Your employers should be assured you can operate autonomously while remaining flexible and open-minded.
6. Don’t wait
This is counter to most of the advice I got when I started my job search. I was told to wait, to study for a few weeks and polish up my personal projects before applying to jobs I would actually consider accepting. This is great advice if you have nothing of substance on your resume or all of your projects are completely unusable. If this isn’t the case, I say don’t wait. Jump in. Mess up some big interviews. Learn from it and move forward. You never know when your big opportunity may present itself and you don’t want to be on the sidelines when that happens. The fact is, you will never be ready. Your projects will never be good enough and your algorithms knowledge will always have gaps.*
7. It’s all about who you know
You need to network like your hair is on fire. If you’re an extrovert, this is great news. If you’re an introvert, paint a smile on and scream into a pillow.
Fill up your calendar with Meetups, tech conferences, tech talks, happy hours, church barbecues, any event where you can meet professionals in your field. Be interested, be curious, be friendly, and be open to trying new things. When you meet someone, don’t ask yourself what they could do for you, but think about things you could help them with or ways you could build a friendship.
Genuine relationships take time and it’s those relationships that will pay of big-time in the long run. Think depth instead of breadth when it comes to networking. People want to help people they care about and in the end, it’s likely going to be these connections that come through for you in a big way.
- Coursera Algorithms Course
- Haseeb’s Study Guide (former App Academy student)
- System Design Questions (Github)
- Coding Interview University (Github)
*I would add that if you have one specific company that you are trying to land a job with, I’d try to land an interview with them later in your job search, after you’ve had some experience applying and interviewing.