Hello World! What Every CS Student Should Know About the First Job

Anyone involved with hiring entry-level technology professionals (or reads posts on Reddit’s cscareerquestions forum) is aware that students are being prepared by schools for how to do work in the industry, but are often ill-prepared on how to find work in the industry.  There is a major difference between the two, and many grads are being edged out on jobs by equally or even less-qualified peers who were just a bit more proactive about their career. If you think finding a job is only about internships and GPAs, please keep reading.

Some students feel that if they aren’t working 10 hours a day building the next Twitter from their dorm room, or if they didn’t intern at Google or Amazon, that they will struggle to find work. This is hardly the case, and I assure you that if you do a few things during your college years (that require a minimal time investment and no money), you will be several steps ahead when it is time to apply for your first job.

Everyone knows about finding internships, good grades, and putting together a solid résumé. But there’s more to it than that for today’s grads. Here are some things that college freshmen (or even high school students) that intend to pursue a career in technology can do to give themselves a head start on the competition.

LinkedIn logo

I tend to find that college students and even early career candidates often have Facebook, Google +, and Twitter accounts, but no LinkedIn profile. But I thought LinkedIn was a place to signup only when I was about to start looking for a job? Nope. LinkedIn is your Rolodex (forgot my audience) address book of professional contacts, and there are plenty of reasons to start building that database and network even before you are a full professional.

Did you intern with a company last summer? Connect to your co-workers on LinkedIn. Did you interview for an internship, but didn’t get the job?  Connect with your interviewers on LinkedIn. Did some industry professionals come to campus and speak to your class? Connect with them on LinkedIn. Did a recent grad or classmate start a business?  Got a favorite professor? Connect!

Beyond just the ability to connect like you do on Facebook or Google +, LinkedIn also has thousands of virtual networking groups that include a wide range of specific and general topics. Many of these groups are related directly to employment, and most of them are monitored (and sometimes infested) by recruiters that could be valuable connections to make before graduation.

Once your profile is completed with your experience and any relevant technical buzzwords to attract recruiters or hiring professionals, you may expect to receive connection invites and blurbs on job opportunities. Having more connections means that you will appear in more searches, but most in the industry still use some discretion in connecting.

I don’t want to overstate the importance of LinkedIn as I think too much is often made of the site by so-called “social media experts”, and endorsements have become a running joke, but industry pros that you don’t know well are more likely to accept a LinkedIn connection than a friend request on Facebook. Graduating college with anywhere from 50 to 500 LinkedIn connections gives you a place to start your job search that is infinitely more productive that applications to random jobs on Monster or Craigslist.

GitHub

I write about GitHub so much that even I’m sick of watching myself write about GitHub (where’s my t-shirt?!). If LinkedIn is your professional address book, GitHub is a combination of your sketch pad, notebook, and even a Trapper Keeper folder (did it again) to file past assignments. There are other code repo sites out there, but GitHub is the leader today.

What’s so great about GitHub?  First, by using it you’ll learn how to use the Git tool itself and how version control works to some degree, which has value in itself (and another Skills entry for your résumé). You can also take advantage of GitHub Pages, which gives you free hosting and customizable themes for a web page that you can have up in minutes. More importantly, your GitHub account is perhaps one of the best ways to demonstrate your experience to potential employers.

If you are going to be writing some bits of code for various school projects, even if they are small and generic exercises like FizzBuzz or Conway’s Game of LIfe, why not retain those as potential work samples at GitHub? As your skills improve, you can go back and refactor and optimize your code so that it is representative of your current ability level.

Once you develop some comfort level with your coding skills, you can explore some other public repos and start contributing to open source projects or even start your own. You don’t need to have some substantial GitHub account upon graduation in order to get a job, but there is no reason not to keep your code all in a safe place for others to view down the line. A GitHub account has quickly become a common request from many employers in the industry, so having these samples available can make a significant difference.

Stackoverflow logo

Stack Overflow is a question and answer site used by a large percentage of the programming world to help themselves and others. It has a massive collection of past threads that is like a FAQ for the tech world, as well as many unique threads that would be considered Rarely Asked Questions. The site’s gamification model allows participants to earn reputation points for highly rated questions and answers, and those points can serve as yet another potential indicator of your knowledge as an entry-level candidate.

Can I really get a job based on some arbitrary internet points I earned through asking or answering questions? Of course not. But again, it serves as an indicator of your interest in the profession, the time you invest in your craft, and your willingness to both seek and provide answers with others in the industry.

I wouldn’t suggest spending hundreds of hours on the site in order to accrue a massive point total, but checking out the questions being asked and chiming in when appropriate has value. The questions and trends will also give you a finger on the pulse of the industry, and perhaps ideas as to which languages or technologies may be lacking a pulse.

Meetup logo

Users’ groups and Meetups are another way to demonstrate your interest while learning. You attend class because you have to (or are supposed to anyway), but you attend Meetups because you want to. I have managed a users’ group for almost 14 years that met on a college campus for several years, and many of the student attendees now have highly successful careers. In addition to the ability to hear informative presentations and group discussions, Meetups are perhaps the most useful way for students to meet industry pros that may be incredible resources during your first job search. (If you haven’t figured this out on your own, connect with your fellow Meetup members on LinkedIn.)

If you can’t get to group meetings due to location, there may even be some users’ groups and Meetups that happen right on your college campus. None at your school, eh? That’s too bad. If only there were a group on campus… Congratulations, you are now the founder (and chapter president, of course) of the Springfield University Python Meetup!

Conclusion

Creating a profile in any of these sites takes minutes and has no cost. With LinkedIn you can start making connections in seconds, and logging in even once a month to accept and send connection requests is pretty standard. Using GitHub for your coding assignments or projects will become second nature, and exploring other repos can be done as time permits.  Stack Overflow is something you can visit once a week or as necessary, and over time you will build reputation while learning. A user group or meetup is typically a monthly meeting. All this adds up to just a couple extra hours a month, which is a small investment for the rewards it can provide.

Like this article?  My DRM-free ebook Job Tips For GEEKS: The Job Search is now available for $2.99.

8 comments

  1. Thiago Ponte

    I always kept my academic projects in Google code, as they were private.
    Now i don’t know about the quality of the code i produced back then to expose those in GitHub.
    But i already created a GitHub account, and at least my last academic project i’ll put in there.

    • fecak

      As long as you have the ability to direct someone to your code at some point, it doesn’t matter too much where you keep it. GitHub just seems like a natural way that is very developer-friendly.

  2. fredstluka

    Dave,

    Excellent article! Even by the high standards of your past articles, this one shines. I give a lot of advice to a lot of people, but hadn’t ever thought to direct pre-grads to LinkedIn, GitHub, and StackOverflow. Brilliant idea!

    Also, the point about going to user group meetings and already knowing a bunch of industry professionals when you graduate is genius! Even new college grads can start getting hired by direct referrals of senior people at the company, if they create a good impression at user group meetings. Attend, ask insightful questions, meet other attendees, maybe even give a presentation at a meeting. You’ve just moved yourself to the top of the list of candidates for anyone in the room who might be hiring soon.

    –Fred

    • fecak

      Thanks Fred. I read a lot about grads being unprepared, and I’ve run into several while recruiting, and it started becoming clear that they weren’t paying attention to anything but learning in class and they figured the rest would work itself out. It usually didn’t, so hopefully more students will think ahead. Thanks for commenting.

  3. johnvoris

    Yes, great, great article. I am always pushing students to start their Linked in network now. And of course, attending user group meetings to practice talking to the older guys – the ones in the age brackets who will one day hire you. (In fact, in April 2014, AgilePhilly user group will have a meeting dedicated to students to tell us about “the self-imposed death march of a Hackathon” and we will tell you about the real world, and how we managers try so hard to not have death marches.

    The other thing to do is to start lurking on a YahooGroup or two. Pick something of professional interest – and read the digests. Some are silly, but some were started and contributed by some of the big names in the industry – – Agile Leaders from the UK and California and NYC will tell you the why’s and wherefore’s – and you will have not just buzzwords to throw around, but actaully have some gist of an idea of how to reply in an interview with “Well, as a student I’ve never done that before, but Kent Beck would probably think that an approach of x would be a good start”

    – John Voris, http://www.AgilePhilly.com

    • fecak

      Thanks John. This article has actually morphed into a presentation deck I’m assembling based on some of this content as well as basics of job search, salary negotiation, and other things that aren’t really taught to CS students to any great degree. I’m expecting to offer a 2-3 hour careers workshop for undergrads in schools, starting in the NY/NJ/PA region, in the coming months.

      • Fred Stluka

        Dave,

        Excellent idea! Be sure to let me know when the workshops are scheduled. I’ll invite several hundred people to send their college kids to it.

        I just had a college professor friend ask me for advice to give his CS students, and I remembered this blog post, so I’m steering him here. I’m sure he’d love to have you speak to his students. If you had the time, any sensible college or university professor would be thrilled to have you speak in his/her classroom. Otherwise, they’d be wise to steer their students to your workshops.

        Also, college/university admins might see the value of having you give a workshop on their campus. It would be a huge benefit to their students, and would draw people to their campus from other schools and the nearby community. Come to think of it, I could do such workshops myself, but you’d be much more qualified. If you were giving them locally, though, I’d be willing to help.

        –Fred

  4. Junald Bayog

    Thanks for sharing! I found this article on javacodegeeks. I’ll apply this things!

    Also include, starting a blog, it can really help also build a name while learning. I just created a blog a week ago to share my knowledge and to learn more. I seems that many things I can learn to this blog.

    Thank you!

Leave a comment