John
Maurer
Web/Database Applications Engineer
National Snow and Ice Data Center (NSIDC)
Associate Scientist III, Cooperative Institute for Research in Environmental
Sciences (CIRES)
Professional Research Assistant, University of Colorado at Boulder (CU)
Position Held
September 13, 2004 - June 1, 2009Position OverviewThe Web/Database Applications Engineer is responsible for evaluating, configuring, and customizing commercial packages, shareware, or freeware as potential solutions for applications, tools, and utilities that assist with the respective workflow requirements of data operations staff, user services representatives, documentation and information specialists, system administrators, and other staff at the National Snow and Ice Data Center (NSIDC). As necessary the Web/Database Applications Engineer also develops scripts and utilities required to meet the workflow requirements of NSIDC staff. Also provides documentation and training about new applications.
Duties
Translate workflow requirements of NSIDC staff into functional and viable applications, utilities, and tools.
Evaluate the market (commercial, shareware, and freeware) for existing technologies that may meet workflow requirements; perform trade studies and present results of analysis indicating recommendations for technologies that will meet NSIDC staff workflow requirements. When necessary, develop software required to satisfy the requirements of NSIDC staff.
Configure and customize web/database interfaces and related system applications. Test and document function, performance and reliability of web/database systems applications. Perform configuration management of both existing and new applications.
Develop scripts to parse and import information from various information resources (e.g., log files) into relational databases as needed. Develop scripts to generate reports based on information stored in the databases.Technologies Employed
- Perl, Perl CGI, Perl DBI
- JavaScript, HTML, CSS, Dreamweaver
- Sybase, MySQL, PostGIS, SQL
- MapServer, GDAL, OGR, OpenEV, ArcGIS, Google Earth, Google Maps API
- WMS, WFS, WCS
- ITTVIS Environment for Visualizing Images (ENVI) and Interactive Data Language (IDL)
- Linux, SGI, Sun, Unix, SSH, FTP, RCS
- XML processing, XSLT, XML Schema
- SOAP (Web Services)
- Advanced Digital Information Corporation (ADIC) AMASS mass storage software
- StorageTek robotic tape libraries
- Word, Excel, PowerPoint, OpenOffice
Career Milestones
- Developed NSIDC's Atlas of the Cryosphere, a Web site that allows visitors to explore and dynamically map the Earth's frozen regions. Viewed from a polar perspective, the available data include snow cover, sea ice extent and concentration, glaciers, permafrost, ice sheets, and other critical components of the Earth's cryosphere. Users can zoom in to a specific region on the Earth as well as overlay country borders, major cities, and other geographic information. In addition to providing an interactive Web interface, maps and data sources are also accessible via the Open Geospatial Consortium (OGC) Web Map Service (WMS), Web Feature Service (WFS), and Web Coverage Service (WCS). These international specifications provide a framework for sharing maps and geospatial data over the Internet. This site was developed using MapServer, an Open Source development environment for building spatially-enabled Internet applications. Other Open Source utilities were also employed to convert and reproject disparate geospatial data sources from a variety of formats (e.g. flat 8-bit, 16-bit, and 24-bit binary as well as ASCII text files) to GeoTIFFs and shapefiles in common polar map projections.
- Employed Extensible Markup Language (XML) Perl modules to develop code that can read and write XML to and from NSIDC's metadata database. Capabilities now include: generating and validating XML files that conform to a variety of geospatial metadata standards; rendering these XML files into various output formats (e.g. plain text, HTML) using Extensible Stylesheet Language for Transformations (XSLT) (see example); as well as harvesting and ingesting XML metadata from other organizations. Made NSIDC's metadata publicly accessible on our Web site for the first time (see example), which also employs an interactive Google Map API to display each data set's spatial extent. Lastly, made XML metadata accessible via FTP (available here) for other organizations to harvest our holdings for inclusion in earth science data discovery and access portals.
- Developed a system to replace and improve an existing request tracking system for NSIDC's User Services department. In use for over ten years, the previous system was a custom-made Ingres database application with a simple textual user interface (TUI). I replaced this TUI terminal with a more advanced and flexible, Web-based interface using Perl CGI/DBI, HTML templates, JavaScript, and a Sybase database. This application allows User Services staff to easily and collectively store, search, and retrieve various details about services provided on behalf of users, including inquiries for cryospheric information and data requests. In addition to serving as a knowledge base for future requests, statistics from this utility are critical for identifying NSIDC's audience and their needs as well as for reporting various usage statistics to NSIDC's funding agencies. At last count, this system was comprised of over 20,000 lines of non-blank, non-comment lines of Perl code with an additional 43,000 lines of HTML or JavaScript in use by over 110 individual Web pages/forms accessible through the interface.
- Have maintained and enhanced a legacy Web interface system that allows NSIDC scientific writers to collect and maintain collection-level metadata about data sets archived at NSIDC. This Perl CGI/DBI and Sybase-based interface allows NSIDC staff to retrieve metadata in a variety of standard geospatial formats: (a.) Global Change Master Directory (GCMD) Directory Interchange Format (DIF), (b.) U.S. Federal Geographic Data Committee (FGDC) Content Standard for Digital Geospatial Metadata (CSDGM) (FGDC-STD-001-1998) with Extensions for Remote Sensing Metadata (FGDC-STD-012-2002) in XML, and (c.) International Permafrost Association (IPA) Global Geocryological Data (GGD) system. At last count, this system was comprised of over 12,000 lines of non-blank, non-comment lines of Perl code.
- Significantly overhauled and customized source code for an Open Source e-mail and request tracking system (PerlDesk), a Perl-based Web interface to a MySQL database, to allow NSIDC's User Services department to collectively respond to, maintain, organize, and search e-mail correspondence with users of NSIDC's data sets and information resources. This interface also allows User Services to place data requests via PerlDesk Web forms with NSIDC's Archive Management Services group for managing data distribution to users. At last count, this system was comprised of over 17,000 lines of non-blank, non-comment lines of Perl code.
- Developed a Perl module (API) to retrieve and store MD5 digests (a.k.a. checksums) from a database for each data file in one of NSIDC’s main archives. The purpose of these MD5 digests is to confirm the integrity of NSIDC’s data for the long-term and after distribution to users. This module can be accessed remotely via HTTP as a SOAP (Simple Object Access Protocol) XML-based Web Service, for which I implemented both a SOAP server and several clients for the module using the Perl SOAP::Lite CPAN module.
- Wrote software using Perl and Advanced Digital Information Corporation (ADIC) AMASS mass storage commands to automate the process of migrating over 10 terabytes (TB) of data on StorageTek 9940 tape cartridges from one of NSIDC's main archives (a StorageTek Timberwolf robotic tape library) to a new RAID system. The software verified the integrity of migrated data using 128-bit MD5 digests and stored these digests for future reference. Designed to be user-friendly, the program was operated with a simple command-line utility that sent notification e-mails to the operator and dynamically maintained status information in log files, a Web site, and a spreadsheet for monitoring migration statistics.
- Have maintained and significantly improved legacy Perl programs that interface between FTP server log files and data set metadata information stored in a Sybase database to generate customizable monthly FTP metrics reports for NSIDC. Worked with interested parties to identify problems and desired enhancements and implemented RCS configuration control on this system.
Résumé
John Maurer <>