The Unbearable Whiteness of Coding
Tags: racism, bias, software, programming
Published: 2020-06-23 03:38:47

With regard to race, software development has a serious "Black problem".  No, I'm not going to describe it as a "people-of-color problem" (for reasons I'll explain below).  It's very clearly a _Black_ problem.  And after more than 20 years in this career, I'm frustrated by my own lack of answers on how to fix it.
<br/>

## Some Basic Disclaimers

I'm an American developer, living in America, working for an American company.  So I don't pretend that any of my observations are even remotely accurate in other countries/cultures.  Your mileage may vary.

If you check my profile pic, you'll quickly realize that I'm "part of the problem".  I'm a white, Anglo-Saxon, (raised) Protestant, straight, male.  In terms of US class structures, I've "won".  Or, as it's sometimes referred to, I hit the "genetic lottery".  

So everything I'm writing is from the perspective of those who hold all the advantages.  And I in no way pretend to speak for anyone other than myself.  These observations are mine - and mine alone.
<br/>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/t03v83fnp75ccbjtwnev.png)
## A Snapshot of the Problem

This is the racial makeup of the city I live in.  It's a mid-size city of about 900k people in the American south.  It has a sizable Black population - 30%.  

I've been working in this city, as a software engineer, for 20 years.  I'm _currently_ working in a purely-remote capacity.  But for the majority of those 20 years, I've worked at various companies, onsite, going into the office every day.  So for the majority of my time here, I've worked mostly with other devs who call this city home.

In my two decades here, I've worked alongside _hundreds_ of developers.  Please keep in mind, I'm not lumping in every network and devops engineer I've worked with.  Nor am I counting QA or BAs or any other role that's tangential to application development.  Looking at programmers _only_, I've had the good fortune to call a few _hundred_ people my coworkers.  
<br/>

> Of the few-hundred programmers that I've worked alongside in the last 20 years, how many of them do you think were Black??

<br/>
Don't worry.  I won't try to make you go through some silly guessing exercise.  I'll just tell you directly.
<br/>

> The answer is: **One**

<br/>
I have worked with _one_ Black software engineer, during all my time in this city.  Think about that.  Two decades of work.  A half-dozen employers.  Hundreds of past colleagues.  And out of all those peers, I've worked alongside **_one_** Black programmer - in a city with a 30% Black population.

Lemme throw in a few more disclaimers here, for clarity.  I'm not claiming that I've only worked with one Black person during my 20 years in this city.  When we broaden the scope to include all the other job titles that typically interact with a dev team, I've worked with many Black people.  (Nowhere near 30% of my colleagues - but still, "many".)  And in some of my gigs, there were a few Black devs working on other teams with whom I had little direct interaction.

And as I stated above, these are my personal, anecdotal observations.  I'm not claiming that there's only one Black developer in my whole city.  Nor am I claiming that the percentage I've _personally_ witnessed (less than 1%) can be extrapolated to my entire city or state.  I know that there are _some_ dev teams at _other_ companies that have more Black devs.  

But it's been a long time since anyone's mistaken me for a "junior", and I've had the pleasure of traveling around the country a bit as well.  And I know that my experience is not uncommon amongst other dev teams - or amongst other regions.
<br/>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/5ihqau0kupqcx9arttf8.jpg)
## Diversity(ish)

It took me a long time to understand that there may actually be _any_ diversity problem in dev.  Yes, part of my problem was that I'm a white guy - a pasty, stereotypical white guy with all of the subconscious biases that this country is still battling.  But my problem also arose from the fact that I looked around at my own work environments and I saw a whole bunch of... _diversity_.

I'd look around and think, "Look!  We've got a ton of _brown_ people!"  (This will probably shock you to the core to learn that nearly all of these "brown" people were Indian.)  I've worked alongside Koreans, and Chinese, and Brazilians, and Ukrainians, and Spaniards, and... well, you get the point.

So make no mistake about it.  I've worked in some very _diverse_ environments.  But when your country is 13% Black, and your city is 30% Black, and your fellow devs are less-than-1% Black, my international colleagues may still represent "diversity" - but it's "diversity" with a big ol' neon asterisk tacked onto it.

It's no secret that American software development has a whole _host_ of diversity issues.  Women are vastly underrepresented.  People of almost any non-white origin are underrepresented.  LGBTQIA-people are underrepresented.  (Many of my teams have had the demeanor of a locker room, where white guys boldly make bawdy jokes about gays and women and anyone else in their crosshairs.)  

I'm not dismissing _any_ of those other issues.  But right here, right now, with all the s*** that's currently going down in this country, I've found myself thinking more-and-more about the issue of _Black_ under-representation in software development.
<br/>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/2vpv6hgxgpfhani9r47o.jpg)
## Evil Empires??

So who's to "blame" for this disparity?  An easy answer is to point an accusing finger at the big, bad, evil empires of capitalism.  After all, _I'm_ not the one paying those salaries.  _I'm_ not the one who's ultimately responsible for who we hire and what backgrounds they encompass.  So it must be the corporations, right???

Well... _sorta_.

To be clear, it's impossible to hire a staff - _any_ staff - without earning at least some degree of responsibility for the _makeup_ of that staff.  And countless studies (and lawsuits) have highlighted the insidious degree to which systemic racism infiltrates nearly every vein of American life - including, of course, hiring.  

But it's overly-simplistic to say, "Well, companies should just start hiring more Black developers."  Allow me to explain...

I made the conscious decision some years ago to go back to "just" being a developer.  Long story - but suffice it to say that I really wanted to get back into pure coding.  But I spent many years in dev management.  During that time, it's no exaggeration to say that I've sorted through _thousands_ of resumes, interviewed _hundreds_ of candidates, and extended offers to _dozens_ of programmers.  Here's what typically happens if you're in the market for new (American) developers.

We put up a posting for a new dev position.  There's nothing about the posting that feels even the slightest bit "prejudiced" or "biased".  We've all seen the postings.  A few generic paragraphs about the company and the position, followed by an alphabet soup of the technologies we're using and the desired experience level in those technologies.

It's easy to imagine a scenario where such a posting might yield a _hundred_ applicants.  (This is _especially_ easy to imagine in our current COVID-stricken economy.)  In my experience, lemme tell you what those hundred candidates typically look like.

At least 90 of those candidates will be male.  (As I've already stated, I'm not even touching the deep, sticky issues of gender representation in our career field.)  Sure, I don't _know_ what everyone's gender is, just by looking at their resume.  But you usually know that the "Joes" are men and the "Marys" are women.

About 30 of those candidates will be clearly foreign - with many of those foreigners being Indian.  Again, I realize that too many things can be inferred by simply reading names off resumes, but when the candidate is "Sanjay Vishwanathan" I pretty much know that they're Indian, or at least of Indian descent.

Of course, trying to infer someone's _skin tone_ merely by reading the name on their resume is a fool's errand.  So I definitely don't try to play that kind of racist parlor game.  Instead, I just start looking at the qualifications and, after a little sifting, I hand a pile of resumes to the HR person and ask them to schedule interviews.

When the interviewees arrive, nearly _all_ of them are white, or at least, _non-Black_.  Just looking back at the many people who've sat in front of me for face-to-face interviews, I'd estimate that, of the original 100 applicants, 5 (or fewer) of them were actually Black.

So think about that for a minute.  If 5% (or fewer) of your applicants are Black to begin with, it's quite daunting (and possibly unrealistic) to simply look at the hiring managers and say, "Well, you should really be hiring more Black developers."

If we assume that those 100 candidates are vying for a single job opening, and we assume each candidate has an equal chance of ultimately being offered a job, that means there's only a 5% chance that the most qualified candidate is indeed Black.

Even if we assume that I truly _want_ to hire more Black developers, it's not a cut-and-dry proposition.  I can't slap "Only Blacks Need Apply" on the job posting.  I don't want to fall into a racist trap of trying to _infer_ who's Black based on names or other vague data in their resume.  And by the time I've whittled the applicants down to a half-dozen-or-so candidates for interviews, it's entirely possible that _none_ of them may be Black.

And thus, through no outward malice on my part, we've once again managed to interview, and ultimately hire, yet another non-Black employee.

To be clear, if you're working for a megacorp like, say, Google, they have the resources to more proactively _seek_ Black candidates. Hell, they could even create training programs specifically geared _toward_ Black developers if they so choose.  But most "normal" corporations are far smaller, with much more modest budgets.  They have a simple problem - an open position - that they're trying to solve.  And they can't "fix the world" by funding a new _Black_ university expressly for the purpose of hiring more Black developers.

This is why it's foolhardy to deny that the issue is truly _systemic_.  Even the most equality-minded hiring managers are still limited to the qualified candidates _that actually apply_.
<br/>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/5qa584gfrmaezjipvbe1.jpg)
## The Myth of the Self-Made Man

Most of the devs I know don't think of this "problem" as being any kind of problem at all.  Hell - if I'm being honest with myself, _I_ haven't thought of it as any kind of real "problem" for most of my professional life.  Is that because I, and all my colleagues, are horrible racist monsters?  Probably not.  

You see, _many_ of us dev-types subscribe to the overall ideal of the "self-made man".  The thinking is incredibly simple (yet flawed).  It goes like this:

1. I acquired, _by myself_, much (or all) of the knowledge that's required to do my job.<br/>

1. Nowadays, especially with the steady rise of the internet over the last quarter-century, all the tools you need to learn (and master) _any_ programming language are right there for the taking.  In fact, assuming that you have solid internet access, those tools are overwhelmingly _free_.<br/>

1. When dev candidates are evaluated (and presumably, hired), this can be done based upon a series of tangible factors that have nothing to do with race. (For example, we can "test" a candidate's skills before ever extending an offer.)<br/>

1. I am where I am purely due to my superior knowledge/skills, and my ability to demonstrate those skills to any potential employer.<br/>

1. Therefore, any talk of race (or gender, or... _any_ other factor) only serves to muddy what should be, on its surface, a completely egalitarian exercise.<br/>

Unfortunately, this thought process is severely myopic.

I had my first computer when I was 10 years old.  Nowadays, many households - especially, _white_ households - feature computers from the time a child is born.  Statistics tell us that the percentage of Black households with the same luxury is... lower.

Ever since the internet was a "thing", I've always had access to the fastest-possible download speeds.  Statistics tell us that the percentage of Black households with the same luxury is... lower.

I don't have a computer science degree.  In fact, I don't have a bachelors degree _of any kind_.  Every line of code I've ever written was accomplished either through my own desire to learn, or through my ability to leverage those who'd learned before me.  The economic ability for Blacks to pursue this same path are... limited.

Yet, in the 90s, when my skills were solid but my experience was... _lacking_, I managed to get my foot in the door with some tremendous "starter" opportunities.  I was given generous salaries and fast-tracked for management.  Statistics tell us that, for Black candidates, the same opportunities are... rarer.

So am I some sort of societal leech?  No.  Was everything in my career simply handed to me because I have a pale complexion?  Of course not.  But for me to disavow any potential influence of race in my success would be, at best, borderline-delusional.   
<br/>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/o69n47kpxrmqib5yt4q6.jpeg)
## Why Should You Care???

If you've read this far, I'm certain that at least _some_ of you have already pegged me as a hopeless "Social Justice Warrior" (as though that phrase is somehow something to be ashamed of).  And even if you're not concerned with the prevailing political terms that we slap on "the right" or "the left", this may all feel rather disconnected from your day-to-day reality.

If you're at all like me (and if you're browsing through Dev.to articles, you're probably more than a little bit like me), your days are probably consumed by fixing a pressing bug, or designing a new feature, or managing the deliverables for your next sprint.  If you're at all like me, such questions of race and/or equality can sometimes feel like a true _imposition_ on the "real" work that you're trying to accomplish every day. 

But I've reached a point in my life where I realize that these broader issues of society are never truly "someone else's problem".  I have the _privilege_ of not having to ponder these issues every day (or even _most_ days).  Yet I'm watching, in real-time, as key aspects of my own society continue to disintegrate.  

I don't think that I'm "to blame" for the fact that I have a nice job, that commands a generous salary, and I live in a nice house in a coveted part of town.  On any given day, I can cash my checks and throw all my energy into solving my employer's problems.  Why can't the rest of the world just leave me alone and stop bothering me with these pesky issues of race???

Well... here's why.  Because, in my city, 30% of the population is Black.  In my city, I'm lucky enough to earn a salary that probably puts me in the top 5% of all earners.  I don't make "lawyer money" or "doctor money" - but I do alright for myself.  And I'm fully aware of that.

But in this same city, almost _none_ of my colleagues - making similar money and enjoying similar professional perqs - are Black.  In my city, there is 30% of the population that, for whatever reason, just doesn't seem to be able to get a foothold into this very-lucrative career field.

When 30% of the population is effectively shut out of these kinds of jobs, what do _you_ think is the result?

You may think that victims such as George Floyd have no bearing on this discussion.  You may think that universal issues such as racial equality are completely tangential to your supposedly-meritocratic life as a software engineer.  And you'd certainly be entitled to such an opinion.  But put this in perspective.

When there's an overall perception of _fairness_, _righteousness_, and _equality_, the tragedy of Floyd's death is... a tragedy.  And "tragedies" are generally seen to be _rare_ events - outliers in a world that otherwise strives to make things "right".

But when _inequality_ abounds - when the doors to good jobs and high wages are shut - the tragedy of Floyd's death is no longer "just" a tragedy.  It's a spark - a _fuse_ - that threatens to light a powder keg of righteous indignation.

When the very core of our professional lives are so imbalanced, any _other_ injustice only serves to inflame those who are already struggling under society's yoke.  And really - _can you blame them???_ 
<br/>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/upoh917ndl0xuspy9f5v.jpg)
## A Devilish Puzzle

This is the point where I must admit that this entire post is probably rather - pointless.  It's "pointless" because... I don't know what "points" to leave you with.  I'm struggling, every day, _a lot_, about what _I_ can possibly do to improve the situation.

As I noted above, it's not like we can start hanging out signs that say, "This high-paid job is only available to Black candidates."  And for most of us, in our "daily grind", the racial makeup of our teams is typically _an afterthought_.  But it's not an afterthought _to everybody_.

I also want to make it clear that I'm not one of those Utopian, Silicon Valley, venture capital, head-in-the-wealthy-sand assholes who thinks that the answer to the world's problems lies in somehow teaching everyone to code.  Software development is not for everyone - regardless of your level of melanin.  

But I'm genuinely curious - nay, I'm _searching_ - for things that _I_ can do to somehow improve this situation.  I've long-since realized that, even on my best days, even when I think I'm oh-so-"woke" (dear god, I _hate_ that term), I'm still, on some level, at least _somewhat_ racist. 

Have I subconsciously been weeding out Black candidates?  I don't _think_ so - but I'm probably unqualified to make that assessment. 

Am I somehow perpetuating a system that cradles me and those who look like me?  I don't _think_ so - but it's a rare bigot who stands up and says, "Hell yeah, I discriminate!"

Do I still trade in the language of microaggressions?  I _try_ not to.  But I'm certain that, even to this day, I probably do at times.

I don't have any easy answers.  I doubt that there _are_ any easy answers.  But I'm trying to listen.  I'm trying to think about how I can cease being part of "the problem".