Introduction
Over the last (nearly) two decades I’ve spent quite a bit of time working with students to get jobs (or hiring students). During this time I have seen a lot of different takes on what you need to do to get a job. These lists are good starts, but are usually written by people who are talking from a very biased personal experience (1).
Getting a job is really difficult as most of the activities that you undertake will only move the needle a tiny bit. It’s equivalent to trying to solving a hellish MLE problem where the maximum probability is in the single digits. It’s incredibly frustrating to apply to positions over and over again and never hear back and just not be sure where you spending your time and energy.
So, after hearing for about the hundredth time that the best way to get a job is to do X, where X was how someone’s brother’s girlfriend got a job at Google, I’ve decided to write my own version. So without further ado, here are the only five things you can do to get a job, in no particular order:
Organization and Marginal Returns
Before jumping into each activity individually there are two common failures I frequently see. The first issue is failing to be organized. It is easy to fall into the trap of doing things without intention, scrambling without reason and becoming inefficient. Being organized helps avoid this fate. Use spreadsheets to keep track of tasks, write down dates and times that things occurred and keep track of results.
The second biggest mistake I see is not understanding diminishing marginal returns. Given a choice, people tend to work on what they enjoy, not what they need to do. For example, I enjoy writing and editing; my documents look amazing. Other people may enjoy networking, so they over-invest in this aspect. If you are job searching, which of the activities have you under- or over-invested in? Be honest with yourself. It’s okay to recognize that you hate self-promotion and so marketing yourself feels gross. Accept it, recognize it as a limitation and then spend some time on it.
Onto each…
1. Network
Networking can take a lot of forms, but generally it means physically interacting with people. This means going to meetups, alumni events, trade shows, talks and career events.
It’s important to get your face out there so that people know who you are and what you are looking for. It’s also a lot harder to say no to a person that you have met.
A lot of people dislike networking (I am one of them), so try to find ways to network that are less icky for you. For myself, I enjoy going to technical meetups – even in areas that I’m not as familiar with! At a bare minimum I’m learning something new! Granted, this probably isn’t as valuable as going to a data-centric meetup or a career fair for data science, but it is better than nothing and there is a lot of overlap between data and general tech.
Be organized in your networking! This person, for example did a great job of identifying people and pushing the right buttons.
When I network I try to do specific things (and at least identify a few of them ahead of time). Am I here to get to know a particular company I know will be attendance? Am I here to catch up with a friend? What can I do to maximize this experience? I often see new grads at these events walking up to every person asking some variant of “do you know of any jobs” – this isn’t maximizing the experience and comes off as both aggressive and negative.
Post Covid Update |
---|
As of October 2024 in-person networking events aren’t as frequent as they were pre-covid, but they still exist and can be found with a little digging. In the last year I’ve been invited to multiple meetup-style-talks, recruiting events and technical presentations that, while not at the frequently as pre-covid, are still an important source of job opportunities. |
2. Improve your docs
By Improve your docs I mean read over the required documents in a job search: LinkedIn, your resume and your cover letter.
Each of these are public facing and are frequently the first impression that you will leave. Grammar errors, misspelled words, random tenses and persons are all negatives. Every document you write leaves an impression and every impression counts when job searching. For general technical resume advice, I recommend following the information here it aligns with most of the advice that I give and provides an excellent checklist.
While there is a lot of advice out there on what should be in or not in a cover letter (or even if one is required), there are still many jobs that filter out applicants by this document. For example, in a number of recent job searches I’ve been a part of a cover letter was barely read – but if an applicant didn’t submit one it would not pass through the company’s applicant tracking system.
Once again, being organized here helps. Keep multiple versions of your resume and cover letter in a way that allows you to quickly find the most appropriate one for the job you are applying to. It’s common to have multiple versions of each for different positions based on what you want to highlight. Constantly looking for docs (or asking yourself “is this my data engineer resume?” or “Is this my actual up-to-date resume?”) is a waste of time and sending out a wrong doc might just lower your probability of success.
3. Interview Preparation
The third thing you can do in order to help your job search is interview preparation. This involves looking up common interview questions (both technical and behavioral) and spending time making sure that you can answer them.
Most students I know spend way too much time on interview prep because they believe that there are a finite number of questions that can be asked and, if they study enough, they will eventually have good answers to all of them. That is not to say that preparing in this manner is a waste of time, but it is difficult to anticipate every question that that interviewers will ask.
For data science positions, the technical side of things is two-fold: both on the coding side (usually SQL and Python) and on the data science side (statistics, math, and machine learning). For the former, the best thing to do is practice using sites like leetcode and HackerRank though there are many others and please don’t consider the above an endorsement.
As always, be organized! How much time are you spending on different problems? Are you spending too much time on Python and too little of SQL? What about behavioral questions? Make sure to keep track of how you are progressing. This is another really easy to waste time.
4. Apply for jobs
Going online and actually applying for jobs is a great way to get a job! Entry level positions are often a numbers game: did the recruiter/reviewer see your resume at the right time? For these types of jobs you should expect to hear back between 2-5% of the time, but only if your docs are in order. If you have grammar errors, poor formatting or other issues in your docs, that percentage can quickly go to zero.
If you have a referral at a company, you can expect this to bump the probability of a response to around 1/3, depending on the quality and type of the referral. In either event nothing is a certainty.
Be organized here! Keep track of all applications you sent in. Document the date, job title, company, location (web site), etc. Use this same spreadsheet to also document the result (phone screen? email? interview?). If you got an interview, after the interview write down every question that was asked and add these to your interview prep routine. The fact that you got a question once means it is highly likely you will get it again.
5. Market yourself
The final thing you can is ‘‘market yourself’’. What I mean by this is bolster your public profile in non-targeted ways. Unlike networking, where you are going to do something (usually in-person) with an intended target, marketing involves undertaking activities that attempt to increase your public profile. Another way of thinking about the difference between marketing and networking is marketing is geared toward an audience while networking is focused at the person level.
Examples of this include: putting together a website or writing up some articles and submitting them to forums where potential audiences may exist. Give a talk at a MeetUp! This could involve Twitter, LinkedIn, Medium or any other public platform. Try to get your name out there in your field.
Creating a website which is a central hub about you, the projects you have worked on and links to your other sites (Github, LinkedIn, Twitter, etc.) is another useful way to market yourself. Importantly, make sure that any site which you reference on your resume for marketing purposes makes sense. If you put your Github on your documents, make sure that it isn’t going to an empty profile. If you have a web page, make sure that there aren’t dead links or half-completed pages (or if there are, don’t share it on your resume).
Fin
So these are the only five things you can do to get a job. I wish that there was more to it (and obviously the devil is in the details), but this is the most comprehensive framework you can use. Just returning to what I mentioned at the top, make sure to stay organized and focus on doing all five things. Being disorganized can easily cost you an opportunity. Keep Grinding.
-
This is advice I’m giving is about entry level jobs in technology. If you are in a different situation then this advice may or may not apply to you. For example, if I was looking for a job (old, crusty data person) then how I would approach a job search would be very different than the advice above. ↩