What Employers of Computing Professionals Want

There are lots of important reasons for teaching K-12 / pre-university students computer science.   Providing the first step towards ultimately becoming a computing professional is just one, which applies to a minority of the students; for most it is an important life skill that they will use as citizens and in whatever jobs they have.   But some – hopefully more as we teach more computer science in schools –go on to become computer professionals.  So it may be interesting to share some insights into what their prospective employers are looking for.

I’ve been fortunate to have the opportunity to interface with lots of computing employers for years, both tech companies and other companies looking for computing talent.   I’ve done this in a variety of regions of the US, primarily Indiana (where I was from 2007-15), Colorado (where I’ve been the rest of my adult life), and the Bay Area (where I go frequently for professional reasons and to keep our airlines solvent).

Regardless of the region, or the size or type of company, one hears a consistent set of desires for computing employees: 1) we need more of them; 2) we need better diversity; 3) we need them to have strong non-technical as well as technical skills.  K-12 computer science teachers can play an important role in all these regards.

The quantity need is self-explanatory.   If there is any surprise, it is that everyone says this – whether famous large companies or small ones, whether situated in a tech hotbed or not, whether tech companies or other types.  University computer science enrollments have exploded in recent years – tripled or more at many places – but it’s still not satisfying demand.   The huge increase in students taking things like CS AP hopefully points to even more growth.

Companies view diversity as a social imperative but even more as a business imperative.   It is documented that diverse teams produce greater creativity and better business results.   And products designed for a diverse market need diverse input in their creation.   We are seeing progress in the gender and ethnic diversity of students learning computer science in schools but have a long way to go to produce a computing workforce that reflects society.

Finally, managers almost always stress the non-technical skills computing professionals need beyond computing: communication, collaboration, often some business understanding, ethics, and more.   Being a computing professional has evolved to a job where one often works on professionally diverse teams, and on projects (e.g. autonomous vehicles, or social networks) that require a sensibility about people and the world.   Working practice of those skills into your computing course is a good way to reinforce their importance.   And when that student who already has taken several computing classes comes to you to ask about another, it might be good to point them to a communication class instead!

Bobby Schnabel, Partner Representative

Call for Input: K-12 Content on Computing, Ethics and Social Responsibility

I’ll start with the punch line: I’m starting to get involved with understanding what innovative approaches are appearing in higher education throughout the world in educating students about the intersection of computing with ethics and social responsibility. I’m sure there are some equally innovative things going on at the K-12/pre-university level. If you’re involved with education in this area, or if you know of interesting work that others are doing, I’d love to hear from you – just email me at bobby@colorado.edu. In subsequent blog posts I will share things that I’ve learned, from you and from the higher education community.

I doubt one needs to say why this topic is important. Once upon a time, computer science was far removed from societal implications. We worked on writing operating systems and compilers – the things that go on inside the computer – or applications in business data processing and scientific computing. When computers impacted society, that impact was fairly far removed from what the computer scientist had worked on directly.

How times have changed! Computing professionals often now work on applications that directly impact the basic fabric of our society. This can be social network software that for many of us has become a dominant form of human interaction; or robotic systems that are or will be used as substitutes for human interaction in eldercare and maybe even childcare; or artificial intelligence systems that are used as the basis for making judgments in situations ranging from loan applications to judicial sentencing; and dozens more that you can readily add to this list.

The implication is that not only do computing professionals need to be taught, as a topic just as fundamental as programming or machine learning, to think in terms of the ethics and social implications of what they do – but that every citizen needs to have this perspective as well as they deal with computing systems that are ubiquitous in our society. Creators of computing systems need to apply high moral and ethical standards to their work and learn to think about the consequences, intended or not, of the systems they create; users need to realize that computing tools may have biases or harmful consequences, and aren’t necessarily perfectly trustworthy just because they come from a “machine”. This means that all students need to be exposed to these perspectives, beginning when they start learning computing in schools. I look forward to learning what you may be doing in this regard or just hearing your thoughts on this topic!

Bobby Schnabel, Partner Representative

Reflections on the NCWIT Summit

Last week, I attended the annual summit of the National Center for Women & Information Technology (NCWIT). (CSTA executive director Jake Baskin was there too.) The NCWIT summit is a meeting of about 700 people who are involved in the activities of NCWIT – K-12, higher education, workforce. It’s a working meeting – people come to discuss and learn ways to effectively increase the meaningful participation of women and girls in computing-related fields. It also always includes several inspiring keynote talks related to diversity, ranging from motivational to scholarly.

One thing that always has been special about NCWIT is the active participation of men as well as women. The issue of striving to improve the involvement of women and girls in IT is crucial to all of us in computing and to our entire society, and requires the involvement of all of us. The gender breakout at the summit reflected this.

Two of the keynote talks at the summit embraced this theme of shared responsibility and took it further. One, by Dr. Jackson Katz, addressed the more general issues of sexual harassment and gender violence by men towards women, and their hugely harmful effects that can go well beyond the people directly involved. The speaker stressed the responsibility of men not only not to behave like this, but to not tolerate this behavior by other men. Another keynote talk by well-known sociopolitical comedian Kamau Bell addressed racism in the United States, with an analogous message: the responsibility of Caucasian Americans not only to not behave in this manner but to stand up to this behavior by others.

How do these messages impact all of us, particularly educators in K-12 and other settings? Very directly. We each have the responsibility to assure that all voices are given equal opportunities to be heard, in our classrooms and in our professional meetings. We also need to model inclusive behavior, and to stand up to behavior that is discriminatory. Ideally, we will do this not by shaming, but by making responses that sustain a positive environment and often, create a teachable moment. Doing this in the heat of the moment isn’t easy and can be aided by some preparation, such as the NCWIT resource https://www.ncwit.org/resources/interrupting-bias-academic-settings or many resources that have become available on “Bystander Training”.

Bobby Schnabel, Partner Representative

How Far We’ve Come – and How Far We Have To Go

Roughly ten years ago, the US computing community first started to really address policy about teaching K-12 computer science. The ACM Education Policy Committee was formed with K-12 education as its focus, and a few people – including Cameron Wilson (then ACM policy director, now COO and President of the Advocacy Coalition of code.org), Chris Stephenson (then executive director of CSTA, now with Google), and I (as chair of the committee) spent quite a bit of time talking to education policy makers in DC about computing education. This included both staff members in Congress and people in science policy organizations in DC. It was shocking – almost to a person they had no idea of the importance of the computer science, e.g. that even then most STEM jobs openings were and were projected to be in computing. It was almost as if Silicon Valley and DC lived in different universes!
On the one hand, things have changed drastically in ten years – awareness of the importance of computing and computing education is universal, in DC, by state governors and legislatures, and to a good extent by the public. When STEM-oriented policy is created these days, computer science almost always is included, something that wasn’t true a short number of years ago. And there has been significant growth in the amount of K-12 computer science education, as exemplified by the over 5-fold increase in the number of students taking AP Computer Science exams over the past ten years.
On the other hand, US K-12 CS education is just getting started. If the entire K-12 curriculum were invented from scratch today, it is not implausible to think that computer science would be as fundamental as math or language arts, with as many specialized teachers or general teachers who are well-versed in computer science, and as many hours devoted to computer science as any other primary subject. We are very far from there – in our curricula, in the number of teachers, in the orientation of schools of education where most teachers are prepared. This is where CSTA and its partner organizations come in – in continuing to advocate for the importance of K-12 computer science education, in helping with curricular standards, and most importantly, in providing community for computer science teachers, particularly when often there are only one or two per school. Ten years from now, things will again look very different than now, and CSTA will have played a major role in the evolution.

Bobby Schnabel, Partner Representative