B. Building your network
If you didn’t think that having a network mattered much before, I hope that this book has changed your mind. Having the right network can open you up to new opportunities and bring you closer to your dream jobs.
The best contacts are people you’ve studied or worked with. The main value of attending a selective school or joining a selective company is for the network. Your friends from MIT or Stanford might eventually join FAAAM, and your friends from FAAAM might eventually start their own companies.
If a network isn’t a built-in feature of your education, you’ll have to make an effort. I get it, you hate networking. The reward function for talking to strangers is stochastic. Once in a while, you meet someone you hit it off with. But most of the time, it’s boring. I haven’t been to a networking event since my first year in college. Why spend an evening standing in a corner at a networking event while you can sit on your couch, eating pizza and browsing memes?
But networking doesn’t have to be about meeting random strangers and forcing a connection. It can be about finding people who share your interests and learning new things from them. Seek out people who’ve done things that you enjoy, and try to have a constructive discussion about their work.
When I just started out in ML, I tried to reimplement papers. When I came across something I didn’t understand or something I thought could have been done differently, I emailed the authors. Most people are receptive to discussions about their work -- everyone wants their work to be more popular. I got to know a lot of people in the process.
Sometimes, back-and-forth emailing isn’t effective and I ask people to meet for coffee or hop on a call. They sometimes don’t respond or say no. I receive messages like that too. As long as the senders are respectful, their messages make me happy (somebody acknowledges my work!) and I try to make time for them. If I don’t respond or say no, it’s because I’m busy or forgetful.
Publish your work so that people interested in it can reach out to you. I enjoy doing side projects to satisfy my own curiosity, but they also help put my name out there. I often receive emails along the lines of: “Your analysis of X is really cool. Do you think it’d work on Y?” or “Can I use it in my project Z?” Sometimes, we find ways to work together, and sometimes, they become my friends. I’ve more than once received emails from people I admire but have no courage to reach out to.
Social networks help a lot if you’re mindful of how you use them. ML people are surprisingly active on Twitter. I follow people whose opinions I value and contribute to their public conversations when I have things to contribute. I post what I care deeply about so that I attract only people who share my interests. If someone posts something I find helpful or thoughtfully responds to my post, I send them a short message to thank them for their effort.
Top-tier conferences, such as NeurIPS, ICLR, ICML, CVPR, ACL, SIGGRAPH, are also great for meeting people. Many might disagree with me on this, but I believe that since most top-tier conferences publish their talks and papers online, the main value of going to a conference is to meet other attendees. You should check out the conference schedule and browse the list of accepted papers in advance to see who is going and reach out to those you want to meet. While at the conference, try to talk to as many people as possible about their work (and yours, too).
You’ll make a lot more out of a conference if you present your work, either at the main conference or at one of the workshops. There are, of course, exceptions but in general, it’s easier getting a paper accepted to a workshop than to the main conference. Major conferences and workshops often have travel grants for accepted authors who need financial assistance.
Building a network is a lifelong process, not something that you can “hack” over a weekend. Be open to meeting new people, discovering what they know that you don’t. Don’t approach someone because you want to be friends with them -- you can’t force friendships and it’s borderline creepy. Approach someone because there’s something you want to talk with them about. Friendships will naturally occur if there’s mutual interest.
When you’re ready to look for opportunities, don’t be afraid of letting relevant people in your network know. Most people are happy to put in referrals for strong candidates. They want to work with smart people and they also get a referral bonus if their candidates are hired.
You can reach out to people outside your network for referrals too. I’ve more than once referred candidates who cold-emailed me asking for referrals. Engineers are usually better than recruiters at judging someone’s technical skills. If you lack signals that recruiters look for, you might have better luck impressing other engineers.
The best job search strategy is to build an impossible-to-ignore portfolio. Write in-depth technical blog posts or papers, contribute to open-source projects, do hackathons, compete in coding challenges, and most importantly, publish your work so that the world knows what an amazing engineer you are.