Preparing Students for Future STEM Jobs

It is no secret that STEM jobs are high in demand and will continue to grow over the next several decades. However, what is needed is a wide variety of approaches that will enable educators to engage and entice students to pursue STEM fields to meet this growing demand.

According to the Bureau of Labor Statistics’ Spring 2014 Occupational Outlook Quarterly (now called Career Outlook), “Occupations with both high employment and fast growth usually offer better opportunities…High-employment, fast-growth occupations include Computer Systems Analysts, Applications Software Developers, and Systems Software Developers.”

This article will look at the top STEM jobs projected for the future and will offer suggestions on how to engage students at all levels to help them prepare for these careers.

Building a Foundation for STEM Jobs: Starting Computer Science Education Early

All of these occupations need a strong education in computer science and other related fields. This education, ideally, should begin as early as possible to afford students the opportunity to master that subject. Experts agree that it takes roughly 10,000 hours to master a particular skill, and so the earlier students begin becoming familiar with coding and computer science, the better off they’ll be.

With that in mind, Maggie O’Neill from Computer Science Online created a guide of coding resources for different grade levels.

In elementary school, the goal should be to teach the basics and concepts of computer science in a concrete way by creating stories, animations, and games. The idea is to just get them familiar with coding and enjoying it. Educators can find lesson plan examples for K-5 students at Kodable.

Middle school teachers should focus on building and/or introducing the main concepts and fundamentals. This is also when students should start learning the theory of programming. They can do this by coding video games or building websites. EducatorLabs has lesson plan suggestions here.

By high school, students should start garnering experience with open source software communities, deepening their knowledge in mathematics and science, and exploring different specialties in computer science. Some of the most important programming languages for high school students to learn include:

  • C++
  • HTML
  • JavaScript
  • Perl
  • PHP
  • Python
  • Ruby

CodeAcademy offers several lesson plans for high school level coding classes.

Preparing for Specific STEM Jobs

Once a foundation is in place, it will be much easier for students to be prepared for STEM jobs such as Computer Systems Analysts and Software Developers. There are, however, specific skills that could be developed for each of these occupations to improve success.

Computer Systems Analysts

As stated on the Bureau of Labor Statistics website, “Computer Systems Analysts study an organization’s current computer systems and procedures and design information systems solutions to help the organization operate more efficiently and effectively. They bring business and information technology (IT) together by understanding the needs and limitations of both.”

Often Computer Systems Analysts have backgrounds in computer or information science as well as some business and information system management.

Possible education needed:

  • A bachelors in computer or information science is encouraged, though not always required
  • Some companies require a master’s in business administration
  • Industry knowledge of the business field they’re working for


  • Analytical skills. Computer Systems Analysts must be able to “interpret complex information from various sources and be able to decide” what to do next. Educators can help students by teaching analytics skills in the classroom.
  • Communication skills. Computer Systems Analysts are the middle person between management and IT and so they must be able to communicate complicated ideas in easy-to-understand language. For more information, educators can read 8 tips for speaking and listening as well as a lesson plan on effective communication.
  • Computer systems analysts must be able to think outside of the box to find solutions. Educators can promote creativity in the classroom and teach students to question assumptions, among other things.

Software Developers: Applications & Systems

For the purpose of this article, Software Developer will encompasses both application and systems developers. Application software developers might create applications for consumers (such as games) while systems software developers create operating systems.

Possible education needed:

  • A bachelors in computer science, software engineering, or mathematics
  • Students should focus on courses related to building software
  • Industry knowledge of the business field they’re working for
  • Experience as a computer programmer


  • Analytical skills. Like Computer Systems Analysts, developers “must analyze users’ needs and then design software to meet those needs.”
  • Communication skills. They must also be able to clearly communicate what needs to be done.
  • Computer skills. Developers must know a variety of programming languages.
  • As with Computer Systems Analysts, creativity will play a huge part for software developers.
  • Detail oriented. Developers must be able to manage multiple parts of an application at once.
  • Interpersonal skills. Developers will often need to work with others (such as designers and programmers) to complete a project. There are a variety of activities that can teach interpersonal skills
  • Problem-solving skills. Developers must be able to solve problems throughout the design process. Educators can foster this skill through these tips and principles.

Guiding students to embrace the excitement and wonder of STEM fields will require a long-term and collaborative approach on the part of educators, but such efforts will benefit both society and the students’ futures. For more educational resources, check out the below sites:

  • Computer Science Online. “An in-depth website for potential and current students considering a career with computers, software engineering, and more.”
  • “A non-profit dedicated to expanding access to computer science, and increasing participation by women and underrepresented students of color.”
  • Computer Science Teachers Association. “CSTA works at many levels to support computing education.”