Skip to main content

Mind the Gap

Mind the Gap


I’ve been thinking a lot recently about the so-called “gap” between the number of computer science (or at least computer science-related) jobs available and the number of qualified persons to fill them. I hear about it all of the time. Somewhat recently, I had read an article by Jay Borenstein about the need to revamp computer science education as a whole.


It’s a very interesting read but what immediately caught my eye was a statistical piece that he mentions at the beginning of the article. “By 2020, the U.S. Department of Labor projects that there will be 1.4 million computer science (CS) jobs available, but only enough graduates to fill 30 percent of these jobs”. At first glance, this should seem very encouraging to those who are looking to pursue computer science as a career path. The numbers indicate that these professionals are in very high demand and it’s a “buyers market”, so to speak. So why do so many computer science professionals struggle to find work? It’s because the gap is, in many ways, a self-imposed limitation by the companies who claim to be plagued by it.


A few months ago, I had a direct dealing with the gap. I was looking for a new job and therefore was going through the rigors of filling out applications, writing cover letters, canvasing the tech-community with résumés and utilizing any applicable connection I’ve ever made. In this process, I applied for a Web Developer position. It’s very important here that you remember the title - Web Developer. The job was very desirable to me. The company appeared to have the office culture that I was drawn to. My interests, strengths and, most importantly, experience seemed to match the job description very closely. So, I applied - excited about the prospect of an interview.


Unfortunately, what I received the next day was not an invitation for an interview. It was an email that went on for several paragraphs about the fact that the job I was applying for was for a Web Developer position and that it sounded like I was more of a Web Programmer - explaining in great detail the perceived difference between the two. Needless to say, I never responded to the email. I honestly had no idea how to respond without sounding very rude and I stand by the age-old advice - if you don’t have anything nice to say, don’t say anything at all.


This is what the gap looks like in real life. It’s the unnecessary and non-sensical splitting of hairs over how one defines the word Developer versus Programmer. It’s the requirement for at least 1,000 contributions on GitHub over the course of a year. It’s the specification of "at least 5 years of JavaScript" instead of looking at the bigger picture, which may very well include someone with only 2 years of JavaScript experience, but experience that is directly related to the specified job.


Of course, I’m not saying that this applies to every job in the computer science field. For many jobs, very specific requirements can be necessary. For example, in order to get a job designing launch platforms at SpaceX, it seems to make sense that you should have a very specific set of education, training and experience. Masters degrees in structural engineering, special certifications in dynamics and building materials. At the end of the day, you either know how to do the calculations to verify that the platform you’re designing can withstand 30+ meganewtons of force or you don’t.


However, for a very large portion of computer science jobs available, I believe that aptitude is of the greatest importance. And I believe that this aptitude would often times carry a potential employee much farther than someone who looks good on the specification checklist but doesn’t have much aptitude. I believe that there is a great need for employers to rethink their hiring process and to better understand how to build a team with the right qualities instead of a group of individuals with the supposedly right qualifications.


Case and point, I now work for a company called Audiogon with the most talented developers I’ve ever had the pleasure to work with. We develop an e-commerce web application that receives millions of visits every month - the largest marketplace for high-end audio in the world. We’re a tight-knit team of three developers, none of whom have a degree in computer science. Everyday two people with degrees in Graphic Design and another with a degree in Sociology and Philosophy dream up great new features and push clean, extensible, organized, responsive code.


This is possible not because we have exactly 5 years of JavaScript experience, 2 years of some obscure MVC framework or CMS, etc. It’s because we are able to logically approach a problem and develop a solution using the tools at hand. It’s because we work well as a team, we’re passionate about learning and we constantly strive to be better at what we do. It’s because we know how to think like developers.


Aptitude, folks. Mind the gap.

Comments

Popular posts from this blog

Review of the New Macbook

I finally got a chance to give the new MacBook a whirl and decided to share my thoughts about it. I very rarely feel compelled to review products or services. Like the average consumer, I typically only review things when they’re so fantastic that I think they’re a real game-changer or, conversely, when they’re so terrible that I think it’s very likely they’ll be a game-ender. Unfortunately, this review will be the latter - let’s begin:

The Big Question Admittedly, I was skeptical about the new MacBook from the get-go. Despite my skepticism, I really do like to give everything a fair chance, so I tried to keep as open of a mind as possible. Rather than focusing on any specific feature of the MacBook and making an uninformed decision about whether or not I would like it, I instead simply pondered the question “who is this designed for?” Unfortunately, after spending some time with it in person, I’m no closer to answering that question.

And that really is the big question - the only on…

MailSnail Series

Starting in August of 2015, I began building a company called MailSnail with my friend and co-founder, Matt Bertino. To follow along with my personal thoughts on the ins and outs of the company, experiences, lessons learned, technical details, etc., please check out the posts below. I’ll continue to add new posts here as I publish them.

Post 1: Starting a Company
Post 2: Building a Product
Post 3: Launching a Product

Building a Product

This is the second post in a series I’m writing about a company I’m starting up (or have started, depending on when you’re reading this). You can read other posts in the series here.
As I’ve talked about here, I’m starting a company called MailSnail. In this post, I want to share the ins and outs of how we’ve built the product (i.e. the actual web application).

The Buzzwords I’ve tried my hardest to make this post as approachable as I possibly can for anybody and everybody. I don’t want this to be something that is only interesting to folks who know what HTTP stands for or can rattle off it’s associated status codes. So for my non-tech readers, please bare with me for this one section and keep on reading.

For my fellow tech-nerds, I figured you might not care so much about the minute implementation details but rather are just more interested in a list of all of the pieces of our tech-stack (because you already know the implications of each in their use). So here’s the quick and dirty …