Intro
I've been meaning to write this article for over a year now, around the same time COVID came in and we all got locked down and took to our dungeons on Discord. It really doesn't seem so long ago. Around this time, my start-up shut down and it drove me down this tunnel of self-reflection regarding what I was going to do next. It was time to reach out to some folks, old friends from the internet, maybe even meet some new ones who could give me creative ideas about where the world was going, so I could figure out where to put my effort in for the next five years to build a legacy.
That got me into thinking, pre-COVID if someone said "networking event", what comes into your mind? Large hotel halls, with yellow lighting, filled with food that barely has any taste, but it's better than your university dorm food, so you devour it. You can hear a person giving a talk in the background from a niche company that you do not give a shit about, while the impostor syndrome hits you, and you ask yourself "why the fuck am I here?".
Company stalls filled with reluctant employees who rather be in their cubicle than talking with randos just like you, tired of answering the same questions again, and again. There isn't a hint of happiness or delight in their face while they're talking to you because you're there to waste their time, and you both know it. People walking around to amass the maximum number of t-shirts and swags (this was me, it was a way for me to gain favours from dorm friends with my t-shirt supply). Kids piling around that programmer dude who wears a Google t-shirt in the hope of getting an epiphany to get an internship with Google. Random strangers who start shallow conversations with you with the hopes that you'd put them in touch with your HR.
I'm pretty sure there were better networking events that I was not invited for. People like me would've ruined it, for sure and they knew it. I generally hated events like these because they felt superficial but I've been to more than one of these due to circumstances. Not all of them were bad though, I got to meet some really cool people from these events, I'm still in touch with them after many many years.
That got me thinking. I had a strong network even before COVID, and it was not because of in-person networking events. Out of the five internships, one job, two start-ups that I did, all of them were due to opportunities I got from the internet. Asking myself how I did that turned out to be a really interesting mental exercise. I think some people would find the answers useful since the 'rona got rid of networking events and we're left to leverage the internet for answers.
The key gist is that - I was not trying to network. I was trying to create value through projects and coding, or just trying to make friends online. The latter two was infinitely more effective than the former one. If you're stuck at home, looking to build your "professional network" during COVID, I hope the following might give you some pointers. On top of my personal anecdotes, I managed to curate some other tactics from other folks from the kinder parts of the internet.
Why Network?
What are the ways in which you can build a network and build genuine relationships with people in tech online that hopefully lead to a job, a remote job, or being part of an exciting community online? And also, why is it that when you ask someone what you're supposed to do after learning to code, the conventional wisdom is always "network"?
Networking is important because organisations and companies that do great things are made up of people. Whatever programming language or framework you're proficient in, the path to being part of a great company or a project means working and collaborating with people. People come first, everything else comes later.
That doesn't mean you're supposed to use and manipulate other people to meet your needs or to break into companies that you like. It means that you're being genuinely useful so that others are willing to work with you and are willing to invest in you let it be through hiring you, giving you access to capital or more resources. Getting skills is the first part, and then comes networking. Remember the order.
The most effective networking strategy I’ve found has nothing to do with conferences, cocktail hours, cold emails, or any of the common ideas you hear.
— James Clear (@JamesClear) May 1, 2019
1) Do interesting things.
2) Share them publicly.
Like-minded people will come to you.
Stop networking, start making friends.
— Sahil (@shl) July 26, 2019
Now that we understand our motivation to do it, and considering that we're here after completing the Open-Source challenge, we need to figure out how to leverage our learning from the Open-Source challenge and use it to build a network.
Additionally, since COVID drove everyone home, now things are more democratized but the ways to the network have changed. Let's look at a few examples of how this can be achieved.
Ways To Network Online
1. Write About Your Work
You contributed to Open-Source. Now imagine the project that you contributed to is in the AI or the Crypto domain. You write about your experience of contributing and how your work was useful for the project.
Then you find the for-profit companies in the same domain, working on the same problem through LinkedIn, AngelList or Crunchbase. Then find out who the Engineering Managers and Developers are and forward this article over to them and tell them that you're looking for opportunities.
The caveat is that for this strategy to be the most effective, the contribution to the Open-Source project needs to be significant. Now that you fixed a bug, and know your way around how to make a bigger contribution, this should be a cake-walk for you!
Let's follow this process by looking at a real-life example. You contribute to an Open-Source project called BentoML which tackles the problem of "Model Serving Made Easy". There is a lot of private companies that do the same. A Google search gave me
- neptune.ai
- dataloop.ai
- cortex.dev
- deepdetect
These are all companies that you can apply for with the domain knowledge you gained through contribution. You can find the details about the company through LinkedIn!
2. Leverage Communities - Discord & Reddit
Everyone has their own very unique interests. People participate and indulge in their interests through online forums and chats. One strategy that I found out for getting knowledge on specific domains or projects is just to be active in their communities and understand how it works.
I've outlined how to find out communities and projects that you like in detail in this article here.
Where else are you gonna find the most active communities on the internet other than in Reddit, Slack and Discord? Since we're exploring options in the context of Open-Source, there are two cool subreddits where you can hang out, interact with folks and increase your chances of getting lucky. r/opensource and r/coolgithubprojects. You can read through the posts and visit the subreddits daily and see if you find something that interests you. You can also find the associated discord channels the same way.
What do you do after finding an interesting project or a discussion? Participate. Just leaving a genuine comment after going through the post and the project or appreciating the work they did is quite enough to help kick-start a friendship. Or if you're looking for anything particular just make a post outlining what you're looking for after going through the rules of the subreddit. Reddit and Discord both allow you to reach out to these folks online using the chat and the DM feature. Use it. Be curious about the project, ask questions, and don't be shy! Get involved in the project and it could bud into a genuine opportunity.
To cite practical examples that worked for me, I'll attach two separate anecdotes. The job I got after my graduation was due to me being active on Reddit and looking for portfolio projects to build. I saw a post on r/datascience where a user shared their project and findings and I genuinely found the project interesting. Since I was looking for interesting projects to solve I commented
Great read! Are there any similar experiments you'd suggest? I'm getting started and this sounds like a very interesting project to do as a starter.
and I got a reply
You can replicate mine fairly easily with use of the amazon and ebay APIs. A couple other ideas off the top of my head: Do the same thing for walmart and/or aliexpress. Scrape data on how many items are sold. It would be interesting to see how many of these drop shipped items are selling and how often. Scrape articles posted on Hacker News for the busiest times on HN, I thought it would be cool to figure out what the busies/slowest times are for new posts, and when your the most likely to get on the front page.
We collaborated, built two projects together so that it could enhance my portfolio, and he could get more traffic to his website. After that, we became friends! Fast forward some time, when I was looking for a job, I pinged him and he hired me without even an interview!
The second instance is how I found a Data Science project, which eventually turned into a Start-up. My motivation was to build a start-up while specialising and gaining skills in Data Science. So what did I do? I went over to r/datascience (again) and I made a post saying I was looking for interesting projects to work on. My post got removed and I almost got banned for spamming. but before I got banned, a couple of folks commented on this post showing interest.
One of the people who reached out was very enthusiastic, had a lot of great ideas for projects, had a great portfolio and industry knowledge and at that point. This was our initial idea, and boy was it exciting!
Essentially I want to scrape news websites probably in African and Asian countries, get the stories, look for anything to do with certain topics, translate them and do entire extraction - names, roles, organisations etc and then flag them for certain use cases. Like I said things like wildlife trade but also money laundering all the way to terrorist financing. Basically, once you have a core platform to do this you can then filter on any specific case. Let's stick with wildlife for now.
We built this project, turned it into a start-up, unfortunately, it didn't succeed as a start-up but it was an amazing experience that leads to another host of opportunities, nonetheless.
These same techniques could be employed for finding great open-source projects, finding niche job opportunities and increasing your network! Just think about what subreddits and communities would benefit you the most and reach out to the relevant people.
3. Reaching out to Open-Source Maintainers
Reach out to the maintainers with your contributions and see if there is more impactful work that needs to be done is also a great strategy. This is what Sijin, one of our participants in the first cohort ended up doing.
He chose a project called SimpleQ since it was an open-source project in the domain that he was experienced in and understood the use-case quote.
He chose a good first issue and contributed to the project which got merged quite fast. Then he found the maintainers of these projects on LinkedIn and reached out to them. He promptly got the opportunity to rewrite the whole backend of SimpleQ! From one line of code change to rewriting a whole package is a big, big deal.
In the words of Sijin
How to reach out to the maintainers?
- Checkout the github profile of the maintainers.
- Usually they should have website link on the left panel(under their profile pic).
- If not check for information like their username, location & current organisation information. This may help you to directly search them over Linkedin.
- Key point here is to use your judgement to get their email or Linkedin profile URL so you can get in touch and discuss more about opportunities to contribute to project.
- Alternate option: If you already have got your PR merged. You can leave a comment in the "PR" or the "issue" you are working on showing your interest to connect.
As a gesture you can also follow them on Github(and give them stars, I am sure they deserve one.).
For e.g: Case_1:
- One of the project maintainer I made contribution to had his portfolio website URL (github pages) in his Github profile section.
- From the portfolio page I found his Full name & current Organisation. Searched him on Linkedin and send him a Connect request with a short text mentioning the project and the PR I contributed to.
Case_2:
- Similarly the second project maintainer has a fancy username. But again his github profile README.md (i.e Overview tab) section had a link to connect redirecting to
page. On this website I found this person full name.
- Searched him on Linkedin and send him a Connect request with a short text mentioning the project and the PR I contributed to. Showed my interest to help out with any tasks or ideas.
- The maintainer was happy to help and shared his idea about rewriting his backend API in a different langauage to improve performance and save cost by going serverless. Currently I am working on this task.
4. Build a Presence on Twitter!
I had been on Twitter for nearly two years before I finally figured out how to use it. I could never quite understand why this platform is so great for networking and self-promotion. To my further surprise, by the time I finally figured it out, Twitter had already had an amazingly positive impact on my career.
You can read the full article here.
5. What Do Reddit and HackerNews Have to Say?
As a self-taught dev, how do you network and build genuine relationships with people in tech online?
Reach out to people you know in the industry and hang out with them. Getting a LinkedIn doesn't hurt. Try and join a FOSS project somewhere as it's experience and requires you to work with people in the industry. In general though same way you make friends elsewhere but you try and focus on people in the industry. Play video games and you will probably play with some devs for example. Poke around in reddit and ask people questions and go from there. You also don't need friends to get a job in the industry. Sure it helps but I would go get a job and start working with the people there and try and befriend them. Never know when one of them leaves and speaks well of you. Find out who their friends are and so on and so forth.
I'm currently dealing with this as I've also started my self-studies in 7 months ago. I'm building myself towards an Android Developer position and just starting my job searching) I created a Twitter account & only follow people involved in the Android community or post relevant content that I would fine useful. Replies to them, retweets, etc. Someone was looking to start a podcast involving a technology I'm learning and I opt'd in. Nervous as heck l, but now my name was shared with his followers.
Join Slack. I found the Kotlin slack to be great for me as it's not flooded with unanswered questions like some and fits perfectly with the technology I use. People both have reached out to me + I've reached out to them with discussions, etc.
One even connected me with a UI/UX designer to help me with a project! I started a 100 coding challenge. Only 2 of us committed and we're nearly finished. But I've since started collaborating & working on similar projects w/ different tooling, but meetup in a video call about once a week.
You might not meet any "senior" developers here, but it could be a good way to build relationships over the course of a few months. I think small groups might work best for this as it could get overwhelming to see 10+large posts a day. Wouldn't really be able to keep up with everyone's progress. I joined MeetUp less than 2 weeks ago. There are a couple local coding groups in my area. I've since been on one remote call & attended the other in person last night! Seems a lot of groups have started transitioning back into physical locations while also hosting on zoom.
You have to ask yourself; what's the purpose of this network? Is it to have a group of like-minded engineers so that if you lose your job you can get first-hand referrals for a new job? Are you looking to establish yourself as a consultant? Are you looking to meet higher-level executives in hopes of becoming them one day?
Whatever the case, if you email them with a shallow request of "looks like you're doing cool things let's get coffee", your request will probably be ignored. Everyone is busy, there's no time for random coffee with a stranger.
But if you can ask a very specific question regarding their work, you'll pique their interest. Offer to teach them something in return, now you're on the path to a mutually beneficial professional relationship.
Don't send out the same message to different people. Do the hard work; research each person's background, send an email specific to their likes/interests. Be strategic when making a request from someone and if you can offer something in return, even better.
1) If you read or hear about someone you think are doing something great, contact them, tell them, ask them.
2) If you see someone who is doing something amazing, go over to them, tell then how great you think it is, ask them how they do it.
3) If there is something you want to understand but don't, figure out who do and ask them.
4) Get out amongst people.
5) Build, create, write, launch something put it out there for the world to see.
In other words.
Just be genuinely interested in the people you interact with and you will be building the best possible network without feeling you are being insincere. It doesn't matter if it's in person, by mail, via a tweet.
I drink beers with people usually. Basically, I make a lot of high level friends / associates at every place I have worked or random meet ups and I do a lot of lunches or after work drinks to keep up with those people.
I usually spend at least one happy hour a week after work + one lunch a week with those types and then one or two lunches a week with current co workers and people closer to me that I consider super talent that I'd like to always stay in touch with.
I just drop random messages to folks saying "Hey it's been about year since we last chatted and it'd be awesome to learn about what you're working on and catch up in general. Do you have anytime for a lunch or pint after work in the next week or two?"
If you do stuff like that you'll get invited to other social gatherings and eventually you'll start meeting their friends and people they consider talented.
What I described above is actually work (I enjoy it though) and requires time and effort.
You can either approach this small-scale (you want to actually know the people in your network) or large-scale (you want millions of readers/twitter followers, etc).
For small-scale:
-
Industry talks and conferences – it's very common for tech companies to give talks or even conferences. An information security / pentesting consultant company held an event where some of their employees presented research that they were taking to a larger conference. From their side, it was for marketing reasons, but this was kept out of their presentations completely (which focused entirely on their work). From my side, I got to spend a fun few hours being wined and dined (for free) and got to chat to some interesting people in the coffee breaks about their work. We still keep in touch. Pros: smaller groups of people who probably share interests with you (you chose the same event). Cons: It's a bit harder to find out about events like these, but definitely possible if you keep your eyes and mind open.
-
Reach out to people who used to be in your network – university professors, old colleagues, etc. They have surprisingly good memories, and probably won't be at all unhappy to get a quick update from you. They might even mention some opportunities ;)
-
Make stuff – even if it's small, such as a blog post or a useful script, it's probably enough to get a few people to notice you, and perhaps one or two to follow you on Twitter or email you and ask you for help with debugging For large-scale:
-
Give people free stuff in return for an email address. Spam them (even if it's not a lot of emails, it's super targeted and you'll get results). Follow people on Twitter, and DM them with offers with free stuff (video, white paper, blog post). Some will react badly (like most of the HN crowd, including me) and report you as spam, block you, unfollow you. A majority of people will lap it up and your 'network' will grow exponentially. [Note: I haven't really tried this myself, but as an experiment I created a Twitter account and started tweeting cheap motivational bullshit. I gained followers pretty quickly and saw how the marketers with hundreds of thousands of readers operated as they were amongst the first to notice my bullshit account. Unfortunately what they were doing was working].
In either case, remember that there are a lot of people looking to grow their networks because having a large network is beneficial, so they look for other people who can provide value and network with them. Instead of being one of these people, and focusing on what your network can do for you, rather focus on the value you can provide to others, and then give it to them. The network will flock to you.
Do you have a LinkedIn profile? Depending on your location it might be very good place to start building your network. If you do this methodically you will be ready by the end of the year. The method is simple - scroll through "people you may know" and find people who are as close to your target audience as possible (probably recruiters / headhunters, sometimes executives of small/mid enterprises who are hiring). It will probably be difficult to find first few, but more you find easier it will be to see other persons who are worth connecting with. Always craft personalized message when connecting.
Once you have enough connections (I'd say at least 500) you should start paying attention to your board - many people will post interesting positions, but there will be many other who either post positions you are not interested in or post marketing stuff you are probably not interested in either. You just mute sources you are not interested in. Also when you get contacted by somebody whose message does not fit your requirement always provide polite response (some people respond with angry words when recruiter had not taken time to read their profile and invited to the process for irrelevant position). After a month or two your board will be tuned for jobs you are interested with. Also if you casually browse through jobs advertised through LinkedIn jobs you will get recruiters attention. Good luck!
I don’t know what field you’re in, but when I was in law school, it was SUPER common to do “informational interviews”
Step 1: Go onto LinkedIn and search for alums from the same school(s) you went to, who also work in the area/field you aspire to work in
Step 2: Research them thoroughly. Find out if they have previously worked or interned at an organization that you would like to work at some day
Step 3: Find their email address though your alumni network, through their website/profile on their company’s website, or use LinkedIn messaging to ask them for an informational interview. Something along the lines of “Hi, I’m a student at/alumnus of X school. I found you through our alumni services network. I am aspiring to work in Y field after graduation, and I would love to buy you coffee sometime and talk about what it’s like to be a Z field/job (e.g. employment lawyer, plumber, etc), and how you ended up in your current position.”
Step 4: Dress nicely, but not too formally. I would say business casual or dressy casual is good. Arrive 10 minute early. Have a list of questions prepared, but try to not be robotic. Ask them how they got to where they are today. Tell them about your background and ask them for any advice on improvements you can make in the future to increase your chances of getting to work in their field one day.
Step 5: While they are talking about themselves, keep an eye out for opportunities to meet more people. For instance, let’s say in your research, you found out that they used to work as an accountant for X Fortune 500 company. When they are talking about their career path, and they mention X, jump in (without being rude/interrupting) and mention that working at X is a dream job of yours. Ask if they can connect you with anyone who currently works there (via an introductory email).
Step 6: Don’t waste too much of their time. Informational interviews should last generally 15-30 minutes. After the interview, follow up with a thank you email, including thanking them for taking the time to meet with you, and thanking them for agreeing to introduce you to someone who works at X company (just to remind them to do so).
Step 7: For the people that you interview who you truly want to work with/for, try to keep in touch with them (but don’t be annoying or repetitive).
Step 8: When it comes time to look for a job, email them and say something like “I recently graduated and I am currently looking for a job. After speaking with you and hearing more about your company and position, it seems like your company’s culture would be a great fit for me. If any job openings come up, I would appreciate it if you would keep me in mind.”
It's odd many people mention freelancing. That shit's pretty hard. Regarding the remote job, what do you actually want to do? Learning html, css and vanilla javascript probably won't land you a remote job unless learning JS morphs into getting good with node or one of the front end frameworks. I guess you could try the freelancer sites, but you're competing with people who will be happy making less than 50/day.
Some free advice…
Go to stack overflow remote jobs, angel list and other jobs that post remote opportunities. Focus on the story of the company and then the description of the job and decide if you can be passionate about one or both.
Start learning some of their tech stack and build a small project (doesn't have to be pretty or have a full ci/cd pipeline but it should work, be live somewhere and the code should look cleanish)
After that, hit linked in and try to find a recruiter for the company (if it's big enough), a senior developer or a technical lead.
Send an email or linkedin message to the people (not multiple from the same company) explaining your situation. Let them know you're looking to switch to a (fill in the blank for you) role and that while you didn't see a job posted that matched your experience, you're passionate about working there because (fill in the blank). Also ask them if their company allows people to intern (even 5 hrs/week hands on will give you exposure that you might not get self learning and it's time you would have spent learning anyway), if they have advice on what you should focus your learning on or would even mentor you.
The reason you're doing a personal project first is so that if they use angular, you can talk in the message about how you built an app with angular that say helps your wife pull up thoughtful messages from you for the kids throughout the day since you're gone for so long.
Look remote jobs take persistence but they're not impossible to get. One thing I've learned is that once you get experience, things snowball with regards to getting better job offers (more money and/or perks like working remote).
Regarding should you pivot? I don't know. It depends on where you are and what you do to net $50/day. I'm just going to throw this out in case it helps…be careful about paying for courses that aren't on reputable sources. I've yet to see a course that will really teach you how to get a remote job as a developer for the low price of 2,500 or whatever.
People ask for help finding a remote job a lot in this thread so instead of people asking the same question and others copying and pasting a list again, here are some of the main sites to find a remote job:
And here's a good list on GitHub of companies that are remote friendly.
Updates: Stack Overflow - courtesy dexx4d, A curated list of awesome remote working resources - courtesy kenshinji
Finishing Up
You're here now. You've made it. Congratulations. I agree, doing this alone is hard and intimidating, it sure was for me, and getting a job is not that easy even with these tactics. Especially when you're not really going out or if there's a lack of like-minded people who could tell you where to look and what to do.
If you're actually interested in the strategies listed above and would like to apply this with guidance from experienced mentors to make yourself valuable in programming and then use that to build a network, we have a community for that. It's called The Fast-Tracked Programmer and we help you make code contributions to Open Source software in 30 days so that you have tangible work experience to list on your portfolio, and we help you use that experience to build up your resume and then help you network.
Make sure you notice the order. We only do it after we make sure you're valuable enough! The next challenge kicks off on September 6th and we only have less than 30 seats left. If you're interested in doing this, join our cool Discord Community and say hi in the #support or the #introduction channel. One of us will be with you shortly.
Useful Links
Ask HN: Who is hiring? (May 2021)
Ask HN: Advice for finding an entry-level remote job?
Ask HN: How can a unhireable person get a job?
2500+ Companies Hiring Remotely in 2021
How do you guys find quality fully remote jobs?
Ask HN: General advice to grow my network
Ask HN: I have no idea how to network in tech. Any tips?