Exploring Old Problems in New Ways

A look at LaunchCode’s unconventional GIS DevOps training model

LaunchCode_NGA-DevOps-Graduation

Recently, there’s been heightened concern in the geospatial intelligence (GEOINT) industry when it comes to cultivating enough junior talent to fill the workforce needs of today and tomorrow. Like many other American industries, there is simply not enough talent coming from traditional sources to fill open GEOINT jobs—a problem that will only worsen as new technologies and innovations develop. The good news is ideas about how to grow the entry-level talent pipeline to fill these specialized roles are evolving.

For example, there has been a focus on providing STEM skills to K-12 students across the country. Just last month, the White House announced new workforce development and training initiatives, and the “skills gap” is a topic frequently discussed in mainstream media. A shift in thinking to get more people interested in technology careers is palpable. However, the way we educate individuals entering the GEOINT industry needs to shift along with it, starting with rethinking the value of non-traditional learning and job experience. Acceptance of fresh ideas about how geospatial technologists learn new skills will result in a wider talent pool that extends beyond traditional university graduates. The focused, shorter curriculum gives individuals from nontraditional or nontechnical education backgrounds the opportunity to learn GIS development without the time and financial requirements of a traditional university.

In late 2017, the National Geospatial-Intelligence Agency (NGA) approached nonprofit LaunchCode to cultivate a talent pipeline in St. Louis, Mo., where the agency had recently announced construction of its Next NGA West campus. NGA’s vision was to shift the knowledge base from the hands of government contractors to its own internal development teams. Because a specialized skill set was needed, NGA needed an equally specialized training strategy. The answer was nothing short of innovative: a blended learning curriculum created in collaboration with NGA developers, LaunchCode’s education team, and industry partners such as Boundless and Pivotal. The GIS DevOps curriculum includes classic instruction and intensive mentorship along with real-world, project-based learning.

LaunchCode and NGA

The partnership between LaunchCode and NGA is strong, as both organizations aim to have a positive impact by increasing career opportunities for individuals in St. Louis. LaunchCode’s mission of providing pathways to technology jobs for driven individuals without typical resume credentials was a great fit for the agency’s needs. Onboarding and integrating new employees takes time and effort in any industry, and is increasingly the case with entry-level geospatial software developers. LaunchCode’s training programs easily integrate with existing hiring practices, taking the burden off the employer.

On the employee side, a developer’s first job is a gateway to a new technological career, so it’s important that individuals entering the industry do so with the knowledge and confidence necessary to be successful. With those goals in mind, NGA and LaunchCode created an innovative training program that is mutually beneficial for both the employer and the new geospatial professional.

GIS and DevOps Specialization

Modern software development requires familiarity with a tall stack of languages, tools, patterns, and practices. The technologies learned in LaunchCode’s DevOps course include Java, JavaScript, ES2015, TDD, OpenLayers.js, GeoServer, PostGIS, ElasticSearch, Jenkins, AWS, and more. The term DevOps represents a practice in which developers are not only able to write software, but also to deploy and monitor it. Additionally, becoming a GIS software developer requires knowledge of spatial data formats, systems, and requirements. The intense technical load can be overwhelming to learn without proper guidance. While online GIS courses have become more popular in recent years, they aren’t always the most effective way to learn the trade. The success of this program has proven that learning in a classroom environment with individualized support and guidance is both an effective and efficient way to train junior GIS talent.

Real-World, Challenging Projects

Building student confidence in writing and using GIS software takes time and a strategic approach to delivery. During the GIS DevOps course, this is accomplished by progressing students through new techniques via instructor-led example, followed by a student assignment and, finally, incorporating that work into a capstone project. The lectures, examples, and student assignments occur during the five instruction weeks, with new topics each day. The instruction weeks are followed by a project week, during which students are individually tasked with building a real GIS web application that uses a publicly available data set of the 2016 Zika virus outbreak. The capstone application displays Zika outbreaks in an interactive, tiled web map using OpenLayers. The application includes features such as search tools, severity color code, and clickable map features that expand to reveal report data. More than half of class time is dedicated to small assignments or the capstone project for the specific purpose of providing a work-like, yet comfortable learning environment.

Support through Mentorship

When building this curriculum, it was important to incorporate one-on-one support between the instructor and each student. By building a familiar and friendly bond with students, the instructor is able to ensure each individual has the guidance they need to succeed. In LaunchCode’s experience, instructor relationships are imperative to ensure students stay engaged with lessons and continue to ask questions. Due to the 13-week duration of the course, it’s important to hold the students’ attention and maintain a high engagement level throughout each lesson. The small class size of eight to 10 students has the added benefit of making students feel more comfortable and more willing to participate in group discussions. This type of continuous participation and support helps to keep each student motivated and positively affects their performance while preparing them for their future careers.

Assisting the Transition to GIS

The blended curriculum of self-guided training, instructor lecture, and real-world student projects provides a broad educational model that is advantageous for students of varying backgrounds. The most recent cohort included an individual who held a Master of Arts degree and learned to code through LaunchCode’s intro to computer programming course, a History major who previously worked as an auditor, and a senior developer who had experience in GIS but needed re-skilling. Each student, whether considered entry-level or an industry veteran, could equally benefit from learning in this environment. Junior students are given time to get comfortable with a wide array of tools and environments while proving along the way that they are well suited for the GIS career field. Senior developers are provided an opportunity to learn new skills and advance within the industry. LaunchCode believes the extra level of comfort and mentorship truly boosts overall confidence of all students transitioning into their new careers and makes a difference in initial production and job satisfaction.

Evolving Curriculum

Like any agile project, the GIS DevOps course adapts to user needs. LaunchCode incorporates feedback from NGA after every cohort. Just like in every industry, the GIS industry is constantly evolving, and a well-developed training curriculum should easily evolve alongside it. For example, the next version of the GIS DevOps curriculum will include an increased focus on security, as every 21st century organization is, and should be, focused on building and maintaining secure applications. One of the new goals for the next cohort of GIS developers is to foster a culture that emphasizes security as a necessary process that is everyone’s duty, as well as one that entrenches security as a documented part of the software development lifecycle.

Since implementation of this innovative model, LaunchCode has trained two cohorts of new developers for NGA with a third currently in the planning stages. This partnership and its success in meeting both organizations’ goals demonstrates the importance of investing in training models that are student- and industry-focused in order to efficiently train future GIS developers.

Of the program, Deputy Director of NGA’s CIO and IT Services Directorate Mark Munsell said: “Because these applicants come from a diverse set of backgrounds, they have equally diverse ways of thinking and can help NGA look at old problems in new ways.”  

Through this lens, the GEOINT industry can innovatively train for both the jobs of today and the future.

Do We Need A “Civilian ARPA” for AI?

The case for leveraging artificial intelligence to improve public service

Making Sense of Compression

Understanding the three common types of raster image compression

The Necessity of GPUs

Resolutions have surpassed Moore's Law: What does that mean for data analysis?