At a graduation in Upstate New York this weekend, I found myself talking to my nephew’s friend, who was struggling to find his first job in software. This turned out to be a timely discussion, since I’d spent the last few weeks talking to and reviewing the profiles of dozens of new graduates that might be a fit for my company. In doing this I had a chance to see many of the things the graduating class of 2015 are doing right and wrong in their first job search. Here are my top 9 tips to helping you get your first job in software.

#1: Decide What You Want

The first step of achieving any major goal is to decide exactly what you want to accomplish. When it comes to your first job, there are some basic decisions to make:

  • Company size - Do you want to work in a fast moving startup, a big company, or something in between? If in doubt, go for a growing startup where the pace of learning will accelerate your technical growth.
  • Industry - Do you want to work in the software industry, computer hardware, finance, biotech, etc...?
  • Role - Are you looking for a job in software engineering, quality assurance, DevOps, other?
  • Technology - Do you want to work in mobile, social, fintech, cloud computing, IoT, other?
  • Location - Are you willing to work in San Francisco, Boston, New York, Austin? If you don't live near a major tech center, are you willing to move to find a job?

Knowing the answer to these questions will be critical in helping you identify target companies, and using your time more effectively in your search.

#2: Find Advisors

Companies form a board of directors to help steer the organization as the business and its market changes and evolves. A good board will provide advice, criticism and introductions. Just because you are not a company does not mean you cannot have your own board. Identify 3-5 people who have a vested interest in your success and are willing to help you in your job search. A good board should include people with different expertise - e.g a former CS professor, a software manager from an internship, a recruiter your family knows. Ask each potential member if they are willing to be a resource for you during your search, and reach out to them individually once a week with a status update and one or two targeted questions that leverage their expertise. Finding your first job can be hard; there is no reason you have to do it alone.

#3: Update Your LinkedIn Profile

After you've been in the industry a few years, you will be able to complain about how much recruiter spam you get from being on LinkedIn. But as a new graduate, LinkedIn is the most likely place you will be found by potential employers. There are a few things you should do well in your LinkedIn profile: your summary, work experience, education, projects, groups and relevant links. For more details, see 7 LinkedIn Profile Tips For New Graduates.

#4: Update Your GitHub Profile

Whether you like it or not, a GitHub profile is the de facto resume for developers. Shortly after reading your profile on LinkedIn, a hiring manager is likely Googling your GitHub account to see what you’ve been up to. Nothing there? Not a good sign. Take some time to post a few projects to GitHub - e.g. your personal open source project, coding exercises, and/or contributions to another project. It’s important to show that you care enough about software to be engaging in the community - even if it’s just to make Minecraft plugins.

#5: Join AngelList

This is probably one tip I probably don’t need to pass on since it seems as though every new graduate on the planet signs up for AngelList now. Unfortunately once the account is setup, most new graduates never do anything with it. Just like LinkedIn, there are some things you should make sure are in your profile:

  • Mini-resume - The short bio is an opportunity to quickly tell me who you are, what you want, and what motivates you.
  • Links - Provide links to all your relevant professional social profiles, such as Twitter, LinkedIn, GitHub, and your personal blog.
  • Experience & Projects - You should include the same information as your LinkedIn profile regarding your experience and projects.
  • What I’m Looking For - This section gives you your chance to highlight what types of companies you are looking for and what locations you would work.

Visiting AngelList every few days to search for companies and/or update your status is a good way to keep you on top of search results. When you find an interesting company, follow them and reach out to learn more. Don't limit yourself to companies that you know are hiring.

#5: Join a Job Board

Today there are so many job boards that it’s probably hard to decide where to post your resume. I’d suggest you steer clear of the usual locations (e.g. Monster, CareerBuilder, SimplyHired, Indeed), which are more likely to get you a soul crushing job at Bank of America. I’d focus instead on vertically targeted sites that are more likely to be used by your target companies - e.g. Hired.com, Gild.com, StackOverflow.com. You’ll feel like you’re caught in a recursive loop as you fill out yet another profile page during the signup process. Borrow heavily from your LinkedIn profile and don’t shortcut the detail - a good profile will make a good first impression to potential employers.

#6: Continue Learning

Just because you have graduated, does not mean you should stop learning. The best candidates are actively doing something in technology while they are engaged in their job search - e.g. working on a personal project, reading a technical book, attending meetups, contributing to open source, or learning a new technology. Keep in mind that new graduates are the highest risk hires a company can make since their work ethic, drive, and ability to work with others are not fully tested. In the absence of data, hiring managers typically look for leading indicators. The fact you are continuing to learn technology after / outside of school is always a positive indicator.

#7: Do Informational Interviews

This part of the job search is the least comfortable: getting out there and meeting people. You may be surprised to know that most people in technology like to talk about what they do and are more than willing to help new graduares enter their industry. If you’ve never done informational interviewing before, consult my post 4 Steps To Finding a Job. Grabbing a cup of coffee or doing a Google Hangout (if you are remote) with interesting people can help guide your search, identify target companies, and give you a much better sense of what’s going on in relevant technical communities.

#8: Keep Up On the News

Once you start a search, you should plan on catching up weekly on news in your target industry / location. Set Google alerts, read the tech section of local newspapers, peruse blogs from interesting people in the community, and leverage news aggregators to find articles on relevant topics for you. This will not only help you in your upcoming interviews, but also may assist in identifying companies you might want to work at.

#9: Manage To Goals

Set measurable weekly goals that reflect the type of activities required to successfully get your first job (e.g. # hours searching for target companies, # hours reviewing tech news in target locations / industry, # of informational interviews, # phone interviews). Review weekly your attainment of these goals, and share these goals and your progress with your advisors. A good job search should run like a sales pipeline, where activity in the early stages in the process will produce a successful outcome in the later stages.

Last Words

A great first job can transform your career, teach you valuable skills, and open new opportunities for many years into your future. As you apply these tips, remember that your goal is not to find a first job - but to find a great first job.